jackal-stacks 0.1.6 → 0.1.8

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
  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