cfnpp 0.3.5 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +7 -0
  2. data/bin/cfnpp +20 -2
  3. data/lib/cfnpp/transform.rb +1 -1
  4. metadata +21 -38
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 282590738c98b0f4020beb8e220242cb6cf2d454
4
+ data.tar.gz: 6b1f5f60c35ff5b18c54acea9ea25d4a3176167d
5
+ SHA512:
6
+ metadata.gz: 07b00e377c48b8c15f4fc0ebb1c351a0148b0d099373e7c6f4bd7bc2b7705aae6088e44447bfdac7cb118b0cc0fc3430ead750903834b66aba07c715cac2f2a7
7
+ data.tar.gz: 546f2cd43ff7e66164ac3835198db6a9749fb3f551b219760f90c0335c093d3464c6408c3e8d71892041cc176465a89c62c2468621395259eb604377c85af68e
data/bin/cfnpp CHANGED
@@ -52,6 +52,9 @@ eot
52
52
  opts.on('-c', '--conf PATH', 'use PATH instead of $basepath/conf/$environment_type for conf file') do |confpath|
53
53
  cli_opts[:confpath] = confpath
54
54
  end
55
+ opts.on('--git-revision-check', "skip update when the stack's current revision matches the new revision") do |revision|
56
+ cli_opts[:git_revision_check] = revision
57
+ end
55
58
  end
56
59
  optparse.parse!
57
60
 
@@ -146,10 +149,25 @@ eot
146
149
  opts['EnvironmentName'] = environment_name
147
150
  opts['EnvironmentType'] = environment_type
148
151
 
152
+ opts['Force'] = 'false'
149
153
  if cli_opts[:force]
150
154
  opts['Force'] = 'true'
151
- else
152
- opts['Force'] = 'true'
155
+ end
156
+
157
+ if cli_opts[:git_revision_check]
158
+ needs_update = false
159
+ if action == 'update' && stack.exists?
160
+ current_revision = stack.parameters['TemplateGitRevision']
161
+ #puts "Checking current stack git revision (#{current_revision}) against desired revision (#{opts['TemplateGitRevision']})"
162
+ if current_revision != opts['TemplateGitRevision']
163
+ needs_update = true
164
+ end
165
+ end
166
+
167
+ unless needs_update
168
+ puts "Skipping update for stack (#{stack_name}) because the stack's current revision (#{current_revision}) matches the new revision"
169
+ exit
170
+ end
153
171
  end
154
172
 
155
173
  uploader = CfnPP::Uploader.new('manta-cloudformation', stack_name)
@@ -174,7 +174,7 @@ module CfnPP
174
174
  inline = rec["inline"]
175
175
  name = rec["name"]
176
176
  rec.delete("inline")
177
- sub_params = rec["params"]
177
+ sub_params = rec["params"] || {}
178
178
  rec["result"] = self.class.new(inline, @filebase, sub_params.merge(@opts), name, @stack_url_base).as_template_result
179
179
  rec["Resources"] = {} if not rec["Resources"]
180
180
  rec["Resources"][name] = {
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfnpp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.5
5
- prerelease:
4
+ version: 0.3.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - Michael Bruce
@@ -10,141 +9,125 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-07-29 00:00:00.000000000 Z
12
+ date: 2014-08-01 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: aws-sdk
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
- - - ! '>='
18
+ - - ">="
21
19
  - !ruby/object:Gem::Version
22
20
  version: '0'
23
21
  type: :runtime
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
- - - ! '>='
25
+ - - ">="
29
26
  - !ruby/object:Gem::Version
30
27
  version: '0'
31
28
  - !ruby/object:Gem::Dependency
32
29
  name: json
33
30
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
31
  requirements:
36
- - - ! '>='
32
+ - - ">="
37
33
  - !ruby/object:Gem::Version
38
34
  version: '0'
39
35
  type: :runtime
40
36
  prerelease: false
41
37
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
38
  requirements:
44
- - - ! '>='
39
+ - - ">="
45
40
  - !ruby/object:Gem::Version
46
41
  version: '0'
47
42
  - !ruby/object:Gem::Dependency
48
43
  name: awesome_print
49
44
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
45
  requirements:
52
- - - ! '>='
46
+ - - ">="
53
47
  - !ruby/object:Gem::Version
54
48
  version: '0'
55
49
  type: :runtime
56
50
  prerelease: false
57
51
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
52
  requirements:
60
- - - ! '>='
53
+ - - ">="
61
54
  - !ruby/object:Gem::Version
62
55
  version: '0'
63
56
  - !ruby/object:Gem::Dependency
64
57
  name: travis
65
58
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
59
  requirements:
68
- - - ! '>='
60
+ - - ">="
69
61
  - !ruby/object:Gem::Version
70
62
  version: '0'
71
63
  type: :runtime
72
64
  prerelease: false
73
65
  version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
66
  requirements:
76
- - - ! '>='
67
+ - - ">="
77
68
  - !ruby/object:Gem::Version
78
69
  version: '0'
79
70
  - !ruby/object:Gem::Dependency
80
71
  name: dogapi
81
72
  requirement: !ruby/object:Gem::Requirement
82
- none: false
83
73
  requirements:
84
- - - ! '>='
74
+ - - ">="
85
75
  - !ruby/object:Gem::Version
86
76
  version: '0'
87
77
  type: :runtime
88
78
  prerelease: false
89
79
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
80
  requirements:
92
- - - ! '>='
81
+ - - ">="
93
82
  - !ruby/object:Gem::Version
94
83
  version: '0'
95
84
  - !ruby/object:Gem::Dependency
96
85
  name: ploy
97
86
  requirement: !ruby/object:Gem::Requirement
98
- none: false
99
87
  requirements:
100
- - - ! '>='
88
+ - - ">="
101
89
  - !ruby/object:Gem::Version
102
90
  version: '0'
103
91
  type: :runtime
104
92
  prerelease: false
105
93
  version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
94
  requirements:
108
- - - ! '>='
95
+ - - ">="
109
96
  - !ruby/object:Gem::Version
110
97
  version: '0'
111
- description: ! '["cfnpp", ["Michael Bruce", "Stephen J. Smith"]]'
98
+ description: '["cfnpp", ["Michael Bruce", "Stephen J. Smith"]]'
112
99
  email: mbruce@manta.com
113
100
  executables:
114
101
  - cfnpp
115
102
  extensions: []
116
103
  extra_rdoc_files: []
117
104
  files:
105
+ - bin/cfnpp
118
106
  - lib/cfnpp/replacer.rb
119
107
  - lib/cfnpp/templateresult.rb
120
108
  - lib/cfnpp/transform.rb
121
109
  - lib/cfnpp/uploader.rb
122
- - bin/cfnpp
123
110
  homepage:
124
111
  licenses: []
112
+ metadata: {}
125
113
  post_install_message:
126
114
  rdoc_options: []
127
115
  require_paths:
128
116
  - lib
129
117
  required_ruby_version: !ruby/object:Gem::Requirement
130
- none: false
131
118
  requirements:
132
- - - ! '>='
119
+ - - ">="
133
120
  - !ruby/object:Gem::Version
134
121
  version: '0'
135
- segments:
136
- - 0
137
- hash: 439810095925029723
138
122
  required_rubygems_version: !ruby/object:Gem::Requirement
139
- none: false
140
123
  requirements:
141
- - - ! '>='
124
+ - - ">="
142
125
  - !ruby/object:Gem::Version
143
126
  version: '0'
144
127
  requirements: []
145
128
  rubyforge_project:
146
- rubygems_version: 1.8.23
129
+ rubygems_version: 2.2.2
147
130
  signing_key:
148
- specification_version: 3
131
+ specification_version: 4
149
132
  summary: cfnpp
150
133
  test_files: []