HashiCorp Cloud Platform
Build pipeline metadata reference
This topic provides reference information about the rich metadata that HCP Packer collects form build pipelines. Refer to Rich CI/CD pipeline metadata for additional information.
Overview
The following table provides an overview of the components that HCP Packer collects build pipeline metadata from:
Component | Details captured |
---|---|
CI/CD | |
Git | |
Operating system | |
Packer and Packer plugin versions | |
Packer build commands | User-executed Packer build command options: debug except force only var var-file HCP Packer does not track sensitive variables specifed in the |
Metadata details
The following table describes the build pipeline metadata attributes that HCP Packer captures and tracks. Packer stores and build pipeline metadata as JSON. Refer to the example JSON for a rendered view of the data:
Attribute | Description | Type |
---|---|---|
packer | Object containing details about the Packer binary used to run the build. | Object |
packer.version | Packer version in semantic version format. | String |
packer.plugins | List of objects that contain the name and version of each plugin used in the build. | List |
packer.plugins.name | Name of the plugin. | String |
packer.plugins.version | Plugin version in semantic version format. | String |
packer.os | Object containing details about the operating system that the Packer binary ran on to build the artifact. | Object |
packer.os.details | Object containing the operating system architecture and version information. | Object |
packer.os.details.arch | OS architecture | String |
packer.os.details.version | OS version as reported by the system. | String |
packer.os.type | Type of operating system. | String |
packer.options | Object indicating the Packer binary options used to run the build. | Object |
packer.options.force | true when Packer runs with the force option specified. | Boolean |
packer.options.debug | true when Packer runs with the debug option specified. | Boolean |
packer.options.except | List of builds and post-processors specified when Packer runs with the except option specified. | List |
packer.options.only | List of only the builds and post-processors specified when Packer runs with the except option specified. | list |
packer.options.vars | List of variables specified when Packer runs with the vars option specified. | List |
packer.options.var-files | List of variable files specified when Packer runs with the var-files option specified. | List |
packer.options.path | Path the Packer binary | String |
cicd | Object containing details about the CI/CD pipeline. | Object |
cicd.details | Object containing attributes provided by your CI/CD platform. HCP Packer supports GitHub Actions and GitLab CI/CD. Refer to the documentation for your platform for additional information. | Objects |
cicd.details.<CI/CD_PLATFORM_ATTRIBUTES> | Attributes provided by your CI/CD platform. | String |
cicd.type | Indicates the type of CI/CD pipeline platform. | String |
vcs | Object containing information about the version control system. | Object |
vcs.details | Object containing details retrieved from the VCS. | Object |
vcs.details.author | Name of the person identified as the artifact configuration author. | String |
vcs.details.commit | Commit ID associated with the build. | String |
vcs.details.has_uncommitted_changes | true when the artifact was built with uncommitted chanages | Boolean |
vcs.details.ref | Remote reference, such as tag or branch name, associated with the artifact build in the VCS. | String |
vcs.details.type | Type of VCS | String |
Example JSON
The following example contains rich metadata associated with GitHub actions build pipeline:
{
"packer": {
"version": "1.11.2",
"plugins": [
{
"name": "docker",
"version": "1.0.10"
}
],
"os": {
"details": {
"arch": "amd64",
"version": "6.5.0-1024-azure"
},
"type": "linux"
},
"options": {
"force": true,
"debug": false,
"except": [],
"only": [
"aws.docker"
],
"vars": [
"client_id",
"client_secret"
],
"var-files": [
"variables.pkrvars.hcl"
],
"path": "app.pkr.hcl"
}
},
"cicd": {
"details": {
"GITHUB_ACTOR": "octo",
"GITHUB_ACTOR_ID": "24626766",
"GITHUB_EVENT_NAME": "push",
"GITHUB_JOB": "metadata-phase-2-poc-linux",
"GITHUB_REF": "refs/heads/poc_gha_env",
"GITHUB_REPOSITORY": "hashicorp/cloud-packer-service",
"GITHUB_REPOSITORY_ID": "362182133",
"GITHUB_SHA": "eba36b80139ba1f42bc3f22760257ba1377ee6fe",
"GITHUB_TRIGGERING_ACTOR": "octo-1",
"GITHUB_WORKFLOW_URL": "https://github.com/hashicorp/cloud-packer-service/actions/runs/10058116707"
},
"type": "github-actions"
},
"vcs": {
"details": {
"author": "Octo <octo@hashicorp.com>",
"commit": "eba36b80139ba1f42bc3f22760257ba1377ee6fe",
"has_uncommitted_changes": false,
"ref": "poc_gha_env"
},
"type": "git"
}
}