Sha256: 26a8de5e77fe696fcaadc1477ce81994e95367300abad071c07d0f66cc0d0411
Contents?: true
Size: 1.05 KB
Versions: 1
Compression:
Stored size: 1.05 KB
Contents
require 'tempfile' module Cloudkick::Command class Pssh < Base def index unless args.size > 0 raise CommandFailed, 'usage: cloudkick pssh --query <query> ' \ '<command> ' \ '[--username <username>]' end query = extract_option('--query') username = extract_option('--username') command = args.last.strip rescue nil file = Tempfile.new('ck') if query client.get('nodes', query).each do |node| file.puts node.ipaddress end else client.get('nodes').each do |node| file.puts node.ipaddress end end file.flush begin if username system("pssh --inline --timeout=-1 --hosts=#{file.path} --user=#{username} '#{command}'") else system("pssh --inline --timeout=-1 --hosts=#{file.path} '#{command}'") end rescue raise CommandFailed, 'cloudkick: command not found: pssh' end file.close end end class Pscp < Base def index end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cloudkick-0.2.16 | lib/cloudkick/commands/parallel.rb |