builderator 0.3.14 → 0.3.15
Sign up to get free protection for your applications and to get access to all the features.
- 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
|