bbc-cosmos-tools 0.4.1 → 0.4.2

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