awskeyring 1.4.0 → 1.5.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ae2606582cb2a9c079bf4ebcb6223570148954cf66fe9938c9b4d969c1312da6
4
- data.tar.gz: d6b24f01901e6c3161e1874f9bd9d018f9b62e734d7d73f5ffaed78f0125ecb1
3
+ metadata.gz: e56bbd10b469c722c15eaca7729bf39eac3aa3bde760c6faa44fd891200c7e2d
4
+ data.tar.gz: f1381f0d3e9c9f69c5404cae3a12499d94bfc003999fc96f3eabc2fe98218852
5
5
  SHA512:
6
- metadata.gz: d7704820e908585b67575c319e03493512917a9e5ea5db9620040402c49fbcd6466448e108949bcf32ea2d2f782e2ee8bf7e3e1bdd4e4138cb6d462c2c603635
7
- data.tar.gz: 667e7d6d0417cda0a79c1d81680469f1ba2c7a03630bd8e7269e03f137ad669155126a927eb39542b1e9e0b07ee0f408678bb603bc77900cc7db9ff60e702c6b
6
+ metadata.gz: b1fcf72a9fded0b2464f5f12bdcba598928400bb9b7c25bc586deb28f244d8044514433e596d758e1a54121c24c56972e2e137cc6803cca545dfb0486bc45a3e
7
+ data.tar.gz: 46a6c39a038ca5258a84cda96f12a3e8c6b7cea655f918476aef5b0ecc70c032cf02162eefc47ed4ed498e5234a4eb2637ec958309d8b23461b3306013a8a6b0
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## [v1.5.0](https://github.com/servian/awskeyring/tree/v1.5.0) (2020-07-08)
4
+
5
+ [Full Changelog](https://github.com/servian/awskeyring/compare/v1.4.0...v1.5.0)
6
+
7
+ **Implemented enhancements:**
8
+
9
+ - No-Bundle env changes for exec. [\#66](https://github.com/servian/awskeyring/pull/66) ([tristanmorgan](https://github.com/tristanmorgan))
10
+
3
11
  ## [v1.4.0](https://github.com/servian/awskeyring/tree/v1.4.0) (2020-06-19)
4
12
 
5
13
  [Full Changelog](https://github.com/servian/awskeyring/compare/v1.3.3...v1.4.0)
@@ -44,6 +44,7 @@ en:
44
44
  key: 'AWS account key id.'
45
45
  keychain: 'Name of KEYCHAIN to initialise.'
46
46
  mfa: 'AWS virtual mfa arn.'
47
+ nobundle: 'Unset Bundler environment variables.'
47
48
  noopen: 'Do not open the url.'
48
49
  notoken: 'Do not use saved token.'
49
50
  noremote: 'Do not validate with remote api.'
@@ -6,7 +6,7 @@ require 'json'
6
6
  # Version const and query of latest.
7
7
  module Awskeyring
8
8
  # The Gem's version number
9
- VERSION = '1.4.0'
9
+ VERSION = '1.5.0'
10
10
  # The Gem's homepage
11
11
  HOMEPAGE = 'https://github.com/servian/awskeyring'
12
12
 
@@ -160,6 +160,7 @@ class AwskeyringCommand < Thor # rubocop:disable Metrics/ClassLength
160
160
 
161
161
  desc 'exec ACCOUNT command...', I18n.t('exec.desc')
162
162
  method_option 'no-token', type: :boolean, aliases: '-n', desc: I18n.t('method_option.notoken'), default: false
163
+ method_option 'no-bundle', type: :boolean, aliases: '-b', desc: I18n.t('method_option.nobundle'), default: false
163
164
  # execute an external command with env set
164
165
  def exec(account, *command)
165
166
  if command.empty?
@@ -168,6 +169,7 @@ class AwskeyringCommand < Thor # rubocop:disable Metrics/ClassLength
168
169
  end
169
170
  cred = age_check_and_get(account: account, no_token: options['no-token'])
170
171
  env_vars = Awskeyring::Awsapi.get_env_array(cred)
172
+ unbundle if options['no-bundle']
171
173
  begin
172
174
  pid = Process.spawn(env_vars, command.join(' '))
173
175
  Process.wait pid
@@ -546,4 +548,17 @@ class AwskeyringCommand < Thor # rubocop:disable Metrics/ClassLength
546
548
  Thor::LineEditor.readline(message.rjust(20) + ': ')
547
549
  end
548
550
  end
551
+
552
+ def unbundle
553
+ to_delete = ENV.keys.select { |elem| elem.start_with?('BUNDLER_ORIG_') }
554
+ bundled_env = to_delete.map { |elem| elem[('BUNDLER_ORIG_'.length)..-1] }
555
+ to_delete << 'BUNDLE_GEMFILE'
556
+ bundled_env.each do |env_name|
557
+ ENV[env_name] = ENV['BUNDLER_ORIG_' + env_name]
558
+ to_delete << env_name if ENV['BUNDLER_ORIG_' + env_name].start_with? 'BUNDLER_'
559
+ end
560
+ to_delete.each do |env_name|
561
+ ENV.delete(env_name)
562
+ end
563
+ end
549
564
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awskeyring
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tristan Morgan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-19 00:00:00.000000000 Z
11
+ date: 2020-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-iam
@@ -97,8 +97,8 @@ licenses:
97
97
  metadata:
98
98
  bug_tracker_uri: https://github.com/servian/awskeyring/issues
99
99
  changelog_uri: https://github.com/servian/awskeyring/blob/master/CHANGELOG.md
100
- documentation_uri: https://rubydoc.info/gems/awskeyring/1.4.0
101
- source_code_uri: https://github.com/servian/awskeyring/tree/v1.4.0
100
+ documentation_uri: https://rubydoc.info/gems/awskeyring/1.5.0
101
+ source_code_uri: https://github.com/servian/awskeyring/tree/v1.5.0
102
102
  wiki_uri: https://github.com/servian/awskeyring/wiki
103
103
  post_install_message:
104
104
  rdoc_options: []