Packer
The hcp_packer_registry block
Note: HCP Packer is under active development, and we are currently offering a public beta version to collect feedback and continue improving the product. To get started, visit the HCP Packer documentation or try the Get Started with HCP Packer collection on HashiCorp Learn.
The hcp_packer_registry
block allows operators the ability to customize the
metadata sent to HCP Packer Registry. It configures the details of an image
that is created or updated within the HCP Packer registry.
This block is available from version 1.7.7 of Packer.
The presence of a hcp_packer_registry
block in a build block will enable HCP
Packer mode. Packer will push all builds within that build block to the remote
registry if the appropriate HCP credentials are set (HCP_CLIENT_ID
and
HCP_CLIENT_SECRET
). If no HCP credentials are set, Packer will fail the build
and exit immediately to avoid any potential artifact drift between the defined
builders (source blocks) and the HCP Packer registry.
# file: builds.pkr.hcl
source "file" "basic-example" {
content = "Lorem ipsum dolor sit amet"
target = "sample_artifact"
}
build {
hcp_packer_registry {
bucket_name = "sample-artifact"
description = <<EOT
Some nice description about the image which artifact is being published to HCP Packer Registry. =D
EOT
labels = {
"foo-version" = "3.4.0",
"foo" = "bar",
}
}
sources = ["sources.file.basic-example"]
}
bucket_name
(string) - The image name when published to the HCP Packer registry. Should always be the same, otherwise a new image will be created. Defaults tobuild.name
if not set. Will be overwritten ifHCP_PACKER_BUCKET_NAME
is set.description
(string) - The image description. Useful to provide a summary about the image. The description will appear at the image's main page and will be updated whenever it is changed and a new build is pushed to the HCP Packer registry. Should contain a maximum of 255 characters. Defaults tobuild.description
if not set.labels
(map[string]string) - Map of labels. Can provide any information, such as tools versions (e.g. go 1.17, python 3.5, etc...). The labels will appear at the image's main page and will be updated whenever it is changed and a new build is pushed to the HCP Packer registry.