builderator 0.3.14 → 0.3.15

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: 6901f377be29e89f633b17b166ce6d2fc6198dfa
4
- data.tar.gz: 9e8740901203c73291eaa3987a00216c94d4473f
3
+ metadata.gz: 1a2651a58b8b6c3d5d29079de1515bc01afba62d
4
+ data.tar.gz: c82cee97be2d711914d987c159d00ccdea1e04c5
5
5
  SHA512:
6
- metadata.gz: 2014b58d27b7c2d851a20b68c18e5a046f6bfcfbd11caa6fd4e85a41b3b6221d25794ad17260d51a0155ec733a301e4da59bebf5005b0e57372f06cf89de377e
7
- data.tar.gz: 82e74ba6e5e1fd372125399a96f931b1986bf8b2a313d58fc74cdcda05526878f8d3acc78f2733a1f988a42864cc1b97dc8493715a16c832677a10dd1e3524f0
6
+ metadata.gz: 9530719cd0a0f67c3be8a89e4b0e19f296b1a8e814276000118f51d6a4d0b2e4e4940d255ea3214ccf6caff62134ac79a8bc238b9fb3bc79ba387714d947148f
7
+ data.tar.gz: a24489f1eb8a3efef522962f703795208503ed3461ec96cebc4d9175fa161b532fdd635b73149bd9b55d1d99390e855be3301563c87a460949244bfbdb9b3129
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.14
1
+ 0.3.15
@@ -13,6 +13,7 @@ module Builderator
13
13
  module Owners
14
14
  SELF = 'self'.freeze
15
15
  UBUNTU = '099720109477'.freeze
16
+ AMAZON = 'amazon'.freeze
16
17
  end
17
18
 
18
19
  ## Filter fields defined in http://docs.aws.amazon.com/sdkforruby/api/Aws/EC2/Builderator::Util.ec2.html#describe_images-instance_method
@@ -32,6 +32,16 @@ module Builderator
32
32
  'virtualization-type' => options['virtualization_type'],
33
33
  'architecture' => options['architecture'] }.merge(Hash[*args])).image_id
34
34
  end
35
+
36
+ desc 'windows SEARCH', 'Print the latest AMI ID for a Windows image matching the SEARCH string'
37
+ def windows(search = 'Windows_Server-2012-R2_RTM-English-64Bit-Base*')
38
+ puts Control::AMI.latest(:owner => Builderator::Control::AMI::Owners::AMAZON,
39
+ 'root-device-type' => options['root_device_type'],
40
+ 'virtualization-type' => options['virtualization_type'],
41
+ 'architecture' => options['architecture'],
42
+ 'name' => search).image_id
43
+ end
44
+
35
45
  end
36
46
  end
37
47
  end
@@ -88,6 +88,9 @@ module Builderator
88
88
  Control::Clean.exceptions.each do |e|
89
89
  say_status(*e.status)
90
90
  end
91
+
92
+ ## Mark the Jenkins job as fail if there were errors.
93
+ exit(1)
91
94
  end
92
95
  end
93
96
  end
@@ -13,19 +13,13 @@ module Builderator
13
13
 
14
14
  def filter(resources, filters = {})
15
15
  resources.select do |_, r|
16
- filters.reduce(true) do |memo, (k, v)|
17
- memo && r[:properties].include?(k.to_s) &&
18
- r[:properties][k.to_s] == v
19
- end
16
+ _filter_reduce(r, filters)
20
17
  end
21
18
  end
22
19
 
23
20
  def filter!(resources, filters = {})
24
21
  resources.select! do |_, r|
25
- filters.reduce(true) do |memo, (k, v)|
26
- memo && r[:properties].include?(k.to_s) &&
27
- r[:properties][k.to_s] == v
28
- end
22
+ _filter_reduce(r, filters)
29
23
  end
30
24
 
31
25
  resources
@@ -47,6 +41,19 @@ module Builderator
47
41
  def working_dir(relative = '.')
48
42
  Pathname.pwd.join(relative).expand_path
49
43
  end
44
+
45
+ private
46
+
47
+ def _filter_reduce(resource, filters)
48
+ filters.reduce(true) do |memo, (k, v)|
49
+ ## Allow for negation with a leading `~`
50
+ if v[0] == '~'
51
+ memo && (!resource[:properties].include?(k.to_s) || resource[:properties][k.to_s] != v[1..-1])
52
+ else
53
+ memo && resource[:properties].include?(k.to_s) && resource[:properties][k.to_s] == v
54
+ end
55
+ end
56
+ end
50
57
  end
51
58
  end
52
59
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: builderator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.14
4
+ version: 0.3.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Manero
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-21 00:00:00.000000000 Z
11
+ date: 2015-11-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake