ops_build 1.0.0 → 1.0.1

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: 029c22f8a5e081ce0116366f250c629850c2594a
4
- data.tar.gz: 11e03b09c7a12e6b3a9415828e1b601adca8b26a
3
+ metadata.gz: a3eb83554472d56df5bc322a5e55dbf3b3ce3beb
4
+ data.tar.gz: 64aaa3c055c93772ed287dbba74abc47f55ad99f
5
5
  SHA512:
6
- metadata.gz: 938c7bf7943ed432b4d85f8e9486b9e4d895821655977e82c5d4f458c522bb11c8a363458a0ccc9c5e9fee5b78d300bafbc0ececddc6921b0375d1021230d18e
7
- data.tar.gz: bc7aadbdd7457e14a7a9f9dd3464d29e123a37d74da955047646a782015141eece0e6b421d62fbe085e285badbe2bace1e569271586e144d9527252d26207a84
6
+ metadata.gz: 9ec7f55873aaf48a4465c60e567afdb1c612be18afc62de3bbbe2d4fe48b997f7c8bc73863d8fb547b1353877cbef3c1fc6ddc9266637d2a0488047bf6a32c7e
7
+ data.tar.gz: 9d2f4c52a48621edb8689cea62b839c37ef9960d4744650827a581a7a99266ddd0cb1813be3136284a2fe13a64ae5b87ff5f75b17998e797a7b2d9a259d531fb
@@ -41,9 +41,18 @@ module OpsBuild
41
41
  #
42
42
  # Validate packer template
43
43
  def packer_validate(packer_config)
44
- unless system("packer validate #{packer_config}")
44
+ packer_options = ""
45
+
46
+ packer_create_var_file()
47
+
48
+ unless @user_var_file.nil?
49
+ puts(">>>> Customising packer build with variable file from: #{@user_var_file.path} ")
50
+ packer_options = "-var-file #{@user_var_file.path}"
51
+ end
52
+
53
+ unless system("packer validate #{packer_options} #{packer_config}")
45
54
  puts(">>> Packer template validation failed !")
46
- exit(1)
55
+ raise
47
56
  end
48
57
  end
49
58
 
@@ -58,9 +67,11 @@ module OpsBuild
58
67
 
59
68
  private
60
69
  def packer_create_var_file()
61
- @user_var_file = Tempfile.new('packer-var-file')
62
- @user_var_file.write(@user_vars.to_json)
63
- @user_var_file.rewind
70
+ if @user_var_file.nil?
71
+ @user_var_file = Tempfile.new('packer-var-file')
72
+ @user_var_file.write(@user_vars.to_json)
73
+ @user_var_file.rewind
74
+ end
64
75
  end
65
76
  end
66
77
  end
@@ -1,3 +1,3 @@
1
1
  module OpsBuild
2
- VERSION="1.0.0"
2
+ VERSION="1.0.1"
3
3
  end
data/lib/ops_build.rb CHANGED
@@ -39,14 +39,20 @@ class OpsBuilder < Thor
39
39
  packer.packer_add_user_variable(:aws_secret_key, aws.aws_get_secret_key)
40
40
  packer.packer_add_user_variable(:cookbook_path, berkshelf.berkshelf_dir)
41
41
 
42
- # Validate packer template
43
- packer.packer_validate(template)
44
-
45
42
  # Install missing cookbooks
46
43
  berkshelf.berks_install()
47
44
 
48
45
  # Load cookbooks to correct dir.
49
46
  berkshelf.berks_vendor()
47
+
48
+ begin
49
+ # Validate packer template
50
+ packer.packer_validate(template)
51
+ rescue
52
+ berkshelf.berks_cleanup()
53
+ packer.packer_cleanup()
54
+ exit(1)
55
+ end
50
56
  puts ">>>> Vendoring cookbooks with berks to #{berkshelf.berkshelf_dir}"
51
57
 
52
58
  # Run packer
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ops_build
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - HAMSIK Adam
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-09 00:00:00.000000000 Z
11
+ date: 2015-02-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler