builderator 1.0.0.pre.rc.8 → 1.0.0.pre.rc.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +32 -32
- data/README.md +38 -4
- data/VERSION +1 -1
- data/lib/builderator/tasks/vagrant.rb +0 -7
- data/template/Vagrantfile.erb +9 -1
- metadata +2 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ff5accfec82561d29eafb07b3477a9f739684fd2
|
4
|
+
data.tar.gz: ac6c8c3d414ddff108046a84fc5c32e0ac4a10a3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8e50ade752fcfa4ae0d80bbb90eb614d9cb52301f614d76efe02239ce3cece1e1413724039e4bdb4c0d11fdef7aec1bdddc8898fb7232c8f88d6a5ca63ec4153
|
7
|
+
data.tar.gz: 161932a36e9ac67e57fcfc7ccb682bb44cbebd279be4c467ed5002e7f09ab20f7f706a69ed3c25eb80f342e3b8b5623f48bf6675270cb9e7c7d77cf0c3df5ae1
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
builderator (1.0.0.pre.rc.
|
4
|
+
builderator (1.0.0.pre.rc.8)
|
5
5
|
aws-sdk (~> 2.0)
|
6
6
|
berkshelf (~> 3.2)
|
7
7
|
chef (~> 12.0)
|
@@ -16,12 +16,12 @@ GEM
|
|
16
16
|
ast (2.1.0)
|
17
17
|
astrolabe (1.3.1)
|
18
18
|
parser (~> 2.2)
|
19
|
-
aws-sdk (2.2.
|
20
|
-
aws-sdk-resources (= 2.2.
|
21
|
-
aws-sdk-core (2.2.
|
19
|
+
aws-sdk (2.2.16)
|
20
|
+
aws-sdk-resources (= 2.2.16)
|
21
|
+
aws-sdk-core (2.2.16)
|
22
22
|
jmespath (~> 1.0)
|
23
|
-
aws-sdk-resources (2.2.
|
24
|
-
aws-sdk-core (= 2.2.
|
23
|
+
aws-sdk-resources (2.2.16)
|
24
|
+
aws-sdk-core (= 2.2.16)
|
25
25
|
berkshelf (3.3.0)
|
26
26
|
addressable (~> 2.3.4)
|
27
27
|
berkshelf-api-client (~> 1.2)
|
@@ -56,23 +56,22 @@ GEM
|
|
56
56
|
celluloid-io (0.16.2)
|
57
57
|
celluloid (>= 0.16.0)
|
58
58
|
nio4r (>= 1.1.0)
|
59
|
-
chef (12.
|
60
|
-
chef-config (= 12.
|
61
|
-
chef-zero (~> 4.
|
59
|
+
chef (12.7.2)
|
60
|
+
chef-config (= 12.7.2)
|
61
|
+
chef-zero (~> 4.5)
|
62
62
|
diff-lcs (~> 1.2, >= 1.2.4)
|
63
63
|
erubis (~> 2.7)
|
64
64
|
ffi-yajl (~> 2.2)
|
65
65
|
highline (~> 1.6, >= 1.6.9)
|
66
|
-
mixlib-authentication (~> 1.
|
66
|
+
mixlib-authentication (~> 1.4)
|
67
67
|
mixlib-cli (~> 1.4)
|
68
68
|
mixlib-log (~> 1.3)
|
69
69
|
mixlib-shellout (~> 2.0)
|
70
|
-
net-ssh (
|
70
|
+
net-ssh (>= 2.9, < 4.0)
|
71
71
|
net-ssh-multi (~> 1.1)
|
72
72
|
ohai (>= 8.6.0.alpha.1, < 9)
|
73
73
|
plist (~> 3.1.0)
|
74
74
|
proxifier (~> 1.0)
|
75
|
-
pry (~> 0.9)
|
76
75
|
rspec-core (~> 3.4)
|
77
76
|
rspec-expectations (~> 3.4)
|
78
77
|
rspec-mocks (~> 3.4)
|
@@ -80,18 +79,18 @@ GEM
|
|
80
79
|
serverspec (~> 2.7)
|
81
80
|
specinfra (~> 2.10)
|
82
81
|
syslog-logger (~> 1.6)
|
83
|
-
|
82
|
+
uuidtools (~> 2.1.5)
|
83
|
+
chef-config (12.7.2)
|
84
84
|
mixlib-config (~> 2.0)
|
85
85
|
mixlib-shellout (~> 2.0)
|
86
|
-
chef-zero (4.
|
86
|
+
chef-zero (4.5.0)
|
87
87
|
ffi-yajl (~> 2.2)
|
88
88
|
hashie (>= 2.0, < 4.0)
|
89
89
|
mixlib-log (~> 1.3)
|
90
90
|
rack
|
91
91
|
uuidtools (~> 2.1)
|
92
92
|
cleanroom (1.0.0)
|
93
|
-
|
94
|
-
dep-selector-libgecode (1.0.2)
|
93
|
+
dep-selector-libgecode (1.1.0)
|
95
94
|
dep_selector (1.0.3)
|
96
95
|
dep-selector-libgecode (~> 1.0)
|
97
96
|
ffi (~> 1.9)
|
@@ -109,14 +108,16 @@ GEM
|
|
109
108
|
hitimes (1.2.3)
|
110
109
|
httpclient (2.6.0.1)
|
111
110
|
ignorefile (1.1.0)
|
112
|
-
ipaddress (0.8.
|
111
|
+
ipaddress (0.8.2)
|
113
112
|
jmespath (1.1.3)
|
114
113
|
json (1.8.3)
|
115
114
|
libyajl2 (1.2.0)
|
116
|
-
method_source (0.8.2)
|
117
115
|
minitar (0.5.4)
|
118
|
-
mixlib-authentication (1.
|
116
|
+
mixlib-authentication (1.4.0)
|
119
117
|
mixlib-log
|
118
|
+
rspec-core (~> 3.2)
|
119
|
+
rspec-expectations (~> 3.2)
|
120
|
+
rspec-mocks (~> 3.2)
|
120
121
|
mixlib-cli (1.5.0)
|
121
122
|
mixlib-config (2.2.1)
|
122
123
|
mixlib-log (1.6.0)
|
@@ -125,17 +126,17 @@ GEM
|
|
125
126
|
multipart-post (2.0.0)
|
126
127
|
net-scp (1.2.1)
|
127
128
|
net-ssh (>= 2.6.5)
|
128
|
-
net-ssh (
|
129
|
+
net-ssh (3.0.2)
|
129
130
|
net-ssh-gateway (1.2.0)
|
130
131
|
net-ssh (>= 2.6.5)
|
131
132
|
net-ssh-multi (1.2.1)
|
132
133
|
net-ssh (>= 2.6.5)
|
133
134
|
net-ssh-gateway (>= 1.2.0)
|
134
135
|
net-telnet (0.1.1)
|
135
|
-
nio4r (1.2.
|
136
|
+
nio4r (1.2.1)
|
136
137
|
octokit (3.8.0)
|
137
138
|
sawyer (~> 0.6.0, >= 0.5.3)
|
138
|
-
ohai (8.
|
139
|
+
ohai (8.10.0)
|
139
140
|
chef-config (>= 12.5.0.alpha.1, < 13)
|
140
141
|
ffi (~> 1.9)
|
141
142
|
ffi-yajl (~> 2.2)
|
@@ -152,15 +153,11 @@ GEM
|
|
152
153
|
plist (3.1.0)
|
153
154
|
powerpack (0.1.1)
|
154
155
|
proxifier (1.0.3)
|
155
|
-
pry (0.10.3)
|
156
|
-
coderay (~> 1.1.0)
|
157
|
-
method_source (~> 0.8.1)
|
158
|
-
slop (~> 3.4)
|
159
156
|
rack (1.6.4)
|
160
157
|
rainbow (2.0.0)
|
161
158
|
rake (10.4.2)
|
162
159
|
retryable (2.0.3)
|
163
|
-
ridley (4.
|
160
|
+
ridley (4.4.2)
|
164
161
|
addressable
|
165
162
|
buff-config (~> 1.0)
|
166
163
|
buff-extensions (~> 1.0)
|
@@ -168,6 +165,7 @@ GEM
|
|
168
165
|
buff-shell_out (~> 0.1)
|
169
166
|
celluloid (~> 0.16.0)
|
170
167
|
celluloid-io (~> 0.16.1)
|
168
|
+
chef-config
|
171
169
|
erubis
|
172
170
|
faraday (~> 0.9.0)
|
173
171
|
hashie (>= 2.0.2, < 4.0.0)
|
@@ -176,7 +174,7 @@ GEM
|
|
176
174
|
mixlib-authentication (>= 1.3.0)
|
177
175
|
retryable (~> 2.0)
|
178
176
|
semverse (~> 1.1)
|
179
|
-
varia_model (~> 0.4)
|
177
|
+
varia_model (~> 0.4.0)
|
180
178
|
rspec (3.4.0)
|
181
179
|
rspec-core (~> 3.4.0)
|
182
180
|
rspec-expectations (~> 3.4.0)
|
@@ -208,17 +206,16 @@ GEM
|
|
208
206
|
addressable (~> 2.3.5)
|
209
207
|
faraday (~> 0.8, < 0.10)
|
210
208
|
semverse (1.2.1)
|
211
|
-
serverspec (2.
|
209
|
+
serverspec (2.29.2)
|
212
210
|
multi_json
|
213
211
|
rspec (~> 3.0)
|
214
212
|
rspec-its
|
215
213
|
specinfra (~> 2.48)
|
216
214
|
sfl (2.2)
|
217
|
-
slop (3.6.0)
|
218
215
|
solve (1.2.1)
|
219
216
|
dep_selector (~> 1.0)
|
220
217
|
semverse (~> 1.1)
|
221
|
-
specinfra (2.
|
218
|
+
specinfra (2.51.0)
|
222
219
|
net-scp
|
223
220
|
net-ssh (>= 2.7, < 3.1)
|
224
221
|
net-telnet
|
@@ -233,7 +230,7 @@ GEM
|
|
233
230
|
hitimes
|
234
231
|
tins (1.6.0)
|
235
232
|
uuidtools (2.1.5)
|
236
|
-
varia_model (0.
|
233
|
+
varia_model (0.4.1)
|
237
234
|
buff-extensions (~> 1.0)
|
238
235
|
hashie (>= 2.0.2, < 4.0.0)
|
239
236
|
wmi-lite (1.0.0)
|
@@ -247,3 +244,6 @@ DEPENDENCIES
|
|
247
244
|
rspec (~> 3.0)
|
248
245
|
rubocop (~> 0.35)
|
249
246
|
thor-scmversion (= 1.7.0)
|
247
|
+
|
248
|
+
BUNDLED WITH
|
249
|
+
1.10.5
|
data/README.md
CHANGED
@@ -4,6 +4,8 @@ Orchestration and configuration of the code development life-cycle.
|
|
4
4
|
|
5
5
|
## Commands
|
6
6
|
|
7
|
+
Run `build help` for a complete enumeration of Builderator's commands.
|
8
|
+
|
7
9
|
### `local [PROFILE = default]`
|
8
10
|
|
9
11
|
Provision a local VM using Vagrant and, by default, VirtualBox. Uses Berkshelf to fetch cookbooks, and Chef to provision the VM.
|
@@ -12,9 +14,9 @@ Provision a local VM using Vagrant and, by default, VirtualBox. Uses Berkshelf t
|
|
12
14
|
|
13
15
|
Provision an EC2 VM using Vagrant. Same workflow as `local` using the `vagrant-aws` plugin.
|
14
16
|
|
15
|
-
### `
|
17
|
+
### `image [PROFILE = default]`
|
16
18
|
|
17
|
-
|
19
|
+
Use [Packer](packer.io) to build an image(s) for the specified profile.
|
18
20
|
|
19
21
|
## Configuration
|
20
22
|
|
@@ -35,9 +37,17 @@ Builderator integrates with other tools, including [Berkshelf](http://berkshelf.
|
|
35
37
|
|
36
38
|
### Packer
|
37
39
|
|
38
|
-
The Packer integration generates Packer JSON and passes it to STDIN of `packer build -`.
|
40
|
+
The Packer integration generates a Packer JSON configuration and passes it to STDIN of `packer build -`.
|
41
|
+
|
42
|
+
### Vagrant
|
43
|
+
|
44
|
+
Builderator shells out to Vagrant to provision VMs on demand. Run
|
45
|
+
|
46
|
+
```sh
|
47
|
+
build vagrant plugins
|
48
|
+
```
|
39
49
|
|
40
|
-
|
50
|
+
to install required plugins for Builderator.
|
41
51
|
|
42
52
|
## Versioning
|
43
53
|
|
@@ -82,3 +92,27 @@ end
|
|
82
92
|
Valid actions for resources include `:ignore`, `:create` (update only if missing), `:sync` (create or update with prompt), and `:rm`. `:create` and `:sync` actions require a valid template source.
|
83
93
|
|
84
94
|
By default, the `generator` subcommand includes a `default` project which removes Vagrant, Berkshelf, and Packer configurations.
|
95
|
+
|
96
|
+
## Utilities
|
97
|
+
|
98
|
+
Builderator includes two utilities to search for and clean up EC2 resources.
|
99
|
+
|
100
|
+
### `build-clean`
|
101
|
+
|
102
|
+
The `build-clean` command prunes old EC2 resources in a region. The cleaner utility has [configurable](docs/configuration.md#namespace-cleaner) limits. For complete usage, run `build-clean help`.
|
103
|
+
|
104
|
+
### `build-data`
|
105
|
+
|
106
|
+
The `build-data` utility is a command line interface for Builderator's internal resource lookup API. It has a limited query interface that allows filters to be constructed from a trailing list of argument:
|
107
|
+
|
108
|
+
```sh
|
109
|
+
build-data image architecture x86_64 virtualization-type hvm ...
|
110
|
+
```
|
111
|
+
|
112
|
+
Pre-defined filters can also be applied with the `-f FILTER` flag. These currently include
|
113
|
+
|
114
|
+
* `ubuntu-14.04-daily`
|
115
|
+
* `windows-server2012-r2`
|
116
|
+
* `windows-server2012-r2-core`
|
117
|
+
|
118
|
+
Run `build-data help` for a complete listing of commands and arguments.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0.0-rc.
|
1
|
+
1.0.0-rc.9
|
@@ -98,13 +98,6 @@ module Builderator
|
|
98
98
|
end
|
99
99
|
end
|
100
100
|
|
101
|
-
desc 'rebuild ARGS', 'Destroy and recreate Vagrant VM(s)'
|
102
|
-
method_option :force, :aliases => :f, :type => :boolean, :default => true
|
103
|
-
def rebuild(profile = :default, *args)
|
104
|
-
destroy(profile, *args)
|
105
|
-
up(profile, *args)
|
106
|
-
end
|
107
|
-
|
108
101
|
desc 'clean', 'Destroy VMs and clean up local files'
|
109
102
|
method_option :force, :aliases => :f, :type => :boolean, :default => true
|
110
103
|
def clean(profile = :default)
|
data/template/Vagrantfile.erb
CHANGED
@@ -10,7 +10,9 @@ Vagrant.configure('2') do |config|
|
|
10
10
|
local.cpus = <%= profile.current.vagrant.local.cpus %>
|
11
11
|
|
12
12
|
override.vm.box = '<%= profile.current.vagrant.local.box %>'
|
13
|
+
<% if profile.current.vagrant.local.has?(:box_url) -%>
|
13
14
|
override.vm.box_url = '<%= profile.current.vagrant.local.box_url %>'
|
15
|
+
<% end -%>
|
14
16
|
end
|
15
17
|
|
16
18
|
## EC2 Provider
|
@@ -68,8 +70,14 @@ Vagrant.configure('2') do |config|
|
|
68
70
|
<% unless profile.current.chef.environment.nil? -%>
|
69
71
|
chef.environment = '<%= profile.current.chef.environment %>'
|
70
72
|
<% end -%>
|
71
|
-
|
73
|
+
|
74
|
+
<% if profile.current.chef.node_attrs.nil? -%>
|
75
|
+
chef.json = {}
|
76
|
+
<% else -%>
|
72
77
|
chef.json = <%= profile.current.chef.node_attrs %>
|
73
78
|
<% end -%>
|
79
|
+
|
80
|
+
## Tell Chef that this is a Vagrant build
|
81
|
+
chef.json[:vagrant] = true
|
74
82
|
end
|
75
83
|
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: 1.0.0.pre.rc.
|
4
|
+
version: 1.0.0.pre.rc.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Manero
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-
|
11
|
+
date: 2016-02-25 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -271,4 +271,3 @@ test_files:
|
|
271
271
|
- spec/resource/Buildfile
|
272
272
|
- spec/spec_helper.rb
|
273
273
|
- spec/version_spec.rb
|
274
|
-
has_rdoc:
|