2020-03-18 18:46:47 -04:00
|
|
|
---
|
|
|
|
description: >
|
|
|
|
There are a handful of terms used throughout the Packer documentation where
|
|
|
|
the
|
|
|
|
|
|
|
|
meaning may not be immediately obvious if you haven't used Packer before.
|
|
|
|
|
|
|
|
Luckily, there are relatively few. This page documents all the terminology
|
|
|
|
|
|
|
|
required to understand and use Packer. The terminology is in alphabetical
|
|
|
|
order
|
|
|
|
|
|
|
|
for quick referencing.
|
|
|
|
page_title: Terminology
|
2020-04-02 19:39:47 -04:00
|
|
|
sidebar_title: Terminology
|
2020-03-18 18:46:47 -04:00
|
|
|
---
|
|
|
|
|
|
|
|
# Packer Terminology
|
|
|
|
|
|
|
|
There are a handful of terms used throughout the Packer documentation where the
|
|
|
|
meaning may not be immediately obvious if you haven't used Packer before.
|
|
|
|
Luckily, there are relatively few. This page documents all the terminology
|
|
|
|
required to understand and use Packer. The terminology is in alphabetical order
|
|
|
|
for quick referencing.
|
|
|
|
|
2021-02-16 04:08:47 -05:00
|
|
|
- `Artifacts` are the results of a single build, and are usually a set of IDs
|
|
|
|
or files to represent a machine image. Every builder produces a single
|
|
|
|
artifact. As an example, in the case of the Amazon EC2 builder, the
|
|
|
|
artifact is a set of AMI IDs (one per region). For the VMware builder, the
|
|
|
|
artifact is a directory of files comprising the created virtual machine.
|
|
|
|
|
2021-02-16 06:50:33 -05:00
|
|
|
- `Builds` are a single task that eventually produces an image for a single
|
|
|
|
platform. Multiple builds run in parallel. Example usage in a sentence:
|
|
|
|
"The Packer build produced an AMI to run our web application." Or: "Packer
|
|
|
|
is running the builds now for VMware, AWS, and VirtualBox."
|
|
|
|
|
2020-03-18 18:46:47 -04:00
|
|
|
- `Builders` are components of Packer that are able to create a machine image
|
|
|
|
for a single platform. Builders read in some configuration and use that to
|
|
|
|
run and generate a machine image. A builder is invoked as part of a build
|
|
|
|
in order to create the actual resulting images. Example builders include
|
2021-02-16 04:08:47 -05:00
|
|
|
VirtualBox, VMware, and Amazon EC2.
|
2020-03-18 18:46:47 -04:00
|
|
|
|
2021-02-16 06:50:33 -05:00
|
|
|
- `Commands` are sub-commands for the `packer` program that perform some job.
|
|
|
|
An example command is "build", which is invoked as `packer build`. Packer
|
|
|
|
ships with a set of commands out of the box in order to define its
|
|
|
|
command-line interface.
|
|
|
|
|
|
|
|
- `Data Sources` are components of Packer that fetch data from outside Packer
|
|
|
|
and make it available to use within the template.
|
|
|
|
Example of data sources include Amazon AMI, and Amazon Secrets Manager.
|
2020-03-18 18:46:47 -04:00
|
|
|
|
2021-02-16 04:08:47 -05:00
|
|
|
- `Post-processors` are components of Packer that take the result of a
|
|
|
|
builder or another post-processor and process that to create a new
|
|
|
|
artifact. Examples of post-processors are compress to compress artifacts,
|
|
|
|
upload to upload artifacts, etc.
|
2021-02-16 06:50:33 -05:00
|
|
|
|
|
|
|
- `Provisioners` are components of Packer that install and configure software
|
|
|
|
within a running machine prior to that machine being turned into a static
|
|
|
|
image. They perform the major work of making the image contain useful
|
|
|
|
software. Example provisioners include shell scripts, Chef, Puppet, etc.
|
|
|
|
|
|
|
|
- `Templates` are JSON files which define one or more builds by configuring
|
|
|
|
the various components of Packer. Packer is able to read a template and use
|
|
|
|
that information to create multiple machine images in parallel.
|