jackal-stacks 0.1.6 → 0.1.8

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
  SHA1:
3
- metadata.gz: 7331be29e3c4592f1e4c524ffab3560693ebeed5
4
- data.tar.gz: eb3236969e633ebb07a8363542d8aaec2ea61525
3
+ metadata.gz: 51e6858ae92729aaa665e6cdbb735405bba6f786
4
+ data.tar.gz: af33071ecd05ee212eb5599f5a7a2dd4d2de4f0a
5
5
  SHA512:
6
- metadata.gz: 3ef673f4bc94b275c7ba8e53c6e70c8eeab9b5a30b135ef20487ec69ce2c657d9c6039ada30d08e70fb0fc15a980a85bea230a53d735edbd6ca68dfd58ef402a
7
- data.tar.gz: 1303387ab2be6bf3d0118b9e562bac1f0d918e7b8eadf3ae0f677e9b5a76fd457b3ed31b300c4d896e374fbed67039f5902e641ece2c25893c564d03a398a13b
6
+ metadata.gz: 033a92d22e3d12dded99f34dd8d93fed30e3503b097573e3c072a64fb1be658ac3da1ec6e25c30dc3e928be9b67cf4a3fa56ef71c2b46b6fcb6b28c8a165decd
7
+ data.tar.gz: 6c4053970df9ad2079d3151b459453dd6e9eadb65e200905ce9efd8fb2b32cf980a381152fb0b67a84756b3d5329d2e2cfdc54010235da726dc892c8881c6caf
@@ -1,3 +1,8 @@
1
+ # v0.1.8
2
+ * Add configuration entry for mappings
3
+ * Remove empty name parts prior to join
4
+ * Allow subclasses to define additional validation
5
+
1
6
  # v0.1.6
2
7
  * Add wait helper on expected stack state
3
8
  * Provide explicit method to extract API configuration
@@ -16,6 +16,10 @@ Jackal.service(
16
16
  :stacks,
17
17
  :description => 'Manage stacks',
18
18
  :configuration => {
19
+ :mappings => {
20
+ :description => 'Stack namespace mapping',
21
+ :type => :hash
22
+ },
19
23
  :orchestration__bucket_name => {
20
24
  :description => 'Name of remote bucket used for infrastructure storage'
21
25
  },
@@ -25,8 +25,8 @@ module Jackal
25
25
  # @return [Truthy, Falsey]
26
26
  def valid?(message)
27
27
  super do |payload|
28
- payload.get(:data, :stacks, :builder) &&
29
- payload.get(:data, :stacks, :template) &&
28
+ (!block_given || yield(payload)) &&
29
+ payload.get(:data, :stacks, :builder) &&
30
30
  payload.get(:data, :stacks, :asset) &&
31
31
  allowed?(payload)
32
32
  end
@@ -42,6 +42,9 @@ module Jackal
42
42
  unless(payload.get(:data, :stacks, :name))
43
43
  payload.set(:data, :stacks, :name, stack_name(payload))
44
44
  end
45
+ unless(payload.get(:data, :stacks, :template))
46
+ payload.set(:data, :stacks, :template, 'infrastructure')
47
+ end
45
48
  store_stable_asset(payload, directory)
46
49
  begin
47
50
  stack = stacks_api.stacks.get(payload.get(:data, :stacks, :name))
@@ -40,7 +40,7 @@ module Jackal
40
40
  s_namespace,
41
41
  s_project,
42
42
  payload.get(:data, :stacks, :template).sub(/\.[a-z]+$/, '')
43
- ].join('-').gsub(/[^A-Za-z0-9\-]/, '-')
43
+ ].compact.join('-').gsub(/[^A-Za-z0-9\-]/, '-')
44
44
  end
45
45
 
46
46
  end
@@ -1,6 +1,6 @@
1
1
  module Jackal
2
2
  module Stacks
3
3
  # Current library version
4
- VERSION = Gem::Version.new('0.1.6')
4
+ VERSION = Gem::Version.new('0.1.8')
5
5
  end
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jackal-stacks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Roberts
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-22 00:00:00.000000000 Z
11
+ date: 2015-10-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jackal