post-processor/vagrant-cloud: add docs
This commit is contained in:
parent
6a3c9921d2
commit
34164b2522
|
@ -0,0 +1,102 @@
|
|||
---
|
||||
layout: "docs"
|
||||
page_title: "Vagrant Cloud Post-Processor"
|
||||
---
|
||||
|
||||
# Vagrant Cloud Post-Processor
|
||||
|
||||
Type: `vagrant-cloud`
|
||||
|
||||
The Vagrant Cloud post-processor recieves a Vagrant box from the `vagrant`
|
||||
post-processor and pushes it to Vagrant Cloud. [Vagrant Cloud](https://vagrantcloud.com)
|
||||
hosts and serves boxes to Vagrant, allowing you to version and distribute
|
||||
boxes to an organization in a simple way.
|
||||
|
||||
You'll need to be familiar with Vagrant Cloud, have an upgraded account
|
||||
to enable box hosting, and be distributing your box via the [shorthand name](http://docs.vagrantup.com/v2/cli/box.html)
|
||||
configuration.
|
||||
|
||||
## Workflow
|
||||
|
||||
It's important to understand the workflow that using this post-processor
|
||||
enforces in order to take full advantage of Vagrant and Vagrant Cloud.
|
||||
|
||||
The use of this processor assume that you currently distribute, or plan
|
||||
to distrubute, boxes via Vagrant Cloud. It also assumes you create Vagrant
|
||||
Boxes and deliver them to your team in some fashion.
|
||||
|
||||
Here is an example workflow:
|
||||
|
||||
1. You use Packer to build a Vagrant Box for the `virtualbox` provider
|
||||
2. The `vagrant-cloud` post-processor is configured to point to the box `hashicorp/foobar` on Vagrant Cloud
|
||||
via the `box_tag` configuration
|
||||
2. The post-processor receives the box from the `vagrant` post-processor
|
||||
3. It then creates the configured version, or verifies the existence of it, on Vagrant Cloud
|
||||
4. A provider matching the name of the Vagrant provider is then created
|
||||
5. The box is uploaded to Vagrant Cloud
|
||||
6. The upload is verified
|
||||
7. The version is released and available to users of the box
|
||||
|
||||
|
||||
## Configuration
|
||||
|
||||
The configuration allows you to specify the target box that you have
|
||||
access to on Vagrant Cloud, as well as authentication and version information.
|
||||
|
||||
### Required:
|
||||
|
||||
* `access_token` (string) - Your access token for the Vagrant Cloud API.
|
||||
This can be generated on your [tokens page](https://vagrantcloud.com/account/tokens).
|
||||
|
||||
* `box_tag` (string) - The shorthand tag for your box that maps to
|
||||
Vagrant Cloud, i.e `hashicorp/precise64` for `vagrantcloud.com/hashicorp/precise64`
|
||||
|
||||
* `version` (string) - The version number, typically incrementing a previous version.
|
||||
The version string is validated based on [Semantic Versioning](http://semver.org/). The string must match
|
||||
a pattern that could be semver, and doesn't validate that the version comes after
|
||||
your previous versions.
|
||||
|
||||
|
||||
### Optional:
|
||||
|
||||
* `version_description` (string) - Optionally markdown text used as a full-length
|
||||
and in-depth description of the version, typically for denoting changes introduced
|
||||
|
||||
* `no_release` (string) - If set to true, does not release the version
|
||||
on Vagrant Cloud, making it active. You can manually release the version
|
||||
via the API or Web UI. Defaults to false.
|
||||
|
||||
|
||||
## Use with Vagrant Post-Processor
|
||||
|
||||
You'll need to use the Vagrant post-processor before using this post-processor.
|
||||
An example configuration is below. Note the use of the array specifying
|
||||
the execution order.
|
||||
|
||||
```json
|
||||
{
|
||||
"variables": {
|
||||
"version": "",
|
||||
"cloud_token": ""
|
||||
},
|
||||
"builders": [{
|
||||
...
|
||||
}],
|
||||
"post-processors": [
|
||||
[{
|
||||
"type": "vagrant",
|
||||
"include": ["image.iso"],
|
||||
"vagrantfile_template": "vagrantfile.tpl",
|
||||
"output": "proxycore_{{.Provider}}.box",
|
||||
},
|
||||
{
|
||||
"type": "vagrant-cloud",
|
||||
"box_tag": "hashicorp/precise64",
|
||||
"access_token": "{{user `cloud_token`}}",
|
||||
"version": "{{user `version`}}",
|
||||
"version_description": "- added rabbitmq\n- modified db config\n- compacted log files"
|
||||
}]
|
||||
]
|
||||
}
|
||||
|
||||
```
|
|
@ -61,6 +61,7 @@
|
|||
<li><a href="/docs/post-processors/docker-import.html">docker-import</a></li>
|
||||
<li><a href="/docs/post-processors/docker-push.html">docker-push</a></li>
|
||||
<li><a href="/docs/post-processors/vagrant.html">Vagrant</a></li>
|
||||
<li><a href="/docs/post-processors/vagrant-cloud.html">Vagrant Cloud</a></li>
|
||||
<li><a href="/docs/post-processors/vsphere.html">vSphere</a></li>
|
||||
</ul>
|
||||
|
||||
|
|
Loading…
Reference in New Issue