stax 0.0.12 → 0.0.13

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: d7784301a9c81b43fc8ac2ff2d0917915aeab877ae0d2dfd9fb34e8519d2bda3
4
- data.tar.gz: '009e5e6c21cefa096aa091ddb8cfb6b2ce9a36ce0ac6bcdfaa3f7d60c5b70217'
3
+ metadata.gz: d019acd902c4e553be76d89cc052dc62988deb26aef77e504a9d09c1104cc1ea
4
+ data.tar.gz: fc3264f5d680f0bd53f2508d17b8fe5ab27c45d06e23d137435d1e7ea7bb2704
5
5
  SHA512:
6
- metadata.gz: aa084d28c3c33fbae1cb1e9328e9b220d301ec8598116e5cb2ef7ab2ecd354dfdcb271c9f4d9ee7aee877464c9de57bcf3ca51070d92fda8b2b004b6ecf6d1d4
7
- data.tar.gz: 460dbae75cb0caacc114fc0ef337b5abe7013724392d347e46906f454d9f6c5496f40bd2e435bd7ee09175fcdd3e3b6a4d5316056cfefce72fedd6c104be183e
6
+ metadata.gz: 14826ec6041b69b40f0853b0858c2bb41fd12eadeacc5189de977b22f6c1ea5831f9acd6d128dfc1f4737171276c449af36b0abdb3d39a916d95367a232875fa
7
+ data.tar.gz: 54341a7c15baa6d1b8299fee306b014dd6f647c85e14754bfe8ec2cb86cc72dedfdad602a8092f73dacf5c19082bb4476333513dbf147b42ce8830fca22899d0
data/lib/stax/stack.rb CHANGED
@@ -2,12 +2,15 @@ module Stax
2
2
  class Stack < Base
3
3
 
4
4
  no_commands do
5
+
6
+ ## get name of stack in Staxfile, or infer it from class
5
7
  def class_name
6
- @_class_name ||= self.class.to_s.split('::').last.downcase
8
+ @_class_name ||= self.class.instance_variable_get(:@name) || self.class.to_s.split('::').last.underscore
7
9
  end
8
10
 
11
+ ## build valid name for the stack
9
12
  def stack_name
10
- @_stack_name ||= stack_prefix + class_name
13
+ @_stack_name ||= stack_prefix + cfn_safe(class_name)
11
14
  end
12
15
 
13
16
  ## list of other stacks we need to reference
data/lib/stax/staxfile.rb CHANGED
@@ -38,7 +38,9 @@ module Stax
38
38
  ## add a stack by name, creates class as needed
39
39
  def self.add_stack(name, opt = {})
40
40
  @@_stack_list << name
41
- c = name.capitalize
41
+
42
+ ## camelize the stack name into class name
43
+ c = name.to_s.split(/[_-]/).map(&:capitalize).join
42
44
 
43
45
  ## create the class if it does not exist yet
44
46
  if self.const_defined?(c)
@@ -54,6 +56,7 @@ module Stax
54
56
  klass.include(self.const_get(i))
55
57
  end
56
58
 
59
+ klass.instance_variable_set(:@name, name)
57
60
  klass.instance_variable_set(:@imports, Array(opt.fetch(:import, [])))
58
61
  klass.instance_variable_set(:@type, opt.fetch(:type, nil))
59
62
  end
data/lib/stax/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Stax
2
- VERSION = '0.0.12'
2
+ VERSION = '0.0.13'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stax
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Lister
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-07 00:00:00.000000000 Z
11
+ date: 2019-04-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -270,8 +270,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
270
270
  - !ruby/object:Gem::Version
271
271
  version: '0'
272
272
  requirements: []
273
- rubyforge_project:
274
- rubygems_version: 2.7.6
273
+ rubygems_version: 3.0.3
275
274
  signing_key:
276
275
  specification_version: 4
277
276
  summary: Control Cloudformation stack and other stuff.