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 +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
|