miam 0.2.4 → 0.2.5.beta1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 54eba51d4fa9323784be7dce0592ab0762ac43baf07be131708d5f2129ef31ea
4
- data.tar.gz: 54d049bd184ec5899f0fb58d744c19c619f3bab07335812e5ae552dad3ed8367
3
+ metadata.gz: b0a35750c70a9a9f30ff1a1482a3da3a66c994e691fa3802b2c54992408415df
4
+ data.tar.gz: c33e5e326f59da9810b8735620cea049cc619b013b1e3525d86416e44dd91af1
5
5
  SHA512:
6
- metadata.gz: f45931d3d409f81a1a46a57177e51090a509f9978b2a88b2ecdeb009d1728bd28e9ff98ebc7f6d2814ef554903b672ea46d333e5199dd99672b7136c46d69c73
7
- data.tar.gz: 2f80c18b24701faf30111ea8c23575baf1de72a3b7489ab4133adddde75eb90eb98d90229247fee84c88cad95bd784cb9f09165f509f8578ca1212b1a6fbb279
6
+ metadata.gz: ce11c734155e09c454e913ec7dc2d7ea8eb68cf60b0eb7803f0e01ae5b2469c865172e4a0a87f2e0ebb71d72fe9653b0b009d21a23913a4cd763b0ebbd1e6b72
7
+ data.tar.gz: e6001cb1c8c03903846f4d936e130f198fec72a695e086ab5ed36a8795be9891bd6f5143f4876b123d7cc5c27e50a846dc20f8a2ce521c66c61ed60546cea6d3
data/bin/miam CHANGED
@@ -19,10 +19,11 @@ MAGIC_COMMENT = <<-EOS
19
19
  EOS
20
20
 
21
21
  options = {
22
- :dry_run => false,
23
- :format => :ruby,
24
- :color => true,
25
- :debug => false,
22
+ :dry_run => false,
23
+ :format => :ruby,
24
+ :color => true,
25
+ :debug => false,
26
+ :show_backtrace => false
26
27
  }
27
28
 
28
29
  options[:password_manager] = Miam::PasswordManager.new(account_output, options)
@@ -58,6 +59,7 @@ ARGV.options do |opt|
58
59
  opt.on('' , '--no-color') { options[:color] = false }
59
60
  opt.on('' , '--no-progress') { options[:no_progress] = true }
60
61
  opt.on('' , '--debug') { options[:debug] = true }
62
+ opt.on('' , '--show-backtrace') { options[:show_backtrace] = true }
61
63
  opt.parse!
62
64
 
63
65
  aws_opts = {}
@@ -186,6 +188,7 @@ rescue => e
186
188
  raise e
187
189
  else
188
190
  $stderr.puts("[ERROR] #{e.message}".red)
191
+ $stderr.puts(e.backtrace.map(&:yellow)) if options[:show_backtrace]
189
192
  exit 1
190
193
  end
191
194
  end
@@ -1,6 +1,8 @@
1
1
  module Miam
2
2
  module TemplateHelper
3
3
  def include_template(template_name, context = {})
4
+ @template_name = template_name
5
+ @caller = caller[0]
4
6
  tmplt = @context.templates[template_name.to_s]
5
7
 
6
8
  unless tmplt
@@ -16,5 +18,14 @@ module Miam
16
18
  def context
17
19
  @context
18
20
  end
21
+
22
+ def required(*args)
23
+ missing_args = args.map(&:to_s) - @context.keys.map(&:to_s)
24
+ unless missing_args.empty?
25
+ ex = ArgumentError.new("Missing arguments: [#{missing_args.join(", ")}] in template: '#{@template_name}'")
26
+ ex.set_backtrace(@caller)
27
+ raise ex
28
+ end
29
+ end
19
30
  end
20
31
  end
@@ -1,3 +1,3 @@
1
1
  module Miam
2
- VERSION = '0.2.4'
2
+ VERSION = '0.2.5.beta1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: miam
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Genki Sugawara
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-19 00:00:00.000000000 Z
11
+ date: 2019-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-iam
@@ -240,12 +240,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
240
240
  version: '0'
241
241
  required_rubygems_version: !ruby/object:Gem::Requirement
242
242
  requirements:
243
- - - ">="
243
+ - - ">"
244
244
  - !ruby/object:Gem::Version
245
- version: '0'
245
+ version: 1.3.1
246
246
  requirements: []
247
- rubyforge_project:
248
- rubygems_version: 2.7.6
247
+ rubygems_version: 3.0.3
249
248
  signing_key:
250
249
  specification_version: 4
251
250
  summary: Miam is a tool to manage IAM.