Packaging and dependency resolution for chef-solo cookbooks
Project description
Bundle cookbooks for use by chef-solo.
Launchbox supports transitive dependency resolution, chef version contraints and exclusions (for those misbehaved cookbooks that depend on more than they should).
Input
launchbox will look for YAML files under the roles and mixins in the input directory (which defaults to ./src).
An example role will look like:
ci: include_mixins: [java] jenkins: http_proxy: variant: nginx cookbooks: java: "1.5.1" nginx: "0.101.1" jenkins: "0.6.3" run_list: - java - jenkins
Think of mixins as partial roles for reusability. At run-time launchbox will apply all mixins in order and then override any values with the data in the role itself.
Cookbooks
The cookbooks specified for a role will be downloaded from the specified web server or S3 bucket.
S3
To use an S3 remote use launchbox --bucket your.bucket.name
In the case of an S3 remote launchbox will look for the following keys when downloading cookbooks:
contents: cookbooks/<cookbook>/<version>/<cookbook>.tar.gz metadata: cookbooks/<cookbook>/<version>/<cookbook>.json
For determining the available versions launchbox will list the bucket and find all available versions.
HTTP
To use an HTTP(S) remote use lauchbox --url http://your/bucket/server
In the case of an HTTP(s) remote launchbox will use the following URLs:
contents: <URL>/<cookbook>/<version>/<cookbook>.tar.gz metadata: <URL>/<cookbook>/<version>/<cookbook>.json versions: <URL>/<cookbook>/versions.json
Output
After running launchbox the target folder will contain a JSON file with the role metadata and tar.gz containing all the necessary cookbooks for that role. It will also output the SHA-256 of these two files.
You can supply these two files directly to chef-solo using -j <path/to/role.json> and -r </path/to/role.tar.gz>
Usage
For detailed usage information please run launchbox -h
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file launchbox-0.1.1.tar.gz
.
File metadata
- Download URL: launchbox-0.1.1.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 05fc6ebdf2484110a966c4d31a2fff012915f1af338080c8fdacf693797205ae |
|
MD5 | dedf46de9b9fa6aa7352e814437a5054 |
|
BLAKE2b-256 | 3a42713f59e0a0a4b6f0f92dd35e5816ede6e25f2ec52ce68237df7d28533f00 |