aell 0.2.1 → 0.3.0

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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +5 -5
  3. data/exe/aell +15 -2
  4. data/lib/aell/version.rb +1 -1
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 94fe064297c4b6e618134e70230020a1b9552a6e288ff86aecff71a508585c7d
4
- data.tar.gz: ca99c0fcb7a2e75c345c9cef548de08e05fcc8c982783258872f3d67a7e9b8eb
3
+ metadata.gz: 6a366cd9a2b0a141f24e8270b81aa32e3ae1f6fe0c0a30c1c09b10bbd3056796
4
+ data.tar.gz: d890e5c9b5148cfb13653eef9fde2dcf993e0d0ea80eab4e4c54653240c886f3
5
5
  SHA512:
6
- metadata.gz: b5d8ba70b6c8915af3b5b9bbf5bc3175e8cac25744d0686bc6d9902d81422ef31a5b93681417c5ed08bffaccd017ebc0d8824a9131d1f96c11d9918144dd3be4
7
- data.tar.gz: 9d0cf7ce45717876d5437c41707dcf2b438c7894fcd553225520df489143bcaaa4589f2f7a1a17b820160a16d57cce9906d44c31556a0bd8a6d206e353afb69a
6
+ metadata.gz: 2858561b28f5779e03b3858803cef5e658796e88207ed5cd2074cafee0ab111ebfc9f79fc41e9b421f3ed2581d5cd5dc6e1faaa3762f7c516083fdd34a1300fd
7
+ data.tar.gz: 579d2b0931b72141f57d7e94a3ebe86c1784b9c4ea803764db3a7ffab8ae96cf00739fd4631045d1eab66276aca9e09050f3e2e5bf841ed06c635f4f3c1d6c10
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- aell (0.2.1)
4
+ aell (0.3.0)
5
5
  aws-sdk-ec2 (~> 1.137)
6
6
  net-ssh-multi (~> 1.2.1)
7
7
 
@@ -9,16 +9,16 @@ GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
11
  aws-eventstream (1.1.0)
12
- aws-partitions (1.333.0)
13
- aws-sdk-core (3.101.0)
12
+ aws-partitions (1.354.0)
13
+ aws-sdk-core (3.104.3)
14
14
  aws-eventstream (~> 1, >= 1.0.2)
15
15
  aws-partitions (~> 1, >= 1.239.0)
16
16
  aws-sigv4 (~> 1.1)
17
17
  jmespath (~> 1.0)
18
- aws-sdk-ec2 (1.170.0)
18
+ aws-sdk-ec2 (1.186.0)
19
19
  aws-sdk-core (~> 3, >= 3.99.0)
20
20
  aws-sigv4 (~> 1.1)
21
- aws-sigv4 (1.2.0)
21
+ aws-sigv4 (1.2.1)
22
22
  aws-eventstream (~> 1, >= 1.0.2)
23
23
  coderay (1.1.2)
24
24
  diff-lcs (1.3)
data/exe/aell CHANGED
@@ -52,6 +52,7 @@ options = {
52
52
  secret_access_key: AWS_SECRET_ACCESS_KEY,
53
53
  session_token: AWS_SESSION_TOKEN,
54
54
  region: AWS_REGION,
55
+ verify_host_key: :never,
55
56
  }
56
57
 
57
58
  class Hash
@@ -86,6 +87,14 @@ BANNER
86
87
  options[:user] = user
87
88
  end
88
89
 
90
+ opts.on("--single", "Only runs in one host") do
91
+ options[:single] = true
92
+ end
93
+
94
+ opts.on("--verify-host-key HOST_VERIFICATION", "Check host key when connecting (never, accept_new_or_local_tunnel, accept_new or always), default: never") do |host_verification|
95
+ options[:verify_host_key] = host_verification.to_sym
96
+ end
97
+
89
98
  opts.on("-v", "--version", "Shows aell version") do
90
99
  puts Aell::VERSION
91
100
  exit
@@ -120,13 +129,17 @@ end.parse!
120
129
 
121
130
  verify_options!(options)
122
131
 
123
- servers = options[:hosts] || get_servers_ips(**options.except(:user, :hosts, :command))
132
+ servers = options[:hosts] || get_servers_ips(**options.except(:user, :hosts, :command, :single, :verify_host_key))
133
+
134
+ servers = [servers.first] if options[:single]
124
135
 
125
136
  begin
126
137
  Thread.report_on_exception = false
127
138
  Net::SSH::Multi.start do |session|
128
139
  servers.each do |server|
129
- session.use(options[:user] ? "#{options[:user]}@#{server}" : server)
140
+ connection = options[:user] ? "#{options[:user]}@#{server}" : server
141
+
142
+ session.use(connection, verify_host_key: options[:verify_host_key])
130
143
  end
131
144
 
132
145
  session.exec options[:command]
@@ -1,3 +1,3 @@
1
1
  module Aell
2
- VERSION = "0.2.1"
2
+ VERSION = "0.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aell
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Carlos Atkinson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-24 00:00:00.000000000 Z
11
+ date: 2021-01-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-ec2