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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3107e46a56b06938100d063863069057d3e41029
4
- data.tar.gz: c3ee1359da52f109a0df1ae5ae10c157495548f6
3
+ metadata.gz: ff5accfec82561d29eafb07b3477a9f739684fd2
4
+ data.tar.gz: ac6c8c3d414ddff108046a84fc5c32e0ac4a10a3
5
5
  SHA512:
6
- metadata.gz: dc7996bbb42485c088b907a5b6d4e4f37a58071eb9a82625890507f80c9fb40ed42e1eadcf9c7f2248e85ed44367f43627df808854e3b4da65de9febdd0dd022
7
- data.tar.gz: 8151b9909f77548a9ed8c338efe27e487edf1dcb23118de4c6644e33fd049d1339caea8d913e8b6b36c89497945de373ce028e146d6888428e5fad1e8b0775a6
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.7)
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.9)
20
- aws-sdk-resources (= 2.2.9)
21
- aws-sdk-core (2.2.9)
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.9)
24
- aws-sdk-core (= 2.2.9)
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.6.0)
60
- chef-config (= 12.6.0)
61
- chef-zero (~> 4.2, >= 4.2.2)
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.3)
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 (~> 2.6)
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
- chef-config (12.6.0)
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.4.0)
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
- coderay (1.1.0)
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.0)
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.3.0)
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 (2.9.2)
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.0)
136
+ nio4r (1.2.1)
136
137
  octokit (3.8.0)
137
138
  sawyer (~> 0.6.0, >= 0.5.3)
138
- ohai (8.8.1)
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.3.0)
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.28.0)
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.49.0)
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.5.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
- ### `release [PROFILE = default]`
17
+ ### `image [PROFILE = default]`
16
18
 
17
- Perform release tasks and execute Packer builds with released artifacts.
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
- *NOTE* Currently, we assume that you're building Ubuntu images, as one of the provisioners is hard-coded to chown the Chef data directories to `ubuntu:ubuntu`
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.8
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)
@@ -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
- <% unless profile.current.chef.node_attrs.nil? -%>
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.8
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-01-20 00:00:00.000000000 Z
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: