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 +4 -4
- data/VERSION +1 -1
- data/lib/builderator/control/ami.rb +1 -0
- data/lib/builderator/tasks/ami.rb +10 -0
- data/lib/builderator/tasks/clean.rb +3 -0
- data/lib/builderator/util.rb +15 -8
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1a2651a58b8b6c3d5d29079de1515bc01afba62d
|
4
|
+
data.tar.gz: c82cee97be2d711914d987c159d00ccdea1e04c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9530719cd0a0f67c3be8a89e4b0e19f296b1a8e814276000118f51d6a4d0b2e4e4940d255ea3214ccf6caff62134ac79a8bc238b9fb3bc79ba387714d947148f
|
7
|
+
data.tar.gz: a24489f1eb8a3efef522962f703795208503ed3461ec96cebc4d9175fa161b532fdd635b73149bd9b55d1d99390e855be3301563c87a460949244bfbdb9b3129
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
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
|
data/lib/builderator/util.rb
CHANGED
@@ -13,19 +13,13 @@ module Builderator
|
|
13
13
|
|
14
14
|
def filter(resources, filters = {})
|
15
15
|
resources.select do |_, r|
|
16
|
-
|
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
|
-
|
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.
|
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-
|
11
|
+
date: 2015-11-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|