bbc-cosmos-tools 0.4.1 → 0.4.2

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: 3cb7442d963df4f4ca2d403ba2f37e831616363f
4
- data.tar.gz: add8398183ee75d4580df67175ee25c7a8835be9
3
+ metadata.gz: 8d26da77c385f8b9e34fb1de6d2d6cb12c543a4c
4
+ data.tar.gz: aaa7528cffee9477830c0e5fa05af94fc05265dd
5
5
  SHA512:
6
- metadata.gz: 9e382b385c6ea1b38fc6a3f58fdf82a9c61650d19401f492f7df9537334006df9cd6bc64b5138a9180932043eae90a4426acd33325e97aab360305e392b61c95
7
- data.tar.gz: 4f49a41d384d116bb140d5547552c4bace00a66cbd2b95e7533323457cea3b77a1e62a229a078310b2364a357f73be89916b7cb41169fadc2242b37586bb427d
6
+ metadata.gz: 5660dbe5a69153663a1e536b285dc1240166a904ebec8f913b6342c78d89b58f13882a27d984d3f1a8d1341d4816c84691fd6a584b23187dbfc006f83ee24ea7
7
+ data.tar.gz: f84de60b7a3b3556d05eb6fbdf01e2cfeefb21a7167757552f546d302897f91c7e15aad1c85880c7ba8d13db4ad0b24debc024d98ceaeca16b8a0ed92e0c0098
@@ -7,6 +7,8 @@ module BBC
7
7
  module Cloudformation
8
8
  class Generator
9
9
 
10
+ RESERVED_MAIN_STACK_PARAMS = ['Environment', 'PublicSubnet1Id', 'PublicSubnet2Id', 'PublicSubnet3Id', 'ImageId', 'VpcId', 'PrivateSubnet1Id', 'PrivateSubnet2Id', 'PrivateSubnet3Id', 'BastionAccessSecurityGroup', 'DomainNameBase', 'KeyName']
11
+
10
12
  def self.component_exists?(component, config)
11
13
  config.resources['cloudformation']['components'][component]
12
14
  end
@@ -34,10 +36,12 @@ module BBC
34
36
  end
35
37
  end
36
38
 
37
- def self.parameters(data)
39
+ def self.parameters(data, main_stack = true)
38
40
  if data['Parameters']
39
41
  data['Parameters'].reduce({}) do |object, (key, value)|
40
- object.tap { |o| o[key] = value['Default'] }
42
+ object.tap do |o|
43
+ o[key] = value['Default'] unless main_stack && RESERVED_MAIN_STACK_PARAMS.include? key
44
+ end
41
45
  end
42
46
  else
43
47
  {}
@@ -91,7 +91,7 @@ module BBC
91
91
  'name_suffix' => options[:stack],
92
92
  'service_stack' => main_stack.match(/(true|t|yes|y|1)$/i) != nil,
93
93
  'template' => data,
94
- 'parameters' => Tools::Cloudformation::Generator.parameters(data),
94
+ 'parameters' => Tools::Cloudformation::Generator.parameters(data, main_stack),
95
95
  }
96
96
 
97
97
  response = api.post sprintf(config.app['stack_create_endpoint'], options[:env], id), JSON.pretty_generate(post_data)
@@ -125,7 +125,7 @@ module BBC
125
125
  @l.(d, id, options[:env])
126
126
  end
127
127
 
128
- params = Tools::Cloudformation::Generator.parameters(data)
128
+ params = Tools::Cloudformation::Generator.parameters(data, false)
129
129
 
130
130
  post_data = {
131
131
  'template' => data,
@@ -1,7 +1,7 @@
1
1
  module BBC
2
2
  module Cosmos
3
3
  module Tools
4
- VERSION = "0.4.1"
4
+ VERSION = "0.4.2"
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bbc-cosmos-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Jack
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-01 00:00:00.000000000 Z
11
+ date: 2014-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler