2014-12-09 17:55:17 -05:00
|
|
|
---
|
2015-07-22 22:31:00 -04:00
|
|
|
description: |
|
2015-07-24 17:54:46 -04:00
|
|
|
The `packer push` command uploads a template and other required files to the
|
|
|
|
Atlas build service, which will run your packer build for you.
|
2015-07-22 22:31:00 -04:00
|
|
|
layout: docs
|
|
|
|
page_title: 'Push - Command-Line'
|
|
|
|
...
|
2014-12-09 17:55:17 -05:00
|
|
|
|
2015-01-22 21:48:02 -05:00
|
|
|
# Command-Line: Push
|
2014-12-09 17:55:17 -05:00
|
|
|
|
2015-07-24 17:54:46 -04:00
|
|
|
The `packer push` command uploads a template and other required files to the
|
|
|
|
Atlas service, which will run your packer build for you. [Learn more about
|
|
|
|
Packer in Atlas.](https://atlas.hashicorp.com/help/packer/features)
|
2014-12-09 17:55:17 -05:00
|
|
|
|
2015-07-24 17:54:46 -04:00
|
|
|
Running builds remotely makes it easier to iterate on packer builds that are not
|
|
|
|
supported on your operating system, for example, building docker or QEMU while
|
|
|
|
developing on Mac or Windows. Also, the hard work of building VMs is offloaded
|
|
|
|
to dedicated servers with more CPU, memory, and network resources.
|
2014-12-09 17:55:17 -05:00
|
|
|
|
2015-07-24 17:54:46 -04:00
|
|
|
When you use push to run a build in Atlas, you may also want to store your build
|
|
|
|
artifacts in Atlas. In order to do that you will also need to configure the
|
|
|
|
[Atlas post-processor](/docs/post-processors/atlas.html). This is optional, and
|
|
|
|
both the post-processor and push commands can be used independently.
|
2015-02-03 18:32:57 -05:00
|
|
|
|
2015-07-24 17:54:46 -04:00
|
|
|
!> The push command uploads your template and other files, like provisioning
|
|
|
|
scripts, to Atlas. Take care not to upload files that you don't intend to, like
|
|
|
|
secrets or large binaries. **If you have secrets in your Packer template, you
|
|
|
|
should [move them into environment
|
|
|
|
variables](https://packer.io/docs/templates/user-variables.html).**
|
2015-07-23 03:02:18 -04:00
|
|
|
|
2015-07-24 17:54:46 -04:00
|
|
|
Most push behavior is [configured in your packer
|
|
|
|
template](/docs/templates/push.html). You can override or supplement your
|
|
|
|
configuration using the options below.
|
2014-12-09 17:55:17 -05:00
|
|
|
|
|
|
|
## Options
|
|
|
|
|
2015-07-22 23:25:58 -04:00
|
|
|
- `-message` - A message to identify the purpose or changes in this Packer
|
|
|
|
template much like a VCS commit message. This message will be passed to the
|
|
|
|
Packer build service. This option is also available as a short option `-m`.
|
2015-02-03 18:34:05 -05:00
|
|
|
|
2015-07-23 03:02:18 -04:00
|
|
|
- `-token` - Your access token for the Atlas API.
|
|
|
|
|
2015-07-24 17:54:46 -04:00
|
|
|
-> Login to Atlas to [generate an Atlas
|
|
|
|
Token](https://atlas.hashicorp.com/settings/tokens). The most convenient way to
|
|
|
|
configure your token is to set it to the `ATLAS_TOKEN` environment variable, but
|
|
|
|
you can also use `-token` on the command line.
|
2015-02-03 17:37:55 -05:00
|
|
|
|
2015-07-22 23:25:58 -04:00
|
|
|
- `-name` - The name of the build in the service. This typically looks like
|
2015-07-24 17:54:46 -04:00
|
|
|
`hashicorp/precise64`, which follows the form `<username>/<buildname>`. This
|
|
|
|
must be specified here or in your template.
|
2015-07-23 03:02:18 -04:00
|
|
|
|
2015-07-24 17:54:46 -04:00
|
|
|
- `-var` - Set a variable in your packer template. This option can be used
|
|
|
|
multiple times. This is useful for setting version numbers for your build.
|
2015-07-23 03:02:18 -04:00
|
|
|
|
|
|
|
- `-var-file` - Set template variables from a file.
|
2015-04-15 15:53:57 -04:00
|
|
|
|
2015-02-03 17:37:55 -05:00
|
|
|
## Examples
|
|
|
|
|
|
|
|
Push a Packer template:
|
|
|
|
|
2015-07-22 22:31:00 -04:00
|
|
|
``` {.shell}
|
2015-02-03 18:34:05 -05:00
|
|
|
$ packer push -m "Updating the apache version" template.json
|
2015-02-03 17:37:55 -05:00
|
|
|
```
|
|
|
|
|
|
|
|
Push a Packer template with a custom token:
|
2014-12-09 17:55:17 -05:00
|
|
|
|
2015-07-22 22:31:00 -04:00
|
|
|
``` {.shell}
|
2015-02-03 17:37:55 -05:00
|
|
|
$ packer push -token ABCD1234 template.json
|
|
|
|
```
|