Commit 30850b85 authored by Chris Bednarski's avatar Chris Bednarski

Reformat

parent a77ee557
--- ---
description: | description: |
The `packer push` command uploads a template and other required files to the Atlas build service, which will run your packer build for you. The `packer push` command uploads a template and other required files to the
Atlas build service, which will run your packer build for you.
layout: docs layout: docs
page_title: 'Push - Command-Line' page_title: 'Push - Command-Line'
... ...
# Command-Line: Push # Command-Line: Push
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) 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)
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. 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.
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. 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.
!> 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).** !> 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).**
Most push behavior is [configured in your packer template](/docs/templates/push.html). You can override or supplement your configuration using the options below. Most push behavior is [configured in your packer
template](/docs/templates/push.html). You can override or supplement your
configuration using the options below.
## Options ## Options
...@@ -25,12 +40,17 @@ Most push behavior is [configured in your packer template](/docs/templates/push. ...@@ -25,12 +40,17 @@ Most push behavior is [configured in your packer template](/docs/templates/push.
- `-token` - Your access token for the Atlas API. - `-token` - Your access token for the Atlas API.
-> 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. -> 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.
- `-name` - The name of the build in the service. This typically looks like - `-name` - The name of the build in the service. This typically looks like
`hashicorp/precise64`, which follows the form `<username>/<buildname>`. This must be specified here or in your template. `hashicorp/precise64`, which follows the form `<username>/<buildname>`. This
must be specified here or in your template.
- `-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. - `-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.
- `-var-file` - Set template variables from a file. - `-var-file` - Set template variables from a file.
......
...@@ -11,9 +11,15 @@ page_title: 'Atlas Post-Processor' ...@@ -11,9 +11,15 @@ page_title: 'Atlas Post-Processor'
Type: `atlas` Type: `atlas`
The Atlas post-processor uploads artifacts from your packer builds to Atlas for hosting. Artifacts hosted in Atlas are are automatically made available for use with Vagrant and Terraform, and Atlas provides additional features for managing versions and releases. [Learn more about packer in Atlas.](https://atlas.hashicorp.com/help/packer/features) The Atlas post-processor uploads artifacts from your packer builds to Atlas for
hosting. Artifacts hosted in Atlas are are automatically made available for use
with Vagrant and Terraform, and Atlas provides additional features for managing
versions and releases. [Learn more about packer in
Atlas.](https://atlas.hashicorp.com/help/packer/features)
You can also use the push command to [run packer builds in Atlas](/docs/command-line/push.html). The push command and Atlas post-processor can be used together or independently. You can also use the push command to [run packer builds in
Atlas](/docs/command-line/push.html). The push command and Atlas post-processor
can be used together or independently.
## Workflow ## Workflow
...@@ -25,7 +31,8 @@ location in Atlas. ...@@ -25,7 +31,8 @@ location in Atlas.
Here is an example workflow: Here is an example workflow:
1. Packer builds an AMI with the [Amazon AMI builder](/docs/builders/amazon.html) 1. Packer builds an AMI with the [Amazon AMI
builder](/docs/builders/amazon.html)
2. The `atlas` post-processor takes the resulting AMI and uploads it to Atlas. 2. The `atlas` post-processor takes the resulting AMI and uploads it to Atlas.
The `atlas` post-processor is configured with the name of the AMI, for The `atlas` post-processor is configured with the name of the AMI, for
example `hashicorp/foobar`, to create the artifact in Atlas or update the example `hashicorp/foobar`, to create the artifact in Atlas or update the
...@@ -41,12 +48,15 @@ The configuration allows you to specify and access the artifact in Atlas. ...@@ -41,12 +48,15 @@ The configuration allows you to specify and access the artifact in Atlas.
- `token` (string) - Your access token for the Atlas API. - `token` (string) - Your access token for the Atlas API.
-> 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` configuration option. -&gt; 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` configuration option.
- `artifact` (string) - The shorthand tag for your artifact that maps to - `artifact` (string) - The shorthand tag for your artifact that maps to
Atlas, i.e `hashicorp/foobar` for `atlas.hashicorp.com/hashicorp/foobar`. Atlas, i.e `hashicorp/foobar` for `atlas.hashicorp.com/hashicorp/foobar`.
You must have access to the organization&mdash;hashicorp in this example&mdash;in You must have access to the organization—hashicorp in this example—in order
order to add an artifact to the organization in Atlas. to add an artifact to the organization in Atlas.
- `artifact_type` (string) - For uploading AMIs to Atlas, `artifact_type` will - `artifact_type` (string) - For uploading AMIs to Atlas, `artifact_type` will
always be `amazon.ami`. This field must be defined because Atlas can host always be `amazon.ami`. This field must be defined because Atlas can host
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment