homeseed 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- OWRkNzAwZDZmNGUyMDRjYzFlN2U1ODcxOGI2OGZkMDQzNDY4MTQzOQ==
4
+ NTE5ZmU0NmUxMTEyOWU1ZWFhYmU5NTNiMjJjNDEyNDRjODgxMDcwNQ==
5
5
  data.tar.gz: !binary |-
6
- NGYwZmJlMDc2ZDdhYTZmOWQyYTU2MzQ0NDE3ODJkZGQwNzY3MDAyMg==
6
+ NTRiMjJhODlkNTY4MWI3MWQ1ZmVlMmQ4ZmZiMDQxZmM4MjcyMjc1NA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- ZDY4Nzk5MjQxYjUyNjNhMDM0ZTliNWJmMzkzYTYwNTAxNDk1Y2M4NTJmZDRi
10
- ZGFmZGJkNGJhNjcwN2I1NDljOTE4MzJkMWJkODc4MDE3ZDNlMzc3Y2U0NWFj
11
- MGEwYmZjZjRkMGE1ZTFhNDE4ZDMzZTg1OTRkOTM3YjdmMmJiZTY=
9
+ YzI5ZGJiNGRiYzZhOGY1YzE2NmRjOGNmZjc4M2E5MWIyOTZjOTRiMmJkYWE1
10
+ NDcwOTNiNzM4MzBkZDY2Y2U0MWI3YTllNTU2MmNmNmNjOTA1ODJkYTU0NDg3
11
+ ZGI4MjgxZmJjOGRmMDdkOTU0M2MwZjQ2MmFkYmIwOTk4ZDMzM2M=
12
12
  data.tar.gz: !binary |-
13
- ZDNiNDk3ZjU1ZTlmMjhlMmNiOGI3M2FiNzJhNzM5NTE4NGNhYzA1ZmRlYzY2
14
- MWYyN2EwNjBhYzU4ZmI1MmE1NjI3NTU1OTdkNTc5YzcyNTFiZGFjNzE5ZmRm
15
- YTcxMWNlNTBmYjc0NDBhNjhkOTkzZjAyYTA2NTgyMGI4NmE1MWQ=
13
+ YTg1YzNjZTRhOTM0YjY2MjU2ZjY3MzZlMmM5NDhmZTA5ZjQzMmUwZjM5OTIw
14
+ N2FhMTkwZGVkZTI3OGJhMGM2MjRiOTE1MWM3ZmUzY2M0YmNkYmQyZDQ3NjZj
15
+ OGI3MTMxMjk0MzRhMGY0MTEyZGUyMjJkZWJiNjdjYzNhZTlkZWM=
data/bin/homeseed CHANGED
@@ -5,16 +5,19 @@ require 'thor'
5
5
 
6
6
  module Homeseed
7
7
  class HomeseedCliApp < Thor
8
- desc 'plant [-s <servers>] [-e <command> or -f <files>] [-u <user>]', ''
8
+ desc 'exec [-s <servers>] [-e <command> or -f <files>] [-u <user>]', ''
9
9
  option :servers, required: true, aliases: '-s', desc: 'ssh hostname(s)'
10
10
  option :command, aliases: '-e', desc: 'bash command to exec'
11
11
  option :files, aliases: '-f', desc: 'yml command file(s) to exec'
12
12
  option :user, aliases: '-u', desc: 'ssh username', default: ENV['USER']
13
13
  method_option :has_password, aliases: '-p', type: :boolean, default: false, desc: 'has password; no ssh keys'
14
- def plant
14
+ def exec
15
15
  connection = Homeseed::Connection.new options
16
16
  connection.ssh_exec
17
17
  end
18
+
19
+ def plant
20
+ end
18
21
  end
19
22
  HomeseedCliApp.start
20
23
  end
@@ -1,3 +1,3 @@
1
1
  module Homeseed
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/homeseed.rb CHANGED
@@ -49,10 +49,11 @@ module Homeseed
49
49
  end
50
50
 
51
51
  def ssh_exec
52
- @servers.each do |server|
52
+ Hash[@servers.map do |server|
53
53
  logger.info "ssh #{@user}@#{server} exec: #{@flat_commands}"
54
54
 
55
55
  password = @has_password ? ask("Enter password: ") { |q| q.echo = "*" } : ''
56
+ exit_status = 0
56
57
  Net::SSH.start(server, @user, password: password) do |ssh|
57
58
  ssh.open_channel do |channel|
58
59
  channel.exec("bash -l") do |ch, success|
@@ -65,6 +66,7 @@ module Homeseed
65
66
  end
66
67
 
67
68
  ch.on_extended_data do |c, type, data|
69
+ exit_status = 1
68
70
  data_lines = data.split(/[\r,\n]/)
69
71
  data_lines.each do |data_line|
70
72
  logger.error data_line unless data_line == ''
@@ -74,7 +76,8 @@ module Homeseed
74
76
  end
75
77
  end
76
78
  end
77
- end
79
+ [server, { exit_status: exit_status }]
80
+ end]
78
81
  end
79
82
  end
80
83
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: homeseed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - rbuchss
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-09 00:00:00.000000000 Z
11
+ date: 2014-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler