aws_runas 0.3.1 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/.gitignore +2 -0
- data/.travis.yml +3 -2
- data/CHANGELOG.md +11 -0
- data/README.md +5 -0
- data/aws_runas.gemspec +2 -2
- data/certs/vancluever.pem +15 -15
- data/lib/aws_runas/cli.rb +2 -6
- data/lib/aws_runas/config.rb +1 -0
- data/lib/aws_runas/main.rb +1 -1
- data/lib/aws_runas/utils.rb +42 -1
- data/lib/aws_runas/version.rb +1 -1
- data/spec/aws_runas/main_spec.rb +0 -10
- data/spec/aws_runas/utils_spec.rb +65 -0
- data/spec/helpers/files/bashrc +1 -0
- data/spec/helpers/utils_spec.rb +15 -0
- metadata +24 -20
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: af8ca683b13de341202e80a4e5ba6db77eda5903
|
4
|
+
data.tar.gz: de6f9fcd9160ffb9ed9bc31ed895f43ef489ea7f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef6af6dd0f335c650c817b41d87f0d81f113a907d44cacf2cde7080bb5fcbdabf19b99a1a6a844ae0bff7f351d1849b805d6eeafa244c636c934cff4318712c3
|
7
|
+
data.tar.gz: d69007d2fedddfaae682f07cc565ad7bb9a226275ba2420a7b20db6662a2f45b684dee8d115b1c2d71ab2b0edfc36342079f0d08dce960636bef5425e0fd17d0
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,14 @@
|
|
1
|
+
## v0.4.0
|
2
|
+
|
3
|
+
* Dropping support for Ruby 2.1. You will need at least Ruby 2.2.6 to be using
|
4
|
+
this gem now. If you have a version below this, please use a v0.3.x version.
|
5
|
+
* MFA entry is no longer hidden from the terminal - you will see the digits you
|
6
|
+
enter now.
|
7
|
+
* Added a special indicator to `bash` prompts when running interactively. This
|
8
|
+
prompt displays your running profile, like so: `(AWS:default)`. When running
|
9
|
+
via --no-role, the indicator is just `(AWS)`. This should help to distinguish
|
10
|
+
any AWS shells you may be running from regular ones.
|
11
|
+
|
1
12
|
## v0.3.1
|
2
13
|
|
3
14
|
This update sets `AWS_SDK_CONFIG_OPT_OUT` before the `aws-sdk` Ruby gem is
|
data/README.md
CHANGED
@@ -23,6 +23,11 @@ thing, but there are some differentiators in this gem:
|
|
23
23
|
interactive shell sessions (by supplying no commands).
|
24
24
|
* MFA will be auto-detected and only prompted for if necessary (allowing one
|
25
25
|
to assume a role that does not have a MFA serial supplied).
|
26
|
+
* Session tokens can be acquired without assuming a role by adding the
|
27
|
+
appropriate `mfa_serial` into the `[default]` profile and running `aws-runas`
|
28
|
+
with `--no-role`. Subsequent uses of `aws-runas` after this will not prompt
|
29
|
+
you for MFA (useful for tooling that needs to assume multiple roles off the
|
30
|
+
same session token).
|
26
31
|
|
27
32
|
Usage
|
28
33
|
------
|
data/aws_runas.gemspec
CHANGED
@@ -24,7 +24,7 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.description = 'Run a command or shell under an assumed AWS IAM role'
|
25
25
|
spec.summary = spec.description
|
26
26
|
spec.homepage = 'https://github.com/vancluever/aws-runas'
|
27
|
-
spec.license = 'Apache
|
27
|
+
spec.license = 'Apache-2.0'
|
28
28
|
|
29
29
|
spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
30
30
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
|
|
35
35
|
spec.cert_chain = ['certs/vancluever.pem']
|
36
36
|
spec.signing_key = File.expand_path('~/.ssh/gem-private_key.pem') if $PROGRAM_NAME =~ /gem\z/
|
37
37
|
|
38
|
-
spec.required_ruby_version = ['>= 2.
|
38
|
+
spec.required_ruby_version = ['>= 2.2.6']
|
39
39
|
|
40
40
|
spec.add_dependency 'aws-sdk', '~> 2.6'
|
41
41
|
spec.add_dependency 'inifile', '~> 3.0'
|
data/certs/vancluever.pem
CHANGED
@@ -1,22 +1,22 @@
|
|
1
1
|
-----BEGIN CERTIFICATE-----
|
2
2
|
MIIDjjCCAnagAwIBAgIBATANBgkqhkiG9w0BAQUFADBGMQ8wDQYDVQQDDAZjaHJp
|
3
3
|
c20xHjAcBgoJkiaJk/IsZAEZFg52YW5jbHVldmVydGVjaDETMBEGCgmSJomT8ixk
|
4
|
-
|
4
|
+
ARkWA2NvbTAeFw0xNzAzMTYxNjM0MTZaFw0xODAzMTYxNjM0MTZaMEYxDzANBgNV
|
5
5
|
BAMMBmNocmlzbTEeMBwGCgmSJomT8ixkARkWDnZhbmNsdWV2ZXJ0ZWNoMRMwEQYK
|
6
6
|
CZImiZPyLGQBGRYDY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
7
|
+
3i76LgHtAqSINqsk+1joj4bx4Mwk2Dgc5HMSe2MUAUzBxCXMDdlSSSJMBB8ZTXbf
|
8
|
+
uKreoDESTVLQlPm+RnsTDZpMMurznYGq15RrstD8pkxCre6QiGY1Ujwh/qdQQ65G
|
9
|
+
xULqYRSpikriJl8mHyUOxz2A56os/sTIzvfdNdC0y3wMUmPOQZMzsLxcxBT9rvtm
|
10
|
+
ME3IS5nR9u35X9O0CtNtvP+9VhJ/8mpSaYh2t0FigWJggvB9pRyT7D2YI0y1NpuW
|
11
|
+
w3FQeGwDZkvpI6dQxgQKuwNMIZVs39QSu5ltzlrjkFhm4mJKf5Zf1hVjMfKKWJSM
|
12
|
+
BDYULea2Iv+fpGU2SkhrSwIDAQABo4GGMIGDMAkGA1UdEwQCMAAwCwYDVR0PBAQD
|
13
|
+
AgSwMB0GA1UdDgQWBBRJbzaO73nDGmYlgYL+7tEDhL6+FjAkBgNVHREEHTAbgRlj
|
14
14
|
aHJpc21AdmFuY2x1ZXZlcnRlY2guY29tMCQGA1UdEgQdMBuBGWNocmlzbUB2YW5j
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
15
|
+
bHVldmVydGVjaC5jb20wDQYJKoZIhvcNAQEFBQADggEBALVY07yDy4um9cYp0ku9
|
16
|
+
WMZLWUwsxXsqmhnKcKa552NWhrdnjy/jCdc1fWcsyF60X5FZ4OEIHB2WubTa8/Ty
|
17
|
+
fWW/FNQMxAYNUzO8XBZGuE/5m8V3dJL8AlUiuiDLfZoeQAVe6zeaeBWYJenxNBRS
|
18
|
+
8oLbWQukwSlOP62gMme5mVXM0NKc/MeO2wQSRJXjYoGdDCfqgaIImPg7ExME6Fw+
|
19
|
+
g09hCEeualN7su6OZYCUknxeGDmCvfO5fQlGmTzAVewWgGApG7XUvM0gJXV8ks0+
|
20
|
+
80WBA6xKwX0zwURD8J7WNieL2iY5AhBg26cHuFLMQGTCyNEeZHZHnJhCwuBcnV1w
|
21
|
+
2zQ=
|
22
22
|
-----END CERTIFICATE-----
|
data/lib/aws_runas/cli.rb
CHANGED
@@ -58,13 +58,9 @@ module AwsRunAs
|
|
58
58
|
def read_mfa_if_needed(path: nil, profile: 'default')
|
59
59
|
@cfg = AwsRunAs::Config.new(path: path, profile: profile)
|
60
60
|
return nil unless @cfg.mfa_required?
|
61
|
-
STDOUT.
|
61
|
+
STDOUT.print 'Enter MFA code: '
|
62
62
|
STDOUT.flush
|
63
|
-
|
64
|
-
STDIN.noecho(&:gets).chomp
|
65
|
-
rescue Errno::EBADF
|
66
|
-
STDIN.gets.chomp
|
67
|
-
end
|
63
|
+
STDIN.gets.chomp
|
68
64
|
end
|
69
65
|
end
|
70
66
|
end
|
data/lib/aws_runas/config.rb
CHANGED
@@ -17,6 +17,7 @@ require 'inifile'
|
|
17
17
|
module AwsRunAs
|
18
18
|
# Manages the configuartion file, including loading and retrieving values.
|
19
19
|
class Config
|
20
|
+
attr_reader :profile
|
20
21
|
# Finds the configuration file (used if no file is specified).
|
21
22
|
# paths searched: ./aws_config, and ~/.aws/config.
|
22
23
|
def self.find_config_file
|
data/lib/aws_runas/main.rb
CHANGED
@@ -78,7 +78,7 @@ module AwsRunAs
|
|
78
78
|
|
79
79
|
def handoff(command: nil, argv: nil)
|
80
80
|
env = credentials_env
|
81
|
-
|
81
|
+
AwsRunAs::Utils.handoff_to_shell(env: env, profile: @no_role ? nil : @cfg.profile) unless command
|
82
82
|
exec(env, command, *argv)
|
83
83
|
end
|
84
84
|
end
|
data/lib/aws_runas/utils.rb
CHANGED
@@ -13,13 +13,31 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
|
15
15
|
require 'rbconfig'
|
16
|
+
require 'tempfile'
|
17
|
+
require 'English'
|
16
18
|
|
17
19
|
module AwsRunAs
|
18
20
|
# Utility functions that aren't specifically tied to a class.
|
19
21
|
module Utils
|
22
|
+
module_function
|
23
|
+
|
24
|
+
# Run an interactive bash session with a special streamed RC file. The RC
|
25
|
+
# merges a local .bashrc if it exists, with a prompt that includes the
|
26
|
+
# computed message from handoff_to_shell.
|
27
|
+
def bash_with_prompt(env:, path:, message:)
|
28
|
+
rc_data = IO.read("#{ENV['HOME']}/.bashrc") if File.exist?("#{ENV['HOME']}/.bashrc")
|
29
|
+
rc_file = Tempfile.new('aws_runas_bashrc')
|
30
|
+
rc_file.write("#{rc_data}\n") unless rc_data.nil?
|
31
|
+
rc_file.write("PS1=\"\\e[33m(#{message})\\e[0m $PS1\"\n")
|
32
|
+
rc_file.close
|
33
|
+
system(env, path, '--rcfile', rc_file.path)
|
34
|
+
ensure
|
35
|
+
rc_file.unlink
|
36
|
+
end
|
37
|
+
|
20
38
|
# load the shell for a specific operating system.
|
21
39
|
# if $SHELL exists, load that.
|
22
|
-
def
|
40
|
+
def shell
|
23
41
|
if RbConfig::CONFIG['host_os'] =~ /mswin|windows|mingw32/i
|
24
42
|
'cmd.exe'
|
25
43
|
elsif ENV.include?('SHELL')
|
@@ -28,5 +46,28 @@ module AwsRunAs
|
|
28
46
|
'/bin/sh'
|
29
47
|
end
|
30
48
|
end
|
49
|
+
|
50
|
+
# Compute the message given to the prompt based off supplied profile.
|
51
|
+
def compute_message(profile:)
|
52
|
+
if profile.nil?
|
53
|
+
'AWS'
|
54
|
+
else
|
55
|
+
"AWS:#{profile}"
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
# "Handoff" to a supported interactive shell. More technically, this runs
|
60
|
+
# an interactive shell with the shell prompt customized to the current
|
61
|
+
# running AWS profile. If the shell is not something we can handle
|
62
|
+
# specifically, just run the shell.
|
63
|
+
def handoff_to_shell(env:, profile: nil)
|
64
|
+
path = shell
|
65
|
+
if path.end_with?('/bash')
|
66
|
+
bash_with_prompt(env: env, path: path, message: compute_message(profile: profile))
|
67
|
+
else
|
68
|
+
system(env, path)
|
69
|
+
end
|
70
|
+
exit $CHILD_STATUS.exitstatus
|
71
|
+
end
|
31
72
|
end
|
32
73
|
end
|
data/lib/aws_runas/version.rb
CHANGED
data/spec/aws_runas/main_spec.rb
CHANGED
@@ -124,16 +124,6 @@ describe AwsRunAs::Main do
|
|
124
124
|
ENV.store('SHELL', '/bin/sh')
|
125
125
|
end
|
126
126
|
|
127
|
-
it 'calls exec with the environment properly set' do
|
128
|
-
expect(@main).to receive(:exec).with(@env, any_args)
|
129
|
-
@main.handoff
|
130
|
-
end
|
131
|
-
|
132
|
-
it 'starts a shell if no command is specified' do
|
133
|
-
expect(@main).to receive(:exec).with(@env, '/bin/sh', *nil)
|
134
|
-
@main.handoff
|
135
|
-
end
|
136
|
-
|
137
127
|
it 'execs a command when a command is specified' do
|
138
128
|
expect(@main).to receive(:exec).with(anything, '/usr/bin/foo', *['--bar', 'baz'])
|
139
129
|
@main.handoff(command: '/usr/bin/foo', argv: ['--bar', 'baz'])
|
@@ -15,6 +15,31 @@
|
|
15
15
|
require 'spec_helper'
|
16
16
|
|
17
17
|
describe AwsRunAs::Utils do
|
18
|
+
describe '::bash_with_prompt' do
|
19
|
+
context 'with RC file' do
|
20
|
+
before(:example) do
|
21
|
+
allow(IO).to receive(:read).with("#{ENV['HOME']}/.bashrc").and_return(BASHRC_FILE_CONTENTS)
|
22
|
+
end
|
23
|
+
it 'runs bash with a properly combined RC file' do
|
24
|
+
expect(AwsRunAs::Utils).to receive(:system).with(EXPECTED_ENV, '/bin/bash', '--rcfile', anything)
|
25
|
+
expect_any_instance_of(Tempfile).to receive(:write).with("#{BASHRC_FILE_CONTENTS}\n")
|
26
|
+
expect_any_instance_of(Tempfile).to receive(:write).with(BASHRC_EXPECTED_PROMPT)
|
27
|
+
AwsRunAs::Utils.bash_with_prompt(env: EXPECTED_ENV, path: '/bin/bash', message: 'AWS:rspec')
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'without RC file' do
|
32
|
+
before(:example) do
|
33
|
+
allow(File).to receive(:exist?).with("#{ENV['HOME']}/.bashrc").and_return(false)
|
34
|
+
end
|
35
|
+
it 'runs bash (no RC file found)' do
|
36
|
+
expect(AwsRunAs::Utils).to receive(:system).with(EXPECTED_ENV, '/bin/bash', '--rcfile', anything)
|
37
|
+
expect_any_instance_of(Tempfile).to receive(:write).with(BASHRC_EXPECTED_PROMPT)
|
38
|
+
AwsRunAs::Utils.bash_with_prompt(env: EXPECTED_ENV, path: '/bin/bash', message: 'AWS:rspec')
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
18
43
|
describe '::shell' do
|
19
44
|
context 'Non-Windows OS' do
|
20
45
|
context 'No $SHELL set' do
|
@@ -49,4 +74,44 @@ describe AwsRunAs::Utils do
|
|
49
74
|
end
|
50
75
|
end
|
51
76
|
end
|
77
|
+
|
78
|
+
describe '::compute_message' do
|
79
|
+
context 'no profile specified' do
|
80
|
+
it 'returns "AWS" with no profile' do
|
81
|
+
expect(AwsRunAs::Utils.compute_message(profile: nil)).to eq 'AWS'
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
context 'with profile as "rspec"' do
|
86
|
+
it 'returns "AWS:rspec", indicating that is the profile' do
|
87
|
+
expect(AwsRunAs::Utils.compute_message(profile: 'rspec')).to eq 'AWS:rspec'
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
describe '::handoff_to_shell' do
|
93
|
+
context 'with shell as bash' do
|
94
|
+
before(:example) do
|
95
|
+
allow(AwsRunAs::Utils).to receive(:shell).and_return('/bin/bash')
|
96
|
+
allow(AwsRunAs::Utils).to receive(:exit)
|
97
|
+
end
|
98
|
+
|
99
|
+
it 'Loads bash with the rspec profile prompt' do
|
100
|
+
expect(AwsRunAs::Utils).to receive(:bash_with_prompt).with(env: EXPECTED_ENV, path: '/bin/bash', message: 'AWS:rspec')
|
101
|
+
AwsRunAs::Utils.handoff_to_shell(env: EXPECTED_ENV, profile: 'rspec')
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
context 'with non-prompt supported shell' do
|
106
|
+
before(:example) do
|
107
|
+
allow(AwsRunAs::Utils).to receive(:shell).and_return('/bin/sh')
|
108
|
+
allow(AwsRunAs::Utils).to receive(:exit)
|
109
|
+
end
|
110
|
+
|
111
|
+
it 'starts a default shell without any args' do
|
112
|
+
expect(AwsRunAs::Utils).to receive(:system).with(EXPECTED_ENV, '/bin/sh')
|
113
|
+
AwsRunAs::Utils.handoff_to_shell(env: EXPECTED_ENV, profile: nil)
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|
52
117
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
foobar
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
MOCK_BASHRC_PATH = File.expand_path('../files/bashrc', __FILE__)
|
4
|
+
|
5
|
+
BASHRC_FILE_CONTENTS = <<EOS.freeze
|
6
|
+
foobar
|
7
|
+
EOS
|
8
|
+
|
9
|
+
BASHRC_EXPECTED_PROMPT = "PS1=\"\\e[33m(AWS:rspec)\\e[0m $PS1\"\n".freeze
|
10
|
+
|
11
|
+
EXPECTED_ENV = {
|
12
|
+
'AWS_ACCESS_KEY_ID' => 'AccessKeyId',
|
13
|
+
'AWS_SECRET_ACCESS_KEY' => 'SecretAccessKey',
|
14
|
+
'AWS_SESSION_TOKEN' => 'Token'
|
15
|
+
}.freeze
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws_runas
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Marchesi
|
@@ -12,26 +12,26 @@ cert_chain:
|
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
13
|
MIIDjjCCAnagAwIBAgIBATANBgkqhkiG9w0BAQUFADBGMQ8wDQYDVQQDDAZjaHJp
|
14
14
|
c20xHjAcBgoJkiaJk/IsZAEZFg52YW5jbHVldmVydGVjaDETMBEGCgmSJomT8ixk
|
15
|
-
|
15
|
+
ARkWA2NvbTAeFw0xNzAzMTYxNjM0MTZaFw0xODAzMTYxNjM0MTZaMEYxDzANBgNV
|
16
16
|
BAMMBmNocmlzbTEeMBwGCgmSJomT8ixkARkWDnZhbmNsdWV2ZXJ0ZWNoMRMwEQYK
|
17
17
|
CZImiZPyLGQBGRYDY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
18
|
+
3i76LgHtAqSINqsk+1joj4bx4Mwk2Dgc5HMSe2MUAUzBxCXMDdlSSSJMBB8ZTXbf
|
19
|
+
uKreoDESTVLQlPm+RnsTDZpMMurznYGq15RrstD8pkxCre6QiGY1Ujwh/qdQQ65G
|
20
|
+
xULqYRSpikriJl8mHyUOxz2A56os/sTIzvfdNdC0y3wMUmPOQZMzsLxcxBT9rvtm
|
21
|
+
ME3IS5nR9u35X9O0CtNtvP+9VhJ/8mpSaYh2t0FigWJggvB9pRyT7D2YI0y1NpuW
|
22
|
+
w3FQeGwDZkvpI6dQxgQKuwNMIZVs39QSu5ltzlrjkFhm4mJKf5Zf1hVjMfKKWJSM
|
23
|
+
BDYULea2Iv+fpGU2SkhrSwIDAQABo4GGMIGDMAkGA1UdEwQCMAAwCwYDVR0PBAQD
|
24
|
+
AgSwMB0GA1UdDgQWBBRJbzaO73nDGmYlgYL+7tEDhL6+FjAkBgNVHREEHTAbgRlj
|
25
25
|
aHJpc21AdmFuY2x1ZXZlcnRlY2guY29tMCQGA1UdEgQdMBuBGWNocmlzbUB2YW5j
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
26
|
+
bHVldmVydGVjaC5jb20wDQYJKoZIhvcNAQEFBQADggEBALVY07yDy4um9cYp0ku9
|
27
|
+
WMZLWUwsxXsqmhnKcKa552NWhrdnjy/jCdc1fWcsyF60X5FZ4OEIHB2WubTa8/Ty
|
28
|
+
fWW/FNQMxAYNUzO8XBZGuE/5m8V3dJL8AlUiuiDLfZoeQAVe6zeaeBWYJenxNBRS
|
29
|
+
8oLbWQukwSlOP62gMme5mVXM0NKc/MeO2wQSRJXjYoGdDCfqgaIImPg7ExME6Fw+
|
30
|
+
g09hCEeualN7su6OZYCUknxeGDmCvfO5fQlGmTzAVewWgGApG7XUvM0gJXV8ks0+
|
31
|
+
80WBA6xKwX0zwURD8J7WNieL2iY5AhBg26cHuFLMQGTCyNEeZHZHnJhCwuBcnV1w
|
32
|
+
2zQ=
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
34
|
+
date: 2017-03-16 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: aws-sdk
|
@@ -164,10 +164,12 @@ files:
|
|
164
164
|
- spec/helpers/files/aws_config
|
165
165
|
- spec/helpers/files/aws_config_nomfa
|
166
166
|
- spec/helpers/files/aws_config_nosource
|
167
|
+
- spec/helpers/files/bashrc
|
168
|
+
- spec/helpers/utils_spec.rb
|
167
169
|
- spec/spec_helper.rb
|
168
170
|
homepage: https://github.com/vancluever/aws-runas
|
169
171
|
licenses:
|
170
|
-
- Apache
|
172
|
+
- Apache-2.0
|
171
173
|
metadata: {}
|
172
174
|
post_install_message:
|
173
175
|
rdoc_options: []
|
@@ -177,7 +179,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
177
179
|
requirements:
|
178
180
|
- - ">="
|
179
181
|
- !ruby/object:Gem::Version
|
180
|
-
version:
|
182
|
+
version: 2.2.6
|
181
183
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
182
184
|
requirements:
|
183
185
|
- - ">="
|
@@ -185,7 +187,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
187
|
version: '0'
|
186
188
|
requirements: []
|
187
189
|
rubyforge_project:
|
188
|
-
rubygems_version: 2.
|
190
|
+
rubygems_version: 2.6.8
|
189
191
|
signing_key:
|
190
192
|
specification_version: 4
|
191
193
|
summary: Run a command or shell under an assumed AWS IAM role
|
@@ -198,4 +200,6 @@ test_files:
|
|
198
200
|
- spec/helpers/files/aws_config
|
199
201
|
- spec/helpers/files/aws_config_nomfa
|
200
202
|
- spec/helpers/files/aws_config_nosource
|
203
|
+
- spec/helpers/files/bashrc
|
204
|
+
- spec/helpers/utils_spec.rb
|
201
205
|
- spec/spec_helper.rb
|
metadata.gz.sig
CHANGED
Binary file
|