terragov 0.3.1.1 → 0.3.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 +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/terragov/cli.rb +19 -5
- data/lib/terragov/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 18df1434ae9c550495cb0bc00a2da7577bf50295
|
4
|
+
data.tar.gz: 4ef166343fae271dec31b8aeaf0585de57750fb2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 36c0214bd7731eb39564e024c0ec19fc962a3482a651477caa8079f86a0e16b7852f110fb461b6627054565885b722d1508894dba38af7fe9dead119d96efde7
|
7
|
+
data.tar.gz: 61614afcf67f13d5f7e391e09854079323f1e4b19e636092572a2934e3ad1dbcfddbdceee157883cc654e076e6d9fd165be718ebfa5f0493f309d03e2c44b762
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
## 0.3.2 (2017-12-29)
|
2
|
+
|
3
|
+
- Allow force when applying on Terraform versions >=0.11
|
4
|
+
- Allow force apply and destroy on deployments on Terraform versions >=0.11
|
5
|
+
|
1
6
|
## 0.3.1 (2017-12-28)
|
2
7
|
|
3
8
|
- Added a "deploy" command to allow deploying multiple projects in order as defined
|
data/lib/terragov/cli.rb
CHANGED
@@ -237,7 +237,7 @@ module Terragov
|
|
237
237
|
Terragov::Terraform.new.execute(cmd, varfiles, backend, project_dir, do_dryrun, be_verbose)
|
238
238
|
end
|
239
239
|
|
240
|
-
def run_deployment(file, group, command)
|
240
|
+
def run_deployment(file, group, command, force)
|
241
241
|
abort("Must set deployment file: --file") unless file
|
242
242
|
abort("Must set command to run: --command") unless command
|
243
243
|
abort("Cannot find deployment file: #{file}") unless File.exist?(file)
|
@@ -250,11 +250,19 @@ module Terragov
|
|
250
250
|
end
|
251
251
|
|
252
252
|
if command == 'plan' || command == 'apply'
|
253
|
+
if force && command == 'apply'
|
254
|
+
command = "#{command} -auto-approve"
|
255
|
+
end
|
256
|
+
|
253
257
|
deployment_config.each do |proj|
|
254
258
|
$project = proj
|
255
259
|
run_terraform_cmd(command, nil, true)
|
256
260
|
end
|
257
261
|
elsif command == 'destroy'
|
262
|
+
if force
|
263
|
+
command = "#{command} -force"
|
264
|
+
end
|
265
|
+
|
258
266
|
deployment_config.reverse.each do |proj|
|
259
267
|
$project = proj
|
260
268
|
run_terraform_cmd(command, nil, true)
|
@@ -268,7 +276,7 @@ module Terragov
|
|
268
276
|
command :plan do |c|
|
269
277
|
c.syntax = 'terragov plan'
|
270
278
|
c.description = 'Runs a plan of your code'
|
271
|
-
c.action do |_args,
|
279
|
+
c.action do |_args, options|
|
272
280
|
run_terraform_cmd(c.name)
|
273
281
|
end
|
274
282
|
end
|
@@ -276,8 +284,13 @@ module Terragov
|
|
276
284
|
command :apply do |c|
|
277
285
|
c.syntax = 'terragov apply'
|
278
286
|
c.description = 'Apply your code'
|
279
|
-
c.
|
280
|
-
|
287
|
+
c.option '--force', 'Force apply'
|
288
|
+
c.action do |_args, options|
|
289
|
+
if options.force
|
290
|
+
run_terraform_cmd("#{c.name} -auto-approve")
|
291
|
+
else
|
292
|
+
run_terraform_cmd(c.name)
|
293
|
+
end
|
281
294
|
end
|
282
295
|
end
|
283
296
|
|
@@ -300,11 +313,12 @@ module Terragov
|
|
300
313
|
c.option '-f', '--file STRING', 'Specify deployment file'
|
301
314
|
c.option '-g', '--group STRING', 'Specify group that you wish to deploy'
|
302
315
|
c.option '-c', '--command STRING', 'What command to run: apply, plan or destroy.'
|
316
|
+
c.option '--force', 'Force apply or destroy'
|
303
317
|
c.action do |_args, options|
|
304
318
|
|
305
319
|
group = options.group.nil? ? 'default' : options.group
|
306
320
|
|
307
|
-
run_deployment(options.file, group, options.command)
|
321
|
+
run_deployment(options.file, group, options.command, options.force)
|
308
322
|
end
|
309
323
|
end
|
310
324
|
|
data/lib/terragov/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: terragov
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Laura Martin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-12-
|
11
|
+
date: 2017-12-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: commander
|
@@ -201,7 +201,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
201
|
version: '0'
|
202
202
|
requirements: []
|
203
203
|
rubyforge_project:
|
204
|
-
rubygems_version: 2.6.
|
204
|
+
rubygems_version: 2.6.11
|
205
205
|
signing_key:
|
206
206
|
specification_version: 4
|
207
207
|
summary: Wrapper for GOV.UK Terraform deployments.
|