homeseed 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/bin/homeseed +5 -2
- data/lib/homeseed/version.rb +1 -1
- data/lib/homeseed.rb +5 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NTE5ZmU0NmUxMTEyOWU1ZWFhYmU5NTNiMjJjNDEyNDRjODgxMDcwNQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NTRiMjJhODlkNTY4MWI3MWQ1ZmVlMmQ4ZmZiMDQxZmM4MjcyMjc1NA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YzI5ZGJiNGRiYzZhOGY1YzE2NmRjOGNmZjc4M2E5MWIyOTZjOTRiMmJkYWE1
|
10
|
+
NDcwOTNiNzM4MzBkZDY2Y2U0MWI3YTllNTU2MmNmNmNjOTA1ODJkYTU0NDg3
|
11
|
+
ZGI4MjgxZmJjOGRmMDdkOTU0M2MwZjQ2MmFkYmIwOTk4ZDMzM2M=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
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 '
|
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
|
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
|
data/lib/homeseed/version.rb
CHANGED
data/lib/homeseed.rb
CHANGED
@@ -49,10 +49,11 @@ module Homeseed
|
|
49
49
|
end
|
50
50
|
|
51
51
|
def ssh_exec
|
52
|
-
@servers.
|
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
|
-
|
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.
|
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-
|
11
|
+
date: 2014-07-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|