Commit Graph
19026 Commits
Author SHA1 Message Date
Tushar PagarandTushar Pagar b7f6981d25 ci: bump lock-threads to v6 so the scheduled lock job can run (#13693)
The pinned version validates its github-token input with a 100 character
cap, and the Actions token now exceeds that, so every run fails before
locking anything:

  ##[error]"github-token" length must be less than or equal to 100 characters long

v6 raised the cap to 1000 (v4 and v5.0.x both still validate max(100)).
Every input this workflow passes exists unchanged in the v6 schema, so the
pin bump is the whole fix. Pinned to the v6.0.2 release commit.

Co-authored-by: Tushar Pagar <[email protected]>
2026-10-13 13:46:38 +05:30
Taru Garg 248f7da29f fix: run make generate to fix test errors (#13719) 2026-10-13 13:37:33 +05:30
Sanya 4bb4b91351 Module dependency update (#13710)
* Module dependency update for otel

* module dependency update

* Changelog update
2026-09-18 15:31:37 +05:30
dependabot[bot]andSanya 72b8ef6797 build(deps): bump go.opentelemetry.io/otel/sdk (#13709)
Bumps [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go) from 1.44.0 to 1.45.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.44.0...v1.45.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/sdk
  dependency-version: 1.45.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sanya <[email protected]>
2026-09-18 14:38:51 +05:30
Jeremy Schoemaker dbb25ff1d6 fix(deps): bump go-m1cpu v0.1.5 to v0.2.1 for M5 fix (#13696)
Fix verified RED->GREEN. CGO SIGSEGV on Apple M5: bump go-m1cpu v0.1.5 -> v0.2.1+ at go.mod:368
2026-09-18 12:10:35 +05:30
Sanya 7dc086cb56 Module upgrade (#13707) 2026-09-15 20:16:15 +05:30
Sanya d17af854b1 Packer release 1.16.1 (#13705) 2026-09-15 17:27:27 +05:30
fb8fa2b0fe [COMPLIANCE] Add/Update Copyright Headers (#13699)
* [COMPLIANCE] Add/Update Copyright Headers

* make generate update

* make generate

---------

Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com>
Co-authored-by: sanya <[email protected]>
Co-authored-by: Sanya <[email protected]>
2026-09-15 17:10:54 +05:30
dependabot[bot] e7b5f502b1 build(deps): bump google.golang.org/grpc (#13704)
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.83.1 to 1.83.2.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.83.1...v1.83.2)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-version: 1.83.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-09-15 17:02:13 +05:30
Sanya f98504c80f Merge pull request #13701 from hashicorp/sanya-hashicorp/fix-vuln
Module Dependency update
2026-09-15 16:46:43 +05:30
Sanya 0508f365f1 Merge pull request #13700 from elomito/feat/update-Readme
fix: update link to CONTRIBUTING.md for consistency with main branch
2026-09-15 15:46:13 +05:30
elomito 4a724e52ab fix: update link to CONTRIBUTING.md for consistency with main branch 2026-09-07 18:09:00 +03:00
Benjamin Holmes eb36e3c3e4 plugin-getter: install plugins from non-GitHub HTTP sources (#13691)
Packer can only install plugins from github.com, with
releases.hashicorp.com consulted first for HashiCorp-published plugins.
This has been a long-standing gap for air-gapped and policy-restricted
environments (#11164): the source address parser already accepts any
hostname, but both existing getters reject non-github.com sources at
install time.

Add a remote plugin getter that installs plugins from the host named in
a required_plugins source address. The host serves the directory
structure of releases.hashicorp.com under the source's path: an
index.json listing versions, and per version a SHA256SUMS file, the
zips it lists, and - when the zip names carry no plugin protocol
version - the version's manifest.json. A plugin published on
releases.hashicorp.com is therefore mirrored as a verbatim copy of its
tree, with every checksum file and signature upstream-authored. A
plugin published as GitHub release assets is mirrored by copying each
release's assets into a version directory, renaming their SHA256SUMS
file to the unprefixed convention with content unchanged, and writing
an index.json listing the versions. Both kinds of content can be
served side by side by one host.

Getter selection happens per source address: github.com sources keep
the release and github getters unchanged, while any other host is
served by the remote getter over HTTPS. Sources with three or more
components are supported, up to the existing 16-component limit, so
nested artifact-repository paths and hosts that embed the upstream
origin in their path all resolve.

Version discovery, constraint solving, checksum verification, and the
binary naming rules match the existing getters. The installed filename
is rebuilt from validated checksum-file fields and never taken from the
server's response, checksum entries matching neither known naming shape
are rejected rather than guessed at, and nothing the remote metadata
supplies is used to fetch from another origin or path. index.json
parsing is covered by fixtures captured from the live releases API, so
a format change there fails tests rather than user installs.

Closes #11164
2026-08-26 14:13:48 +05:30
Sanya 2062b1f478 Dependency upgrade (#13689)
* go.mod version upgrade

* actions upgrade
2026-08-11 14:36:31 +05:30
Erik BergandClaude Fable 5 da0d1a3c44 hcl2template: pass user variable values to plugins as packer_user_variables (#13686)
HCL2 builds do not send the packer_user_variables config key to the
builder, provisioner and post-processor plugins. Legacy JSON builds
send this key (through CoreBuild.packerConfig()). Without the key, the
plugin SDK keeps interpolate.Context.UserVariables nil. Then the
template function {{ user "name" }} fails with 'error calling user:
test'. This failure occurs in each string that a plugin interpolates at
run time, for example the contents of the vagrant post-processor's
vagrantfile_template.

Add the function PackerConfig.userVariableValues(). This function
converts the input variable values to strings, equivalent to the legacy
user variables. The core sends the map at each plugin handoff point:
builder, provisioner, post-processor, and enforced provisioner.

The map does not contain the sensitive variables. A sensitive value
goes to a plugin only if the template refers to it explicitly. The map
does not contain values that are not primitive (lists, maps, objects).
Legacy user variables were always strings.

Co-authored-by: Claude Fable 5 <[email protected]>
2026-08-10 13:32:18 +05:30
Tanmay Jain 856572ec83 version: cut release v1.16.0 (#13682)
* Go Module grpc update

* version: cut release v1.16.0
v1.16.0
2026-07-24 11:33:24 +05:30
Tanmay Jain aea5e6bfa3 fix: prevent path traversal in GitHub plugin getter filename (#13680) 2026-07-22 11:03:11 +05:30
Tanmay Jain 014f8d1bbe FEAT(provenance): Add SLSA provenance attestation and verification (#13667)
* feat(provenance): add SLSA provenance and attestation signing libraries

Add internal/provenance for deriving in-toto subjects from Packer
artifacts, building SLSA Provenance v1 predicates, wrapping in-toto
statements, and best-effort git/CI source detection.

Add internal/attestation for DSSE envelope handling and a pluggable
Signer/Verifier backend supporting key (local PEM), kms (aws/gcp/
azure/hashivault), and keyless (Sigstore Fulcio) modes, plus Sigstore
bundle handling and DSSE/policy verification.

Add the supporting module dependencies in go.mod/go.sum.

* feat(provenance): add provenance post-processor

Add the opt-in "provenance" post-processor that runs after a build,
derives subjects from the artifact, emits DSSE-wrapped SLSA provenance
(and optional SBOM) attestations, signs them via the configured
signing backend, and writes sidecar files (including *.sigstore.json
bundles in keyless mode). Register it in the core post-processor set.

The provenance enable flag is a tri-state so an unset value stays
enabled through HCL2 decoding instead of being silently disabled.

* feat(provenance): add verify-attestation command

Add "packer verify-attestation" to verify signed DSSE attestations
against key, KMS, and keyless policy inputs, including optional
Sigstore bundle checks for Rekor and timestamp evidence. Register the
command in the CLI.

* docs(provenance): add reference CI workflows and changelog

Add reference GitHub Actions workflows under examples/ci for SLSA L2
keyless signing and L3-compatible delegated signing

* fix: lint and tests

* Added docs for Provenance PostProcessor
2026-07-21 13:40:42 +05:30
Tanmay Jain 65f0fb3ff2 Suppress false positive for GO-2026-5932 (#13677) 2026-07-10 12:04:26 +05:30
Tanmay Jain 76135acec4 Pin Action Refs to Latest (#13675) 2026-07-10 11:57:50 +05:30
Tanmay Jain fbcc619a6b security: drop x/crypto/openpgp by upgrading go-github v33 -> v75 (#13676) 2026-07-10 11:20:44 +05:30
dependabot[bot] e64148cb81 build(deps): bump golang.org/x/net in /packer_test/common/plugin_tester (#13664)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.54.0 to 0.55.0.
- [Commits](https://github.com/golang/net/compare/v0.54.0...v0.55.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.55.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-09 12:43:52 +05:30
dependabot[bot] 7ee518a021 build(deps): bump golang.org/x/crypto (#13672)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.47.0 to 0.52.0.
- [Commits](https://github.com/golang/crypto/compare/v0.47.0...v0.52.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.52.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-09 12:38:32 +05:30
Tanmay Jain b233fff1e8 FEAT: Add continue_on_error option to HCL2 provisioner blocks (#13674) 2026-07-09 12:27:18 +05:30
Tanmay Jain 8b304b2b7f FEAT: Add rfc3339_parse and unix_timestamp_parse HCL functions (#13669) 2026-07-08 16:01:46 +05:30
Tanmay Jain b0451d400d Updated Go Modules (#13673) 2026-07-08 15:25:35 +05:30
Tanmay Jain 9dc75dc66c core/hcl2: support optional() attributes in variable object types (#13670) 2026-07-08 15:12:16 +05:30
eshan-tripathi d5e6ccb165 Merge pull request #13671 from hashicorp/remove-old-website
chore: remove website, fix:references
2026-07-08 11:56:48 +05:30
eshan-tripathi ba86798d7b fix: CONTRIBUTING.md 2026-07-07 14:26:50 +05:30
eshan-tripathi d2f2baa4b4 chore: remove website, fix:references 2026-07-07 12:21:06 +05:30