vendorificator 0.0.1 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +194 -3
- data/features/chef_cookbook.feature +23 -10
- data/features/fixtures/vcr_cassettes/vendorificator.yml +681 -0
- data/features/git.feature +1 -1
- data/features/needed.feature +2 -2
- data/features/status.feature +3 -3
- data/features/tarball.feature +5 -5
- data/features/tarball_edit.feature +1 -1
- data/features/vendor.feature +1 -1
- data/lib/vendorificator/cli.rb +1 -1
- data/lib/vendorificator/config.rb +0 -2
- data/lib/vendorificator/hooks/chef_cookbook.rb +19 -6
- data/lib/vendorificator/vendor.rb +4 -2
- data/lib/vendorificator/version.rb +1 -1
- data/lib/vendorificator.rb +1 -0
- metadata +4 -4
data/README.md
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
# Vendorificator
|
2
2
|
|
3
|
-
> **THIS
|
4
|
-
about that - I'm working on it. Expect first usable version in January 2013.
|
3
|
+
> **THIS PROGRAM IS STILL IN BETA**, use on your own risk!
|
5
4
|
|
6
5
|
## About
|
7
6
|
|
@@ -34,7 +33,199 @@ Or install it yourself as:
|
|
34
33
|
|
35
34
|
## Usage
|
36
35
|
|
37
|
-
|
36
|
+
Vendorificator is a command-line tool. The command is called `vendor`
|
37
|
+
(`bundle exec vendor` if you use Bundler). It accepts multiple
|
38
|
+
subcommands.
|
39
|
+
|
40
|
+
Run `vendor` to see list of subcommands. Run `vendor help _command_`
|
41
|
+
to get detailed description of a command.
|
42
|
+
|
43
|
+
### Commands
|
44
|
+
|
45
|
+
Most important commands are listed here; use `vendor help` for more
|
46
|
+
detail.
|
47
|
+
|
48
|
+
* `vendor sync` will update all vendor modules that need updating
|
49
|
+
* `vendor status` will list all the modules and their status
|
50
|
+
* `vendor pull` will pull all vendor branches, tags, and notes from a
|
51
|
+
Git remote
|
52
|
+
* `vendor diff` will show the differences between vendor module's
|
53
|
+
pristine branch and curent work tree
|
54
|
+
* `vendor log` will show a `git log` of all changes made to a particular
|
55
|
+
vendor module's files that are not in module's pristine branch
|
56
|
+
|
57
|
+
## Configuration
|
58
|
+
|
59
|
+
Vendorificator reads its configuration from a Ruby file named
|
60
|
+
`Vendorfile` (or `config/vendor.rb`). If the file does not exist in
|
61
|
+
the current directory, it looks for it in parent directories until it
|
62
|
+
gets to the git repository's root. All files Vendorificator creates
|
63
|
+
are rooted in directory containing the `Vendorfile` (or the directory
|
64
|
+
containing `config` directory with `vendor.rb` file in it).
|
65
|
+
|
66
|
+
Vendorfile is a Ruby file containing configuration settings and
|
67
|
+
description of upstream vendor modules. It may also contain any custom
|
68
|
+
Ruby code if needed.
|
69
|
+
|
70
|
+
### Settings
|
71
|
+
|
72
|
+
* `basedir "subpath"` -- directory below work root where
|
73
|
+
Vendorificator will download modules. Defaults to `"vendor"`.
|
74
|
+
* `branch_prefix "prefix"` -- prefix for name of Git
|
75
|
+
branches. Defaults to `"vendor"`, which means all branches created
|
76
|
+
by Vendorificator start with `"vendor/"`.
|
77
|
+
* `remotes ['remote1', 'remote2', ...]` -- list of Git remotes that
|
78
|
+
`vendor pull` will use as default. Defaults to `['origin']`.
|
79
|
+
* `chef_cookbook_ignore_dependencies ['cookbook1', 'cookbook2', ...]`
|
80
|
+
-- default value for `:ignore_dependencies` argument of
|
81
|
+
`chef_cookbook` modules.
|
82
|
+
|
83
|
+
### Modules
|
84
|
+
|
85
|
+
A **vendor module** is a single piece of upstream code managed by
|
86
|
+
Vendorificator. It is a basic building block. A vendor module is
|
87
|
+
declared by calling one of a couple functions that define them.
|
88
|
+
|
89
|
+
#### vendor
|
90
|
+
|
91
|
+
Vendor is most general of those. You call it like this:
|
92
|
+
|
93
|
+
```ruby
|
94
|
+
vendor 'name', :option => 'value' do
|
95
|
+
# here in the block you code what needs to be done
|
96
|
+
# to get ("conjure") the module. You're already in
|
97
|
+
# the right directory, branch, etc, and what you add to the
|
98
|
+
# current directory will be committed and tagged.
|
99
|
+
end
|
100
|
+
```
|
101
|
+
|
102
|
+
It takes following options:
|
103
|
+
|
104
|
+
* `:version` - the version of module. If the module's contents should
|
105
|
+
change, increase the version, so that Vendorificator knows it needs
|
106
|
+
to re-create the module.
|
107
|
+
* `:category` - module's *category* is subdirectory of the basedir
|
108
|
+
where module's directory will be created. For example, `vendor
|
109
|
+
"foo"` will go to `vendor/foo` by default, but `vendor "foo",
|
110
|
+
:category => :widgets` will go to `vendor/widgets/foo`. It is also
|
111
|
+
added in a similar way to module's branch name, tag names, etc.
|
112
|
+
* `:path` - lets you specify subdirectory in which the module will be
|
113
|
+
downloaded
|
114
|
+
|
115
|
+
All other upstream modules take these options, and can be given a
|
116
|
+
block to postprocess their content (e.g. if a tarball includes a
|
117
|
+
`.git` file/directory that confuses Git, you can remove it in a
|
118
|
+
block).
|
119
|
+
|
120
|
+
Example:
|
121
|
+
|
122
|
+
```ruby
|
123
|
+
vendor 'generated', :version => '0.23' do |mod|
|
124
|
+
File.open('README') { |f| f.puts "Hello, World!" }
|
125
|
+
File.open('VERSION') { |f| f.puts mod.version }
|
126
|
+
end
|
127
|
+
```
|
128
|
+
|
129
|
+
#### archive
|
130
|
+
|
131
|
+
Archive takes a tar.gz, tar.bz2, or zip file, downloads it, and
|
132
|
+
unpacks it as contents of the module. It takes same options as
|
133
|
+
`vendor`, plus:
|
134
|
+
|
135
|
+
* `:url` -- address from which to download the archive. If not given,
|
136
|
+
module's name will be used as URL, and its basename as module's
|
137
|
+
name (e.g. `archive
|
138
|
+
"http://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz"` will be named
|
139
|
+
`"hello-2.8"` and downloaded from the URL).
|
140
|
+
* `:filename` -- a filename to download. Useful if URL doesn't
|
141
|
+
specify this nwell.
|
142
|
+
* `:type` -- `:targz`, `:tarbz2`, or `:zip`
|
143
|
+
* `:unpack` -- a command that will be used to unpack the file
|
144
|
+
* `:basename` -- defaults to basename of `filename`, will be used as
|
145
|
+
directory name
|
146
|
+
* `:no_strip_root` -- by default, if archive consists of a single
|
147
|
+
directory, Vendorificator will strip it. Setting this to true
|
148
|
+
disables this behaviour.
|
149
|
+
* `:checksum` -- if set to SHA256 checksum of the file, it will be
|
150
|
+
checked on download.
|
151
|
+
|
152
|
+
Archive's `:version` defaults to file name.
|
153
|
+
|
154
|
+
Example:
|
155
|
+
|
156
|
+
```ruby
|
157
|
+
archive :hello,
|
158
|
+
:url => 'http://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz',
|
159
|
+
:version => '2.8',
|
160
|
+
:checksum => 'e6b77f81f7cf7daefad4a9f5b65de6cae9c3f13b8cfbaea8cb53bb5ea5460d73'
|
161
|
+
```
|
162
|
+
|
163
|
+
#### git
|
164
|
+
|
165
|
+
Downloads snapshot of a Git repository. Takes the same options as
|
166
|
+
`vendor`, plus:
|
167
|
+
|
168
|
+
* `:repository` -- address of the repository. Defaults to name (and
|
169
|
+
sets name to its basename then), just like `:url` for `archive`
|
170
|
+
(e.g. `git "git://github.com/github/testrepo.git"` will be cloned
|
171
|
+
from that repository, and named `testrepo`).
|
172
|
+
* `:branch`, `:revision` -- what to check out when repository is
|
173
|
+
cloned.
|
174
|
+
|
175
|
+
Git module's `:version` defaults to the conjured revision.
|
176
|
+
|
177
|
+
Example:
|
178
|
+
|
179
|
+
```ruby
|
180
|
+
git 'git://github.com/mpasternacki/nagios.git',
|
181
|
+
:branch => 'COOK-1997',
|
182
|
+
:category => :cookbooks,
|
183
|
+
:version => '0.20130124.2'
|
184
|
+
```
|
185
|
+
|
186
|
+
#### chef_cookbook
|
187
|
+
|
188
|
+
Downloads an Opscode Chef cookbook from http://community.opscode.com/
|
189
|
+
website (same thing that `knife cookbook site install` does). It
|
190
|
+
resolves dependencies -- all needed modules will be downloaded by
|
191
|
+
default. Its category defaults to `:cookbooks`. It may take the same
|
192
|
+
arguments as `archive` (but the name and possibly version is almost
|
193
|
+
always enough), plus:
|
194
|
+
|
195
|
+
* `:ignore_dependencies` -- if true, ignore dependencies
|
196
|
+
completely. If an array, don't download dependencies that are in
|
197
|
+
the array. Default for that is `chef_cookbook_ignore_dependencies`
|
198
|
+
setting.
|
199
|
+
|
200
|
+
Examples:
|
201
|
+
|
202
|
+
```ruby
|
203
|
+
chef_cookbook 'apt'
|
204
|
+
chef_cookbook 'memcached'
|
205
|
+
chef_cookbook 'chef-server', :ignore_dependences => true
|
206
|
+
```
|
207
|
+
|
208
|
+
```ruby
|
209
|
+
chef_cookbook_ignore_dependencies ['runit']
|
210
|
+
chef_cookbook 'memcached'
|
211
|
+
```
|
212
|
+
|
213
|
+
```ruby
|
214
|
+
chef_cookbook 'memcached', ignore_dependencies => ['runit']
|
215
|
+
```
|
216
|
+
|
217
|
+
If you get Chef cookbooks from Git or anywhere else than Opscode's
|
218
|
+
community website, you can still use dependency resolution by mixing
|
219
|
+
in the hook class:
|
220
|
+
|
221
|
+
```ruby
|
222
|
+
class << git 'git://github.com/user/cookbook.git', :category => :cookbooks
|
223
|
+
include Vendorificator::Hooks::ChefCookbookDependencies
|
224
|
+
end
|
225
|
+
```
|
226
|
+
|
227
|
+
This is a bit convoluted, but there will soon be an argument to do
|
228
|
+
that in a nicer way.
|
38
229
|
|
39
230
|
## Contributing
|
40
231
|
|
@@ -5,11 +5,9 @@ Scenario: A single cookbook, without dependencies
|
|
5
5
|
Scenario: Version & checksum
|
6
6
|
Given a repository with following Vendorfile:
|
7
7
|
"""ruby
|
8
|
-
require 'vendorificator/vendor/chef_cookbook'
|
9
|
-
|
10
8
|
chef_cookbook 'apt'
|
11
9
|
"""
|
12
|
-
When I run "vendor"
|
10
|
+
When I run "vendor sync"
|
13
11
|
Then following has been conjured:
|
14
12
|
| Name | cookbooks/apt |
|
15
13
|
| With file | metadata.rb |
|
@@ -17,11 +15,9 @@ Scenario: Version & checksum
|
|
17
15
|
Scenario: Dependency hook
|
18
16
|
Given a repository with following Vendorfile:
|
19
17
|
"""ruby
|
20
|
-
require 'vendorificator/vendor/chef_cookbook'
|
21
|
-
|
22
18
|
chef_cookbook 'memcached'
|
23
19
|
"""
|
24
|
-
When I run "vendor"
|
20
|
+
When I run "vendor sync"
|
25
21
|
Then following has been conjured:
|
26
22
|
| Name | cookbooks/memcached | cookbooks/runit |
|
27
23
|
| With file | metadata.rb | metadata.rb |
|
@@ -29,16 +25,33 @@ Scenario: Dependency hook
|
|
29
25
|
Scenario: Ignored dependency
|
30
26
|
Given a repository with following Vendorfile:
|
31
27
|
"""ruby
|
32
|
-
require 'vendorificator/vendor/chef_cookbook'
|
33
|
-
|
34
28
|
chef_cookbook_ignore_dependencies ['runit']
|
35
|
-
|
36
29
|
chef_cookbook 'memcached'
|
37
30
|
"""
|
38
|
-
When I run "vendor"
|
31
|
+
When I run "vendor sync"
|
39
32
|
Then following has been conjured:
|
40
33
|
| Name | cookbooks/memcached |
|
41
34
|
| With file | metadata.rb |
|
42
35
|
And following has not been conjured:
|
43
36
|
| Name | cookbooks/runit |
|
44
37
|
| With file | metadata.rb |
|
38
|
+
|
39
|
+
Scenario: Ignored all dependencies
|
40
|
+
Given a repository with following Vendorfile:
|
41
|
+
"""ruby
|
42
|
+
chef_cookbook_ignore_dependencies true
|
43
|
+
chef_cookbook 'chef-server'
|
44
|
+
"""
|
45
|
+
When I run "vendor sync"
|
46
|
+
Then following has been conjured:
|
47
|
+
| Name | cookbooks/chef-server |
|
48
|
+
| With file | metadata.rb |
|
49
|
+
And following has not been conjured:
|
50
|
+
| Name | cookbooks/runit |
|
51
|
+
| With file | metadata.rb |
|
52
|
+
And following has not been conjured:
|
53
|
+
| Name | cookbooks/daemontools |
|
54
|
+
| With file | metadata.rb |
|
55
|
+
And following has not been conjured:
|
56
|
+
| Name | cookbooks/apache2 |
|
57
|
+
| With file | metadata.rb |
|
@@ -2372,4 +2372,685 @@ http_interactions:
|
|
2372
2372
|
string: ! '{"error_messages":["Resource does not exist"],"error_code":"NOT_FOUND"}'
|
2373
2373
|
http_version: '1.1'
|
2374
2374
|
recorded_at: Fri, 01 Feb 2013 18:47:12 GMT
|
2375
|
+
- request:
|
2376
|
+
method: get
|
2377
|
+
uri: http://cookbooks.opscode.com/api/v1/cookbooks/chef-server
|
2378
|
+
body:
|
2379
|
+
encoding: US-ASCII
|
2380
|
+
string: ''
|
2381
|
+
headers:
|
2382
|
+
accept:
|
2383
|
+
- ! '*/*'
|
2384
|
+
user-agent:
|
2385
|
+
- Ruby
|
2386
|
+
response:
|
2387
|
+
status:
|
2388
|
+
code: 200
|
2389
|
+
message: OK
|
2390
|
+
headers:
|
2391
|
+
server:
|
2392
|
+
- nginx/1.0.5
|
2393
|
+
date:
|
2394
|
+
- Sat, 02 Feb 2013 18:10:19 GMT
|
2395
|
+
content-type:
|
2396
|
+
- application/json; charset=utf-8
|
2397
|
+
connection:
|
2398
|
+
- keep-alive
|
2399
|
+
status:
|
2400
|
+
- 200 OK
|
2401
|
+
x-runtime:
|
2402
|
+
- '120'
|
2403
|
+
cache-control:
|
2404
|
+
- private, max-age=0, must-revalidate
|
2405
|
+
set-cookie:
|
2406
|
+
- logged-in-username=; domain=.opscode.com; path=/
|
2407
|
+
- _sandbox_session=eyJzZXNzaW9uX2lkIjoiNTZjNDY4ZWYwMzkyNzY3NDdjYWEzZGE3ODg2MzUxYjAiLCJsb2NhdGlvbiI6eyJhY3Rpb24iOiJzaG93IiwiaWQiOiJjaGVmLXNlcnZlciIsImNvbnRyb2xsZXIiOiJhcGkvdjEvY29va2Jvb2tzIn19--f8b9737a8b6006284bd4828f470097c4bb804cbd;
|
2408
|
+
domain=.opscode.com; path=/; HttpOnly
|
2409
|
+
content-length:
|
2410
|
+
- '758'
|
2411
|
+
etag:
|
2412
|
+
- ! '"6ddf0a9e2de4ae6e63f2948aeb98b5f2"'
|
2413
|
+
body:
|
2414
|
+
encoding: US-ASCII
|
2415
|
+
string: ! '{"maintainer":"opscode","updated_at":"2012-11-26T01:02:01Z","category":"Utilities","external_url":"github.com/opscode-cookbooks/chef-server","latest_version":"http://cookbooks.opscode.com/api/v1/cookbooks/chef-server/versions/1_1_0","created_at":"2011-05-03T13:54:53Z","average_rating":null,"name":"chef-server","versions":["http://cookbooks.opscode.com/api/v1/cookbooks/chef-server/versions/1_1_0","http://cookbooks.opscode.com/api/v1/cookbooks/chef-server/versions/1_0_0","http://cookbooks.opscode.com/api/v1/cookbooks/chef-server/versions/0_99_12","http://cookbooks.opscode.com/api/v1/cookbooks/chef-server/versions/0_99_11","http://cookbooks.opscode.com/api/v1/cookbooks/chef-server/versions/0_99_10"],"description":"Installs
|
2416
|
+
and configures Chef Server"}'
|
2417
|
+
http_version: '1.1'
|
2418
|
+
recorded_at: Sat, 02 Feb 2013 18:10:20 GMT
|
2419
|
+
- request:
|
2420
|
+
method: get
|
2421
|
+
uri: http://cookbooks.opscode.com/api/v1/cookbooks/chef-server/versions/1_1_0
|
2422
|
+
body:
|
2423
|
+
encoding: US-ASCII
|
2424
|
+
string: ''
|
2425
|
+
headers:
|
2426
|
+
accept:
|
2427
|
+
- ! '*/*'
|
2428
|
+
user-agent:
|
2429
|
+
- Ruby
|
2430
|
+
response:
|
2431
|
+
status:
|
2432
|
+
code: 200
|
2433
|
+
message: OK
|
2434
|
+
headers:
|
2435
|
+
server:
|
2436
|
+
- nginx/1.0.5
|
2437
|
+
date:
|
2438
|
+
- Sat, 02 Feb 2013 18:10:19 GMT
|
2439
|
+
content-type:
|
2440
|
+
- application/json; charset=utf-8
|
2441
|
+
connection:
|
2442
|
+
- keep-alive
|
2443
|
+
status:
|
2444
|
+
- 200 OK
|
2445
|
+
etag:
|
2446
|
+
- ! '"3f5257f87da094ff8a4a4a6d2ed82a07"'
|
2447
|
+
set-cookie:
|
2448
|
+
- logged-in-username=; domain=.opscode.com; path=/
|
2449
|
+
- _sandbox_session=eyJzZXNzaW9uX2lkIjoiZTVhMTQwNTAzMjA5YWMyNDMxZDllOTJiMTA0MzY1NmEiLCJsb2NhdGlvbiI6eyJjb29rYm9va19pZCI6ImNoZWYtc2VydmVyIiwiY29udHJvbGxlciI6ImFwaS92MS9jb29rYm9va192ZXJzaW9ucyIsImlkIjoiMV8xXzAiLCJhY3Rpb24iOiJzaG93In19--94011b94ebf69c3bf33559b400e4b8316464c187;
|
2450
|
+
domain=.opscode.com; path=/; HttpOnly
|
2451
|
+
cache-control:
|
2452
|
+
- private, max-age=0, must-revalidate
|
2453
|
+
content-length:
|
2454
|
+
- '362'
|
2455
|
+
x-runtime:
|
2456
|
+
- '131'
|
2457
|
+
body:
|
2458
|
+
encoding: US-ASCII
|
2459
|
+
string: ! '{"tarball_file_size":24907,"version":"1.1.0","file":"http://s3.amazonaws.com/community-files.opscode.com/cookbook_versions/tarballs/2451/original/chef-server.tgz?1353891710","created_at":"2012-11-26T01:01:53Z","cookbook":"http://cookbooks.opscode.com/api/v1/cookbooks/chef-server","license":"Apache
|
2460
|
+
2.0","average_rating":null,"updated_at":"2012-11-26T01:01:53Z"}'
|
2461
|
+
http_version: '1.1'
|
2462
|
+
recorded_at: Sat, 02 Feb 2013 18:10:20 GMT
|
2463
|
+
- request:
|
2464
|
+
method: get
|
2465
|
+
uri: http://s3.amazonaws.com/community-files.opscode.com/cookbook_versions/tarballs/2451/original/chef-server.tgz?1353891710
|
2466
|
+
body:
|
2467
|
+
encoding: US-ASCII
|
2468
|
+
string: ''
|
2469
|
+
headers:
|
2470
|
+
accept:
|
2471
|
+
- ! '*/*'
|
2472
|
+
user-agent:
|
2473
|
+
- Ruby
|
2474
|
+
response:
|
2475
|
+
status:
|
2476
|
+
code: 200
|
2477
|
+
message: OK
|
2478
|
+
headers:
|
2479
|
+
x-amz-id-2:
|
2480
|
+
- 8EyI7PGag1vh8CtWeHpxSMNMYua3ZOTXfblA27zkczQg6QNiAU1O1cWBbSZT1NBD
|
2481
|
+
x-amz-request-id:
|
2482
|
+
- 11511F2E851F7F7E
|
2483
|
+
date:
|
2484
|
+
- Sat, 02 Feb 2013 18:10:23 GMT
|
2485
|
+
last-modified:
|
2486
|
+
- Mon, 26 Nov 2012 01:02:06 GMT
|
2487
|
+
etag:
|
2488
|
+
- ! '"f5f46683f0fb341eaea7fee9bf2f7f57"'
|
2489
|
+
accept-ranges:
|
2490
|
+
- bytes
|
2491
|
+
content-type:
|
2492
|
+
- application/octet-stream
|
2493
|
+
content-length:
|
2494
|
+
- '24907'
|
2495
|
+
server:
|
2496
|
+
- AmazonS3
|
2497
|
+
body:
|
2498
|
+
encoding: ASCII-8BIT
|
2499
|
+
string: !binary |-
|
2500
|
+
H4sIAH6/slAAA+19+0PbRrbw/qy/YtZJF2htY94NbXqXAmnZTSALZNt+Sa4j
|
2501
|
+
2zKoyJIryYDb5P7t33nNaCTL2CaEJK117zZYmseZM2fOa86ZaZ973VrixZde
|
2502
|
+
vPy3D/Q0Go2tjQ1F/27yv43Vdf5XHrWy2thY31jb2tjaVI2V9c1G429q40MB
|
2503
|
+
ZD+DJHVjAOXX1O+1vLjnhuXloFi3e0M7Mg7z72fytK35r5/5qX8WRrF3t30A
|
2504
|
+
PjbX12+Y/7X1wvxvbmxu/E017haM8ucvPv/11iDsBJ5Tb7tACk79wk/h39Bp
|
2505
|
+
+aHzsWGbPx/+sde/m6ax3xqkXnK3omB2/r+5tbk55//38djzv/vjzuEP+0+P
|
2506
|
+
fqj3OnfZxwT+vwLsvjj/6yvrc/5/H8+DB+pypb5Sb2w7zpfq5e7R0b9rK5tr
|
2507
|
+
W69VTe35sddOo3io2rHnpn4UKj9UFsWo5DwaBB3V8hSUHMSJf+nZrXyNrVjl
|
2508
|
+
t9UzH9QL1Y2iTjsGZaOtuv71oJ+o0PM6Xsequ76GdXehrjrhvnaj6KIF/4M2
|
2509
|
+
ksQPz9R+HLjwD4D0zEvdjpu6as/re2EnydrZ2qSRDBJP9QM37UZxr9l1e34w
|
2510
|
+
LA6lLc07DqOkkUPJ140VbMftdJTbc38HTAR+OLjOvn+9qfsByan6bnoOLYaJ
|
2511
|
+
n6RemAbDDCJQdrCkd913ww702woGXt8PAtWJvCRcSNW5e+mpjtd1B0GqLl34
|
2512
|
+
DPiKVRh1PEdBo4MwZRgb9UeP6iurFpSwegjjUa/vtlPlQqvpuacufe8qw8mj
|
2513
|
+
zUdY6A2Puxm6Pe+NAljMGzfw3cRL4GWCY+j6Z4PYbQWeyuSDAgS8Qew1ZWK3
|
2514
|
+
wzM/vK714+h6KK3lPrt9VC/k+1yx+HSeHP8/Ojw9Pvj+xenB4Z2KgJv5/+pG
|
2515
|
+
Y2utwP+3GuuNOf+/j+cB8NWQlzXy1DRSR/2kDbzG8NvEcX6CtR976ixwO2oY
|
2516
|
+
DdSVG6ZYtK2reqUV/65Ogft0/ThJHeCDfeUnxI86XgKSBav4PeAIwO7wLfz1
|
2517
|
+
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
|
2840
|
+
2lhdna//e3lunv+cUW+U21n7mJj/vVa4/3V1fW1rnv93L482TeqigKK5tljJ
|
2841
|
+
zXtlibJboQCmt8I/dQlzKi8nH9+SViw/gHQ6FOZlJRE/VpVvv3isSm0c9DFg
|
2842
|
+
aNfCa/XFdyNU2Knk2sb4Ih9TwP14mrZNu/lWKFCjibkkaEfqVvLOyhrYRuOa
|
2843
|
+
1YU4FqSkAzYWcZ/IQoHxsGRgdDAm134e2x+9OL5xdEFEiGDEGZzB27LRnsVu
|
2844
|
+
22vSDjR2s1FPvDYG3hWKRv18ybFFwTIotvtYrTVKy1qbmdlAtf9q4fnO6Y8L
|
2845
|
+
6vF3qrI8SGJ2Xy23/HDb+pnQb/pPYj6ZP/DVt1+g54zxpG2QhOmrNcR/0ddg
|
2846
|
+
0LWdIXVy4WVu3gNaqUHVhwiwdnQpfP05JH//bSr+b3sqbyUDJvL/ra0C/99Y
|
2847
|
+
bWzN+f99PDfwf3veJ8mAkrIfSA4UqPG+ZYHdvaodqlp/vEhgdzpuHlMfqkab
|
2848
|
+
yp0BuZU/unDIIXIuIP6iAmJq/n9r7X8a/b/I/9cbW6tz/n8fz0T+Px3nvw+e
|
2849
|
+
/9G4/SQ+7/Y/dS4/5+9/Vf4+6ZmG/+Me7+25/2T+v762WuD/axtrG3P+fx/P
|
2850
|
+
Tfwf5n0i98/KfCjez9R375wfB/bRmTeOfc6656z7wz2T+X8xuGn2Pibw/42N
|
2851
|
+
1Y2i/r+yPtf/7+V5oOPon9undDrf2qFqX9Lq+icmUPWSl9ta3cWl9B0sGG7g
|
2852
|
+
ELN0RspJQjKm8GBxU3oH82+geGlpSc55nZ2s6b6Fyth45cEf7rsKqtmygKFN
|
2853
|
+
aDQXnD6Wt2YR5VJtn5K1kh1Q1S89dRRmr74fnuIZJql3DYsgSVSF85dVPxgk
|
2854
|
+
4zugED38A6pIJhgngrFlQH9WyjvBM4TkcIAZ+/p1hq4sIb98Xbv/Pj9Mj9Dl
|
2855
|
+
t0y+LTfAWK5Ycsqloe+It38v3555lKQr8Vorq1t4XHt9ZXs6846aos4wu7jn
|
2856
|
+
XsvJfsnjVfp0FONGUccLh1UXA/np5U5Ah69hMDmfTPftMjVBRPg0OnvqXXoB
|
2857
|
+
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
|
3053
|
+
5s/8mT/zZ/7Mn8/5+f8QS8V/ADACAA==
|
3054
|
+
http_version: '1.1'
|
3055
|
+
recorded_at: Sat, 02 Feb 2013 18:10:23 GMT
|
2375
3056
|
recorded_with: VCR 2.3.0
|
data/features/git.feature
CHANGED
data/features/needed.feature
CHANGED
@@ -6,11 +6,11 @@ Scenario: already downloaded tarball
|
|
6
6
|
archive :testrepo, :version => '0.1',
|
7
7
|
:url => 'http://test-assets.3ofcoins.net.s3-website-us-east-1.amazonaws.com/testrepo-0.1.tar.gz'
|
8
8
|
"""
|
9
|
-
When I run "vendor"
|
9
|
+
When I run "vendor sync"
|
10
10
|
Then I'm on "master" branch
|
11
11
|
And command output includes /module\s+testrepo/
|
12
12
|
And command output includes "testrepo-0.1.tar.gz"
|
13
|
-
Then I run "vendor"
|
13
|
+
Then I run "vendor sync"
|
14
14
|
And command output includes /module\s+testrepo/
|
15
15
|
And command output includes /up to date\s+testrepo/
|
16
16
|
And command output does not include "testrepo-0.1.tar.gz"
|
data/features/status.feature
CHANGED
@@ -16,12 +16,12 @@ Scenario: status new module
|
|
16
16
|
Then command output includes /new\s+generated\/0.23/
|
17
17
|
|
18
18
|
Scenario: status up-to-date module
|
19
|
-
When I run "vendor"
|
19
|
+
When I run "vendor sync"
|
20
20
|
And I run "vendor status"
|
21
21
|
Then command output includes /up to date\s+generated\/0.23/
|
22
22
|
|
23
23
|
Scenario: status outdated modules
|
24
|
-
When I run "vendor"
|
24
|
+
When I run "vendor sync"
|
25
25
|
And I change Vendorfile to:
|
26
26
|
"""ruby
|
27
27
|
vendor 'generated', :version => '0.42' do |v|
|
@@ -41,7 +41,7 @@ Scenario: Module's dependencies are statused if they are known
|
|
41
41
|
And I run "vendor status"
|
42
42
|
Then command output includes /new\s+memcached/
|
43
43
|
And command output does not include "runit"
|
44
|
-
When I run "vendor"
|
44
|
+
When I run "vendor sync"
|
45
45
|
And I run "vendor status"
|
46
46
|
Then command output includes /up to date\s+memcached/
|
47
47
|
And command output includes /up to date\s+runit/
|
data/features/tarball.feature
CHANGED
@@ -5,7 +5,7 @@ Scenario: just URL as name
|
|
5
5
|
"""ruby
|
6
6
|
archive 'http://test-assets.3ofcoins.net.s3-website-us-east-1.amazonaws.com/testrepo-0.1.tar.gz'
|
7
7
|
"""
|
8
|
-
When I run "vendor"
|
8
|
+
When I run "vendor sync"
|
9
9
|
Then following has been conjured:
|
10
10
|
| Name | testrepo-0.1 |
|
11
11
|
| Version | testrepo-0.1.tar.gz |
|
@@ -17,7 +17,7 @@ Scenario: URL as keyword
|
|
17
17
|
archive :testrepo,
|
18
18
|
:url => 'http://test-assets.3ofcoins.net.s3-website-us-east-1.amazonaws.com/testrepo-0.1.tar.gz'
|
19
19
|
"""
|
20
|
-
When I run "vendor"
|
20
|
+
When I run "vendor sync"
|
21
21
|
Then following has been conjured:
|
22
22
|
| Name | testrepo |
|
23
23
|
| Version | testrepo-0.1.tar.gz |
|
@@ -31,7 +31,7 @@ Scenario: Version & checksum
|
|
31
31
|
:version => '0.1',
|
32
32
|
:checksum => 'ea207a896f929ffb3a1dfe128332d6134a18edab7c01b97bfb2b1c7eacebe0cb'
|
33
33
|
"""
|
34
|
-
When I run "vendor"
|
34
|
+
When I run "vendor sync"
|
35
35
|
Then following has been conjured:
|
36
36
|
| Name | testrepo |
|
37
37
|
| Version | 0.1 |
|
@@ -45,7 +45,7 @@ Scenario: Wrong checksum
|
|
45
45
|
:version => '0.1',
|
46
46
|
:checksum => 'incorrect'
|
47
47
|
"""
|
48
|
-
When I try to run "vendor"
|
48
|
+
When I try to run "vendor sync"
|
49
49
|
Then the command has failed
|
50
50
|
Then following has not been conjured:
|
51
51
|
| Name | testrepo |
|
@@ -57,7 +57,7 @@ Scenario: Tarball without a root directory
|
|
57
57
|
archive :testrepo,
|
58
58
|
:url => 'http://test-assets.3ofcoins.net.s3-website-us-east-1.amazonaws.com/testrepo-0.1-noroot.tar.gz'
|
59
59
|
"""
|
60
|
-
When I run "vendor"
|
60
|
+
When I run "vendor sync"
|
61
61
|
Then following has been conjured:
|
62
62
|
| Name | testrepo |
|
63
63
|
| With file | test/alias.c |
|
data/features/vendor.feature
CHANGED
data/lib/vendorificator/cli.rb
CHANGED
@@ -9,7 +9,7 @@ module Vendorificator
|
|
9
9
|
check_unknown_options! :except => [:git, :diff, :log]
|
10
10
|
stop_on_unknown_option! :git, :diff, :log
|
11
11
|
|
12
|
-
default_task :
|
12
|
+
default_task :help
|
13
13
|
|
14
14
|
class_option :file, :aliases => '-f', :type => :string, :banner => 'PATH'
|
15
15
|
class_option :debug, :aliases => '-d', :type => :boolean, :default => false
|
@@ -9,7 +9,6 @@ module Vendorificator
|
|
9
9
|
extend Mixlib::Config
|
10
10
|
|
11
11
|
configure do |c|
|
12
|
-
c[:root] = Pathname.getwd
|
13
12
|
c[:basedir] = 'vendor'
|
14
13
|
c[:branch_prefix] = 'vendor'
|
15
14
|
c[:modules] = []
|
@@ -27,7 +26,6 @@ module Vendorificator
|
|
27
26
|
pathname.dirname
|
28
27
|
end
|
29
28
|
self[:vendorfile_path] = pathname
|
30
|
-
self[:lockfile_path] = pathname.dirname.join(pathname.basename.to_s + '.lock')
|
31
29
|
super(pathname.to_s)
|
32
30
|
end
|
33
31
|
|
@@ -1,10 +1,16 @@
|
|
1
|
-
require 'chef/cookbook/metadata'
|
2
|
-
|
3
1
|
module Vendorificator::Hooks
|
4
2
|
module ChefCookbookDependencies
|
3
|
+
def initialize(*args)
|
4
|
+
require 'chef/cookbook/metadata'
|
5
|
+
super
|
6
|
+
end
|
7
|
+
|
5
8
|
# Add required Chef cookbooks to vendor modules
|
6
9
|
def dependencies
|
7
|
-
ignored =
|
10
|
+
ignored =
|
11
|
+
args.key?(:ignore_dependencies) ?
|
12
|
+
args[:ignore_dependencies] :
|
13
|
+
Vendorificator::Config[:chef_cookbook_ignore_dependencies]
|
8
14
|
metadata = File.join(self.work_dir, 'metadata.rb')
|
9
15
|
|
10
16
|
unless File.exist?(metadata)
|
@@ -15,9 +21,16 @@ module Vendorificator::Hooks
|
|
15
21
|
cbmd = Chef::Cookbook::Metadata.new
|
16
22
|
cbmd.from_file(metadata)
|
17
23
|
|
18
|
-
|
19
|
-
|
20
|
-
|
24
|
+
if ignored && !ignored.respond_to?(:include?)
|
25
|
+
# ignored is a truthy value that's not a set-like thing, so we
|
26
|
+
# ignore all dependencies altogether.
|
27
|
+
super
|
28
|
+
else
|
29
|
+
deps = cbmd.dependencies.map(&:first)
|
30
|
+
deps.reject! { |n| ignored.include?(n) } if ignored.respond_to?(:include?)
|
31
|
+
deps.map! { |n| Vendorificator::Vendor::ChefCookbook.new(n) }
|
32
|
+
super + deps
|
33
|
+
end
|
21
34
|
end
|
22
35
|
end
|
23
36
|
end
|
@@ -32,7 +32,7 @@ module Vendorificator
|
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
35
|
-
attr_reader :
|
35
|
+
attr_reader :name, :args, :block
|
36
36
|
arg_reader :version, :path
|
37
37
|
|
38
38
|
def path
|
@@ -40,6 +40,8 @@ module Vendorificator
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def initialize(name, args={}, &block)
|
43
|
+
@category = args.delete(:category)
|
44
|
+
|
43
45
|
@name = name
|
44
46
|
@args = args
|
45
47
|
@block = block
|
@@ -51,7 +53,7 @@ module Vendorificator
|
|
51
53
|
end
|
52
54
|
|
53
55
|
def category
|
54
|
-
self.class.category
|
56
|
+
@category || self.class.category
|
55
57
|
end
|
56
58
|
|
57
59
|
def branch_name
|
data/lib/vendorificator.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vendorificator
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-02-
|
12
|
+
date: 2013-02-03 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: escape
|
@@ -266,7 +266,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
266
266
|
version: '0'
|
267
267
|
segments:
|
268
268
|
- 0
|
269
|
-
hash:
|
269
|
+
hash: 4082258902042132214
|
270
270
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
271
271
|
none: false
|
272
272
|
requirements:
|
@@ -275,7 +275,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
275
275
|
version: '0'
|
276
276
|
segments:
|
277
277
|
- 0
|
278
|
-
hash:
|
278
|
+
hash: 4082258902042132214
|
279
279
|
requirements: []
|
280
280
|
rubyforge_project:
|
281
281
|
rubygems_version: 1.8.24
|