From e182b3d7269c9b7e426545817a48a9a4c3519500 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 28 Nov 2024 17:30:27 +0000 Subject: [PATCH 01/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index ebaf6117..3154660a 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.10.1", - "pack": "v0.35.1" + "pack": "v0.36.0" } From 022d9de0e0791582b4730da7ee6108b577b4d0ed Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 6 Dec 2024 17:31:27 +0000 Subject: [PATCH 02/64] Updating github-config --- .github/workflows/test-pull-request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index 8d861459..0db50113 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -71,7 +71,7 @@ jobs: runs-on: ubuntu-22.04 steps: - name: Upload Artifact - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: event-payload path: ${{ github.event_path }} From 9f420ad7bcf6eb461154690016370ab23d13341e Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 18 Dec 2024 17:30:31 +0000 Subject: [PATCH 03/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 3154660a..ba22ab53 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.10.1", - "pack": "v0.36.0" + "pack": "v0.36.1" } From ecf805cdccb36ff3b353d64d5fd0a55f754f6331 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 28 Dec 2024 17:27:08 +0000 Subject: [PATCH 04/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index ba22ab53..c0eead30 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.10.1", - "pack": "v0.36.1" + "pack": "v0.36.2" } From b84674fb0c2873acb62240489e9f55071525428b Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 16 Jan 2025 17:28:37 +0000 Subject: [PATCH 05/64] Updating github-config --- scripts/.util/tools.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index c0eead30..861517f0 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.10.1", - "pack": "v0.36.2" + "jam": "v2.11.1", + "pack": "v0.36.3" } From aab0bea2ba0c5082527ce388add38b8c7cbb17d4 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sun, 19 Jan 2025 17:27:08 +0000 Subject: [PATCH 06/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 861517f0..6ad7277a 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.11.1", - "pack": "v0.36.3" + "pack": "v0.36.4" } From da40cd8982a98cc920074280f7cc0db04d5860b1 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sun, 23 Mar 2025 17:24:19 +0000 Subject: [PATCH 07/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 6ad7277a..5d08d34a 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.11.1", - "pack": "v0.36.4" + "pack": "v0.37.0" } From b18e26411c1200ad976c4455990c1d112aee32e5 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 10 Apr 2025 17:25:21 +0000 Subject: [PATCH 08/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 5d08d34a..18f6371d 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.11.1", + "jam": "v2.11.2", "pack": "v0.37.0" } From 97804c016d4388353d35cd1021c306be7d943cb8 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 2 May 2025 17:25:17 +0000 Subject: [PATCH 09/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 18f6371d..227fd823 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.11.2", + "jam": "v2.11.4", "pack": "v0.37.0" } From d3d9d2d0409a84040cd158537b2bc837e38f24db Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 17 May 2025 17:24:40 +0000 Subject: [PATCH 10/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 227fd823..b7c7d01d 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.11.4", + "jam": "v2.11.5", "pack": "v0.37.0" } From 2b4cb51e32d582fdf48476b09d56b9fe62e61ad6 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sun, 15 Jun 2025 17:25:07 +0000 Subject: [PATCH 11/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index b7c7d01d..93a8b912 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.11.5", - "pack": "v0.37.0" + "pack": "v0.38.0" } From 88cd945f4c9c63b80be2ed046b7e5a1bd4054729 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 17 Jun 2025 17:26:08 +0000 Subject: [PATCH 12/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 93a8b912..3951713c 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.11.5", - "pack": "v0.38.0" + "pack": "v0.38.1" } From ae77bd31d5d876025153aba43b952e3588c2f538 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 18 Jun 2025 17:26:27 +0000 Subject: [PATCH 13/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 29 ++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 7ba5bd76..c2f5a399 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -4,6 +4,8 @@ on: release: types: - published +env: + REGISTRIES_FILENAME: "registries.json" jobs: push: @@ -11,6 +13,9 @@ jobs: runs-on: ubuntu-22.04 steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Parse Event id: event run: | @@ -23,12 +28,33 @@ jobs: echo "download_url=$(jq -r '.release.assets[] | select(.name | endswith(".cnb")) | .url' "${GITHUB_EVENT_PATH}")" >> "$GITHUB_OUTPUT" - name: Download + id: download uses: paketo-buildpacks/github-config/actions/release/download-asset@main with: url: ${{ steps.event.outputs.download_url }} output: "/github/workspace/buildpackage.cnb" token: ${{ secrets.PAKETO_BOT_GITHUB_TOKEN }} + - name: Parse Configs + id: parse_configs + run: | + registries_filename="${{ env.REGISTRIES_FILENAME }}" + + push_to_dockerhub=true + push_to_gcr=false + + if [[ -f $registries_filename ]]; then + if jq 'has("dockerhub")' $registries_filename > /dev/null; then + push_to_dockerhub=$(jq '.dockerhub' $registries_filename) + fi + if jq 'has("GCR")' $registries_filename > /dev/null; then + push_to_gcr=$(jq '.GCR' $registries_filename) + fi + fi + + echo "push_to_dockerhub=${push_to_dockerhub}" >> "$GITHUB_OUTPUT" + echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" + - name: Validate version run: | buidpackTomlVersion=$(sudo skopeo inspect "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" | jq -r '.Labels."io.buildpacks.buildpackage.metadata" | fromjson | .version') @@ -39,8 +65,8 @@ jobs: fi - name: Push to GCR + if: ${{ steps.parse_configs.outputs.push_to_gcr == 'true' }} env: - GITHUB_TOKEN: ${{ secrets.PAKETO_BOT_GITHUB_TOKEN }} GCR_PUSH_BOT_JSON_KEY: ${{ secrets.GCR_PUSH_BOT_JSON_KEY }} run: | echo "${GCR_PUSH_BOT_JSON_KEY}" | sudo skopeo login --username _json_key --password-stdin gcr.io @@ -50,6 +76,7 @@ jobs: sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://gcr.io/${{ github.repository }}:latest" - name: Push to DockerHub + if: ${{ steps.parse_configs.outputs.push_to_dockerhub == 'true' }} id: push env: DOCKERHUB_USERNAME: ${{ secrets.PAKETO_BUILDPACKS_DOCKERHUB_USERNAME }} From 38830f64962b8dec29427d27d623f98ff1b759d5 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sun, 29 Jun 2025 17:25:23 +0000 Subject: [PATCH 14/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 3951713c..e587dcb1 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { "jam": "v2.11.5", - "pack": "v0.38.1" + "pack": "v0.38.2" } From 2bc1dfbafdab8800845f929063b4c54973f19ab1 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 8 Jul 2025 17:26:22 +0000 Subject: [PATCH 15/64] Updating github-config --- .github/workflows/approve-bot-pr.yml | 4 ++-- .github/workflows/create-draft-release.yml | 8 ++++---- .github/workflows/label-pr.yml | 2 +- .github/workflows/lint-yaml.yml | 2 +- .github/workflows/lint.yml | 2 +- .github/workflows/publish-releases.yml | 4 ++-- .github/workflows/push-buildpackage.yml | 4 ++-- .github/workflows/synchronize-labels.yml | 2 +- .github/workflows/test-pull-request.yml | 8 ++++---- .github/workflows/update-buildpack-toml.yml | 4 ++-- .github/workflows/update-github-config.yml | 4 ++-- .github/workflows/update-go-mod-version.yml | 2 +- 12 files changed, 23 insertions(+), 23 deletions(-) diff --git a/.github/workflows/approve-bot-pr.yml b/.github/workflows/approve-bot-pr.yml index c798e647..8dca7fea 100644 --- a/.github/workflows/approve-bot-pr.yml +++ b/.github/workflows/approve-bot-pr.yml @@ -10,7 +10,7 @@ jobs: download: name: Download PR Artifact if: ${{ github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'success' }} - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: pr-author: ${{ steps.pr-data.outputs.author }} pr-number: ${{ steps.pr-data.outputs.number }} @@ -32,7 +32,7 @@ jobs: name: Approve Bot PRs needs: download if: ${{ needs.download.outputs.pr-author == 'paketo-bot' || needs.download.outputs.pr-author == 'dependabot[bot]' }} - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Check Commit Verification id: unverified-commits diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index 4e897f39..b6cebf64 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -17,7 +17,7 @@ concurrency: release jobs: builders: name: Get Builders for Testing - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: builders: ${{ steps.builders.outputs.builders }} steps: @@ -33,7 +33,7 @@ jobs: printf "builders=%s\n" "${builders}" >> "$GITHUB_OUTPUT" integration: name: Integration Tests - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [builders] strategy: matrix: @@ -53,7 +53,7 @@ jobs: release: name: Release - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: integration steps: - name: Checkout @@ -111,7 +111,7 @@ jobs: failure: name: Alert on Failure - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [ integration, release ] if: ${{ always() && needs.integration.result == 'failure' || needs.release.result == 'failure' }} steps: diff --git a/.github/workflows/label-pr.yml b/.github/workflows/label-pr.yml index b09cdf09..eeb54232 100644 --- a/.github/workflows/label-pr.yml +++ b/.github/workflows/label-pr.yml @@ -15,7 +15,7 @@ concurrency: pr_labels_${{ github.event.number }} jobs: autolabel: name: Ensure Minimal Semver Labels - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Check Minimal Semver Labels uses: mheap/github-action-required-labels@v3 diff --git a/.github/workflows/lint-yaml.yml b/.github/workflows/lint-yaml.yml index e6f4a8b1..538d1e68 100644 --- a/.github/workflows/lint-yaml.yml +++ b/.github/workflows/lint-yaml.yml @@ -8,7 +8,7 @@ on: jobs: lintYaml: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v3 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index d1008181..42de66b5 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -11,7 +11,7 @@ on: jobs: golangci: name: lint - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Setup Go uses: actions/setup-go@v3 diff --git a/.github/workflows/publish-releases.yml b/.github/workflows/publish-releases.yml index 4654c388..44abfb3f 100644 --- a/.github/workflows/publish-releases.yml +++ b/.github/workflows/publish-releases.yml @@ -11,7 +11,7 @@ concurrency: jobs: publish: name: Publish - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Publish Draft Release With Highest Semantic Version id: drafts @@ -23,7 +23,7 @@ jobs: failure: name: Alert on Failure - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [ publish ] if: ${{ always() && needs.publish.result == 'failure' }} steps: diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index c2f5a399..68589c9c 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -10,7 +10,7 @@ env: jobs: push: name: Push - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout @@ -103,7 +103,7 @@ jobs: failure: name: Alert on Failure - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [push] if: ${{ always() && needs.push.result == 'failure' }} steps: diff --git a/.github/workflows/synchronize-labels.yml b/.github/workflows/synchronize-labels.yml index 3aaa0177..105a32b8 100644 --- a/.github/workflows/synchronize-labels.yml +++ b/.github/workflows/synchronize-labels.yml @@ -10,7 +10,7 @@ jobs: synchronize: name: Synchronize Labels runs-on: - - ubuntu-22.04 + - ubuntu-24.04 steps: - uses: actions/checkout@v3 - uses: micnncim/action-label-syncer@v1 diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index 0db50113..a416375c 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -13,7 +13,7 @@ concurrency: jobs: builders: name: Get Builders for Testing - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 outputs: builders: ${{ steps.builders.outputs.builders }} steps: @@ -30,7 +30,7 @@ jobs: integration: name: Integration Tests with Builders - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [builders] strategy: matrix: @@ -53,7 +53,7 @@ jobs: roundup: name: Integration Tests if: ${{ always() }} - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: integration steps: - run: | @@ -68,7 +68,7 @@ jobs: upload: name: Upload Workflow Event Payload - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Upload Artifact uses: actions/upload-artifact@v4 diff --git a/.github/workflows/update-buildpack-toml.yml b/.github/workflows/update-buildpack-toml.yml index ecf1d703..71b721d8 100644 --- a/.github/workflows/update-buildpack-toml.yml +++ b/.github/workflows/update-buildpack-toml.yml @@ -9,7 +9,7 @@ concurrency: buildpack_update jobs: update-buildpack-toml: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 name: Update buildpack.toml steps: @@ -59,7 +59,7 @@ jobs: failure: name: Alert on Failure - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [update-buildpack-toml] if: ${{ always() && needs.update-buildpack-toml.result == 'failure' }} steps: diff --git a/.github/workflows/update-github-config.yml b/.github/workflows/update-github-config.yml index d4c6a3d5..bf175225 100644 --- a/.github/workflows/update-github-config.yml +++ b/.github/workflows/update-github-config.yml @@ -10,7 +10,7 @@ concurrency: github_config_update jobs: build: name: Create PR to update shared files - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Checkout @@ -63,7 +63,7 @@ jobs: failure: name: Alert on Failure - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [build] if: ${{ always() && needs.build.result == 'failure' }} steps: diff --git a/.github/workflows/update-go-mod-version.yml b/.github/workflows/update-go-mod-version.yml index d02d04af..4cf11525 100644 --- a/.github/workflows/update-go-mod-version.yml +++ b/.github/workflows/update-go-mod-version.yml @@ -75,7 +75,7 @@ jobs: failure: name: Alert on Failure - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 needs: [update-go] if: ${{ always() && needs.update-go.result == 'failure' }} steps: From 0264bec5409dbaef535ef3c8f4bab2100f3d287f Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 15 Jul 2025 17:26:42 +0000 Subject: [PATCH 16/64] Updating github-config --- .github/workflows/approve-bot-pr.yml | 2 +- .github/workflows/create-draft-release.yml | 6 +++--- .github/workflows/lint-yaml.yml | 4 ++-- .github/workflows/lint.yml | 2 +- .github/workflows/synchronize-labels.yml | 2 +- .github/workflows/test-pull-request.yml | 4 ++-- .github/workflows/update-buildpack-toml.yml | 2 +- .github/workflows/update-github-config.yml | 4 ++-- 8 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/approve-bot-pr.yml b/.github/workflows/approve-bot-pr.yml index 8dca7fea..3e3df202 100644 --- a/.github/workflows/approve-bot-pr.yml +++ b/.github/workflows/approve-bot-pr.yml @@ -52,7 +52,7 @@ jobs: - name: Checkout if: steps.human-commits.outputs.human_commits == 'false' && steps.unverified-commits.outputs.unverified_commits == 'false' - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Approve if: steps.human-commits.outputs.human_commits == 'false' && steps.unverified-commits.outputs.unverified_commits == 'false' diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index b6cebf64..098a153f 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -22,7 +22,7 @@ jobs: builders: ${{ steps.builders.outputs.builders }} steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Get builders from integration.json id: builders run: | @@ -45,7 +45,7 @@ jobs: with: go-version: 'stable' - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Run Integration Tests env: TMPDIR: "${{ runner.temp }}" @@ -57,7 +57,7 @@ jobs: needs: integration steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-tags: true - name: Reset Draft Release diff --git a/.github/workflows/lint-yaml.yml b/.github/workflows/lint-yaml.yml index 538d1e68..9094b285 100644 --- a/.github/workflows/lint-yaml.yml +++ b/.github/workflows/lint-yaml.yml @@ -10,10 +10,10 @@ jobs: lintYaml: runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Checkout github-config - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: paketo-buildpacks/github-config path: github-config diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 42de66b5..6922b4b0 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -19,7 +19,7 @@ jobs: go-version: 'stable' - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: golangci-lint uses: golangci/golangci-lint-action@v3 diff --git a/.github/workflows/synchronize-labels.yml b/.github/workflows/synchronize-labels.yml index 105a32b8..82f97f99 100644 --- a/.github/workflows/synchronize-labels.yml +++ b/.github/workflows/synchronize-labels.yml @@ -12,7 +12,7 @@ jobs: runs-on: - ubuntu-24.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: micnncim/action-label-syncer@v1 env: GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index a416375c..7368dc99 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -18,7 +18,7 @@ jobs: builders: ${{ steps.builders.outputs.builders }} steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Get builders from integration.json id: builders run: | @@ -43,7 +43,7 @@ jobs: go-version: 'stable' - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Run Integration Tests env: diff --git a/.github/workflows/update-buildpack-toml.yml b/.github/workflows/update-buildpack-toml.yml index 71b721d8..815ebc9f 100644 --- a/.github/workflows/update-buildpack-toml.yml +++ b/.github/workflows/update-buildpack-toml.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Checkout Branch uses: paketo-buildpacks/github-config/actions/pull-request/checkout-branch@main diff --git a/.github/workflows/update-github-config.yml b/.github/workflows/update-github-config.yml index bf175225..9eaf01cf 100644 --- a/.github/workflows/update-github-config.yml +++ b/.github/workflows/update-github-config.yml @@ -14,12 +14,12 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: token: ${{ secrets.PAKETO_BOT_GITHUB_TOKEN }} - name: Checkout github-config - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: paketo-buildpacks/github-config path: github-config From c1ba0a3c3b63e9e1af6bf76e5e7795b817331805 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 18 Jul 2025 17:26:52 +0000 Subject: [PATCH 17/64] Updating github-config --- .github/workflows/create-draft-release.yml | 2 +- .github/workflows/label-pr.yml | 2 +- .github/workflows/lint-yaml.yml | 2 +- .github/workflows/lint.yml | 2 +- .github/workflows/test-pull-request.yml | 2 +- scripts/.util/tools.json | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index 098a153f..63771356 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -41,7 +41,7 @@ jobs: fail-fast: false # don't cancel all test jobs when one fails steps: - name: Setup Go - uses: actions/setup-go@v3 + uses: actions/setup-go@v5 with: go-version: 'stable' - name: Checkout diff --git a/.github/workflows/label-pr.yml b/.github/workflows/label-pr.yml index eeb54232..55f68506 100644 --- a/.github/workflows/label-pr.yml +++ b/.github/workflows/label-pr.yml @@ -18,7 +18,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Check Minimal Semver Labels - uses: mheap/github-action-required-labels@v3 + uses: mheap/github-action-required-labels@v5 with: count: 1 labels: semver:major, semver:minor, semver:patch diff --git a/.github/workflows/lint-yaml.yml b/.github/workflows/lint-yaml.yml index 9094b285..930add17 100644 --- a/.github/workflows/lint-yaml.yml +++ b/.github/workflows/lint-yaml.yml @@ -19,7 +19,7 @@ jobs: path: github-config - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: 3.8 diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 6922b4b0..8de78b6a 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Setup Go - uses: actions/setup-go@v3 + uses: actions/setup-go@v5 with: go-version: 'stable' diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index 7368dc99..3238f997 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -38,7 +38,7 @@ jobs: fail-fast: false # don't cancel all test jobs when one fails steps: - name: Setup Go - uses: actions/setup-go@v3 + uses: actions/setup-go@v5 with: go-version: 'stable' diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index e587dcb1..21deabc9 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.11.5", + "jam": "v2.12.0", "pack": "v0.38.2" } From 39760d84620b1e1486250110749bd543f652fcd0 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 30 Jul 2025 17:27:05 +0000 Subject: [PATCH 18/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 21deabc9..32f41f77 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.12.0", + "jam": "v2.12.1", "pack": "v0.38.2" } From 9b86fe54a1a1d03d8fce38b100644af43c239c6e Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 13 Aug 2025 17:24:58 +0000 Subject: [PATCH 19/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 32f41f77..e3128e03 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.12.1", + "jam": "v2.13.0", "pack": "v0.38.2" } From 0f3d11ba817be86f632d4b2fbcae918a2b0683bc Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 14 Aug 2025 17:26:16 +0000 Subject: [PATCH 20/64] Updating github-config --- .github/workflows/create-draft-release.yml | 6 +++--- .github/workflows/lint.yml | 8 ++++---- .github/workflows/test-pull-request.yml | 8 ++++---- .github/workflows/update-go-mod-version.yml | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index 63771356..96b69450 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -40,12 +40,12 @@ jobs: builder: ${{ fromJSON(needs.builders.outputs.builders) }} fail-fast: false # don't cancel all test jobs when one fails steps: + - name: Checkout + uses: actions/checkout@v4 - name: Setup Go uses: actions/setup-go@v5 with: - go-version: 'stable' - - name: Checkout - uses: actions/checkout@v4 + go-version-file: go.mod - name: Run Integration Tests env: TMPDIR: "${{ runner.temp }}" diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 8de78b6a..5db0a353 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -13,13 +13,13 @@ jobs: name: lint runs-on: ubuntu-24.04 steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Go uses: actions/setup-go@v5 with: - go-version: 'stable' - - - name: Checkout - uses: actions/checkout@v4 + go-version-file: go.mod - name: golangci-lint uses: golangci/golangci-lint-action@v3 diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index 3238f997..e6f5bd36 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -37,13 +37,13 @@ jobs: builder: ${{ fromJSON(needs.builders.outputs.builders) }} fail-fast: false # don't cancel all test jobs when one fails steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Go uses: actions/setup-go@v5 with: - go-version: 'stable' - - - name: Checkout - uses: actions/checkout@v4 + go-version-file: go.mod - name: Run Integration Tests env: diff --git a/.github/workflows/update-go-mod-version.yml b/.github/workflows/update-go-mod-version.yml index 4cf11525..535041c3 100644 --- a/.github/workflows/update-go-mod-version.yml +++ b/.github/workflows/update-go-mod-version.yml @@ -22,7 +22,7 @@ jobs: id: setup-go uses: actions/setup-go@v5 with: - go-version: 'stable' + go-version-file: go.mod - name: Get current go toolchain version id: current-go-version uses: paketo-buildpacks/github-config/actions/update-go-mod-version@main From 6197ccec30f3ab262ec4d5b796c02807989cce22 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 22 Aug 2025 17:25:45 +0000 Subject: [PATCH 21/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index e3128e03..bbb84a37 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.13.0", + "jam": "v2.14.0", "pack": "v0.38.2" } From 438af4ffe505ca09894f6a064ecc948c33888b34 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 23 Aug 2025 17:24:20 +0000 Subject: [PATCH 22/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index bbb84a37..06c07a89 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.14.0", + "jam": "v2.14.1", "pack": "v0.38.2" } From 81917a526aedb777a388e5f707372b4ca0641b89 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sun, 24 Aug 2025 17:24:51 +0000 Subject: [PATCH 23/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 06c07a89..7ad3fcb2 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.14.1", + "jam": "v2.14.2", "pack": "v0.38.2" } From 7cf15cd2773bb21cb7c1bcff25d15d2bfc4110dd Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 11 Sep 2025 17:24:52 +0000 Subject: [PATCH 24/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 7ad3fcb2..ef048568 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,4 @@ { - "jam": "v2.14.2", + "jam": "v2.15.0", "pack": "v0.38.2" } From a96e5466e929c248ac96548ec6eddb424383f77f Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 16 Sep 2025 17:25:14 +0000 Subject: [PATCH 25/64] Updating github-config --- scripts/package.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/package.sh b/scripts/package.sh index 34e9a29c..7d75ec4b 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -143,6 +143,11 @@ function buildpackage::create() { pack \ buildpack package "${output}" \ "${args[@]}" + + if [[ -e "${BUILD_DIR}/buildpackage-linux-amd64.cnb" ]]; then + echo "Copying linux-amd64 buildpackage to buildpackage.cnb" + cp "${BUILD_DIR}/buildpackage-linux-amd64.cnb" "${BUILD_DIR}/buildpackage.cnb" + fi } main "${@:-}" From 7b17fd793dc6535a179fa050f275f4917b0b9591 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 19 Sep 2025 17:24:38 +0000 Subject: [PATCH 26/64] Updating github-config --- .github/workflows/approve-bot-pr.yml | 2 +- .github/workflows/create-draft-release.yml | 8 ++++---- .github/workflows/lint-yaml.yml | 4 ++-- .github/workflows/lint.yml | 4 ++-- .github/workflows/push-buildpackage.yml | 2 +- .github/workflows/synchronize-labels.yml | 2 +- .github/workflows/test-pull-request.yml | 6 +++--- .github/workflows/update-buildpack-toml.yml | 2 +- .github/workflows/update-github-config.yml | 4 ++-- .github/workflows/update-go-mod-version.yml | 4 ++-- 10 files changed, 19 insertions(+), 19 deletions(-) diff --git a/.github/workflows/approve-bot-pr.yml b/.github/workflows/approve-bot-pr.yml index 3e3df202..d958d9a4 100644 --- a/.github/workflows/approve-bot-pr.yml +++ b/.github/workflows/approve-bot-pr.yml @@ -52,7 +52,7 @@ jobs: - name: Checkout if: steps.human-commits.outputs.human_commits == 'false' && steps.unverified-commits.outputs.unverified_commits == 'false' - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Approve if: steps.human-commits.outputs.human_commits == 'false' && steps.unverified-commits.outputs.unverified_commits == 'false' diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index 96b69450..a59a9886 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -22,7 +22,7 @@ jobs: builders: ${{ steps.builders.outputs.builders }} steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Get builders from integration.json id: builders run: | @@ -41,9 +41,9 @@ jobs: fail-fast: false # don't cancel all test jobs when one fails steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Setup Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v6 with: go-version-file: go.mod - name: Run Integration Tests @@ -57,7 +57,7 @@ jobs: needs: integration steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: fetch-tags: true - name: Reset Draft Release diff --git a/.github/workflows/lint-yaml.yml b/.github/workflows/lint-yaml.yml index 930add17..f4f032bc 100644 --- a/.github/workflows/lint-yaml.yml +++ b/.github/workflows/lint-yaml.yml @@ -10,10 +10,10 @@ jobs: lintYaml: runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - name: Checkout github-config - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: repository: paketo-buildpacks/github-config path: github-config diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 5db0a353..31737ef6 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -14,10 +14,10 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Setup Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v6 with: go-version-file: go.mod diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 68589c9c..1f0e06d7 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Parse Event id: event diff --git a/.github/workflows/synchronize-labels.yml b/.github/workflows/synchronize-labels.yml index 82f97f99..fc0f5163 100644 --- a/.github/workflows/synchronize-labels.yml +++ b/.github/workflows/synchronize-labels.yml @@ -12,7 +12,7 @@ jobs: runs-on: - ubuntu-24.04 steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v5 - uses: micnncim/action-label-syncer@v1 env: GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index e6f5bd36..a31d191d 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -18,7 +18,7 @@ jobs: builders: ${{ steps.builders.outputs.builders }} steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Get builders from integration.json id: builders run: | @@ -38,10 +38,10 @@ jobs: fail-fast: false # don't cancel all test jobs when one fails steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Setup Go - uses: actions/setup-go@v5 + uses: actions/setup-go@v6 with: go-version-file: go.mod diff --git a/.github/workflows/update-buildpack-toml.yml b/.github/workflows/update-buildpack-toml.yml index 815ebc9f..6eb3c7b4 100644 --- a/.github/workflows/update-buildpack-toml.yml +++ b/.github/workflows/update-buildpack-toml.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Checkout Branch uses: paketo-buildpacks/github-config/actions/pull-request/checkout-branch@main diff --git a/.github/workflows/update-github-config.yml b/.github/workflows/update-github-config.yml index 9eaf01cf..60d93cee 100644 --- a/.github/workflows/update-github-config.yml +++ b/.github/workflows/update-github-config.yml @@ -14,12 +14,12 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: token: ${{ secrets.PAKETO_BOT_GITHUB_TOKEN }} - name: Checkout github-config - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: repository: paketo-buildpacks/github-config path: github-config diff --git a/.github/workflows/update-go-mod-version.yml b/.github/workflows/update-go-mod-version.yml index 535041c3..5cc1a944 100644 --- a/.github/workflows/update-go-mod-version.yml +++ b/.github/workflows/update-go-mod-version.yml @@ -13,14 +13,14 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out code - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Checkout PR Branch uses: paketo-buildpacks/github-config/actions/pull-request/checkout-branch@main with: branch: automation/go-mod-update/update-main - name: Setup Go id: setup-go - uses: actions/setup-go@v5 + uses: actions/setup-go@v6 with: go-version-file: go.mod - name: Get current go toolchain version From 0bef0524523ca5bc50928e2f60e66d1318d1f0fa Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Mon, 22 Sep 2025 17:24:27 +0000 Subject: [PATCH 27/64] Updating github-config --- .github/workflows/create-draft-release.yml | 5 + .github/workflows/push-buildpackage.yml | 76 +++++++---- scripts/.util/tools.json | 3 +- scripts/.util/tools.sh | 54 ++++++++ scripts/package.sh | 63 ++++++++- scripts/publish.sh | 142 +++++++++++++++++++++ 6 files changed, 312 insertions(+), 31 deletions(-) create mode 100755 scripts/publish.sh diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index a59a9886..903d2302 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -106,6 +106,11 @@ jobs: "path": "build/buildpackage.cnb", "name": "${{ github.event.repository.name }}-${{ steps.tag.outputs.tag }}.cnb", "content_type": "application/x-tar" + }, + { + "path": "build/buildpack-release-artifact.tgz", + "name": "${{ github.event.repository.name }}-${{ steps.tag.outputs.tag }}.tgz", + "content_type": "application/gzip" } ] diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 1f0e06d7..71f93300 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -6,6 +6,12 @@ on: - published env: REGISTRIES_FILENAME: "registries.json" + GCR_REGISTRY: "gcr.io" + GCR_PASSWORD: ${{ secrets.GCR_PUSH_BOT_JSON_KEY }} + GCR_USERNAME: "_json_key" + DOCKERHUB_REGISTRY: docker.io + DOCKERHUB_USERNAME: ${{ secrets.PAKETO_BUILDPACKS_DOCKERHUB_USERNAME }} + DOCKERHUB_PASSWORD: ${{ secrets.PAKETO_BUILDPACKS_DOCKERHUB_PASSWORD }} jobs: push: @@ -25,14 +31,13 @@ jobs: echo "tag_full=${FULL_VERSION}" >> "$GITHUB_OUTPUT" echo "tag_minor=${MINOR_VERSION}" >> "$GITHUB_OUTPUT" echo "tag_major=${MAJOR_VERSION}" >> "$GITHUB_OUTPUT" - echo "download_url=$(jq -r '.release.assets[] | select(.name | endswith(".cnb")) | .url' "${GITHUB_EVENT_PATH}")" >> "$GITHUB_OUTPUT" + echo "download_tgz_file_url=$(jq -r '.release.assets[] | select(.name | endswith(".tgz")) | .url' "${GITHUB_EVENT_PATH}")" >> "$GITHUB_OUTPUT" - - name: Download - id: download + - name: Download .tgz buildpack release artifact uses: paketo-buildpacks/github-config/actions/release/download-asset@main with: - url: ${{ steps.event.outputs.download_url }} - output: "/github/workspace/buildpackage.cnb" + url: ${{ steps.event.outputs.download_tgz_file_url }} + output: "/github/workspace/buildpack-release-artifact.tgz" token: ${{ secrets.PAKETO_BOT_GITHUB_TOKEN }} - name: Parse Configs @@ -55,50 +60,69 @@ jobs: echo "push_to_dockerhub=${push_to_dockerhub}" >> "$GITHUB_OUTPUT" echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" + - name: Install yj and crane + uses: buildpacks/github-actions/setup-tools@v5.5.4 + - name: Validate version run: | - buidpackTomlVersion=$(sudo skopeo inspect "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" | jq -r '.Labels."io.buildpacks.buildpackage.metadata" | fromjson | .version') + buidpackTomlVersion=$(tar -xzf buildpack-release-artifact.tgz --to-stdout buildpack.toml | yj -tj | jq -r .buildpack.version) githubReleaseVersion="${{ steps.event.outputs.tag_full }}" if [[ "$buidpackTomlVersion" != "$githubReleaseVersion" ]]; then echo "Version in buildpack.toml ($buidpackTomlVersion) and github release ($githubReleaseVersion) are not identical" exit 1 fi + - name: Docker login docker.io + uses: docker/login-action@v3 + with: + username: ${{ env.DOCKERHUB_USERNAME }} + password: ${{ env.DOCKERHUB_PASSWORD }} + registry: ${{ env.DOCKERHUB_REGISTRY }} + + - name: Docker login gcr.io + uses: docker/login-action@v3 + if: ${{ steps.parse_configs.outputs.push_to_gcr == 'true' }} + with: + username: ${{ env.GCR_USERNAME }} + password: ${{ env.GCR_PASSWORD }} + registry: ${{ env.GCR_REGISTRY }} + - name: Push to GCR if: ${{ steps.parse_configs.outputs.push_to_gcr == 'true' }} - env: - GCR_PUSH_BOT_JSON_KEY: ${{ secrets.GCR_PUSH_BOT_JSON_KEY }} run: | - echo "${GCR_PUSH_BOT_JSON_KEY}" | sudo skopeo login --username _json_key --password-stdin gcr.io - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_full }}" - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_minor }}" - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_major }}" - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://gcr.io/${{ github.repository }}:latest" + ./scripts/publish.sh \ + --archive-path buildpack-release-artifact.tgz \ + --image-ref "gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_full }}" + + crane copy "gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_full }}" "gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_minor }}" + crane copy "gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_full }}" "gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_major }}" + crane copy "gcr.io/${{ github.repository }}:${{ steps.event.outputs.tag_full }}" "gcr.io/${{ github.repository }}:latest" - name: Push to DockerHub if: ${{ steps.parse_configs.outputs.push_to_dockerhub == 'true' }} id: push - env: - DOCKERHUB_USERNAME: ${{ secrets.PAKETO_BUILDPACKS_DOCKERHUB_USERNAME }} - DOCKERHUB_PASSWORD: ${{ secrets.PAKETO_BUILDPACKS_DOCKERHUB_PASSWORD }} - GITHUB_REPOSITORY_OWNER: ${{ github.repository_owner }} run: | - REPOSITORY="${GITHUB_REPOSITORY_OWNER/-/}/${GITHUB_REPOSITORY#${GITHUB_REPOSITORY_OWNER}/}" # translates 'paketo-buildpacks/bundle-install' to 'paketobuildpacks/bundle-install' - IMAGE="index.docker.io/${REPOSITORY}" - echo "${DOCKERHUB_PASSWORD}" | sudo skopeo login --username "${DOCKERHUB_USERNAME}" --password-stdin index.docker.io - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://${IMAGE}:${{ steps.event.outputs.tag_full }}" - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://${IMAGE}:${{ steps.event.outputs.tag_minor }}" - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://${IMAGE}:${{ steps.event.outputs.tag_major }}" - sudo skopeo copy "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" "docker://${IMAGE}:latest" + IMAGE="${GITHUB_REPOSITORY_OWNER/-/}/${GITHUB_REPOSITORY#${GITHUB_REPOSITORY_OWNER}/}" # translates 'paketo-buildpacks/bundle-install' to 'paketobuildpacks/bundle-install' + + ./scripts/publish.sh \ + --archive-path buildpack-release-artifact.tgz \ + --image-ref "${DOCKERHUB_REGISTRY}/${IMAGE}:${{ steps.event.outputs.tag_full }}" + + pushed_image_index_digest=$(crane digest "${DOCKERHUB_REGISTRY}/${IMAGE}:${{ steps.event.outputs.tag_full }}" | xargs) + + crane copy "${DOCKERHUB_REGISTRY}/${IMAGE}:${{ steps.event.outputs.tag_full }}" "${DOCKERHUB_REGISTRY}/${IMAGE}:${{ steps.event.outputs.tag_minor }}" + crane copy "${DOCKERHUB_REGISTRY}/${IMAGE}:${{ steps.event.outputs.tag_full }}" "${DOCKERHUB_REGISTRY}/${IMAGE}:${{ steps.event.outputs.tag_major }}" + crane copy "${DOCKERHUB_REGISTRY}/${IMAGE}:${{ steps.event.outputs.tag_full }}" "${DOCKERHUB_REGISTRY}/${IMAGE}:latest" + echo "image=${IMAGE}" >> "$GITHUB_OUTPUT" - echo "digest=$(sudo skopeo inspect "oci-archive:${GITHUB_WORKSPACE}/buildpackage.cnb" | jq -r .Digest)" >> "$GITHUB_OUTPUT" + echo "digest=$pushed_image_index_digest" >> "$GITHUB_OUTPUT" - name: Register with CNB Registry uses: docker://ghcr.io/buildpacks/actions/registry/request-add-entry:main with: id: ${{ github.repository }} version: ${{ steps.event.outputs.tag_full }} - address: ${{ steps.push.outputs.image }}@${{ steps.push.outputs.digest }} + address: index.docker.io/${{ steps.push.outputs.image }}@${{ steps.push.outputs.digest }} token: ${{ secrets.PAKETO_BOT_GITHUB_TOKEN }} failure: diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index ef048568..770a8805 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,4 +1,5 @@ { "jam": "v2.15.0", - "pack": "v0.38.2" + "pack": "v0.38.2", + "yj": "v5.1.0" } diff --git a/scripts/.util/tools.sh b/scripts/.util/tools.sh index acca6135..5868b7e2 100644 --- a/scripts/.util/tools.sh +++ b/scripts/.util/tools.sh @@ -164,6 +164,60 @@ function util::tools::pack::install() { fi } +function util::tools::yj::install() { + local dir token + token="" + + while [[ "${#}" != 0 ]]; do + case "${1}" in + --directory) + dir="${2}" + shift 2 + ;; + + --token) + token="${2}" + shift 2 + ;; + + *) + util::print::error "unknown argument \"${1}\"" + esac + done + + mkdir -p "${dir}" + util::tools::path::export "${dir}" + + if [[ ! -f "${dir}/yj" ]]; then + local version curl_args os arch + + version="$(jq -r .yj "$(dirname "${BASH_SOURCE[0]}")/tools.json")" + + curl_args=( + "--fail" + "--silent" + "--location" + "--output" "${dir}/yj" + ) + + if [[ "${token}" != "" ]]; then + curl_args+=("--header" "Authorization: Token ${token}") + fi + + util::print::title "Installing yj ${version}" + + os=$(util::tools::os macos) + arch=$(util::tools::arch) + + curl "https://github.com/sclevine/yj/releases/download/${version}/yj-${os}-${arch}" \ + "${curl_args[@]}" + + chmod +x "${dir}/yj" + else + util::print::info "Using yj $("${dir}"/yj -v)" + fi +} + function util::tools::tests::checkfocus() { testout="${1}" if grep -q 'Focused: [1-9]' "${testout}"; then diff --git a/scripts/package.sh b/scripts/package.sh index 7d75ec4b..d6e4cfea 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -71,6 +71,7 @@ function main { tools::install "${token}" buildpack::archive "${version}" + buildpack::release::archive buildpackage::create "${output}" "${flags[@]}" } @@ -125,6 +126,57 @@ function buildpack::archive() { --output "${BUILD_DIR}/buildpack.tgz" } +function buildpack::release::archive() { + local tmp_dir + + util::print::title "Packaging buildpack into ${BUILD_DIR}/buildpack-release-artifact.tgz..." + + tmp_dir=$(mktemp -d -p $ROOT_DIR) + + cat <<'README_EOF' > $tmp_dir/README.md +# Composite buildpack release artifact + +This is a buildpack release artifact that contains everything needed to package and publish a composite buildpack. Composite buildpacks are a logic grouping of other buildpacks. + +It contains the following files: + +* `buildpack.toml` - this is needed because it contains the buildpacks and ordering information for the composite buildpack +* `package.toml` - this is needed because it contains the dependencies (and URIs) that let pack know where to find the buildpacks referenced in `buildpack.toml`. + * `package.toml` can contain targets (platforms) for multi-arch support +* `build/buildpack.tgz` - this is needed because it contains the actual buildpack referenced in `package.toml` + +## package locally + +To package this buildpack to local .cnb file(s) run the following. + +``` +pack buildpack package mybuildpack.cnb --format file --config package.toml +``` + +## package and publish to a registry + +To package this buildpack and publish it to a registry run the following. + +* Note that as of pack v0.38.2 at least one target is required in package.toml or on the command line when publishing to a registry with `--publish`. + +* replace SOME-REGISTRY with your registry (e.g. index.docker.io/yourdockerhubusername) +* replace SOME-VERSION with the version you want to publish (e.g. 0.0.1) + +``` +pack buildpack package SOME-REGISTRY/mybuildpack:SOME-VERSION --format image --config package.toml --publish +``` +README_EOF + + mkdir -p $tmp_dir/build + cp ${BUILD_DIR}/buildpack.tgz $tmp_dir/build + cp ${ROOT_DIR}/package.toml $tmp_dir/ + # add the buildpack.toml from the tgz file because it has the version populated + tar -xzf ${BUILD_DIR}/buildpack.tgz -C $tmp_dir/ buildpack.toml + + tar -cvzf ${BUILD_DIR}/buildpack-release-artifact.tgz -C $tmp_dir $(ls $tmp_dir) + rm -rf $tmp_dir +} + function buildpackage::create() { local output flags output="${1}" @@ -142,11 +194,14 @@ function buildpackage::create() { pack \ buildpack package "${output}" \ - "${args[@]}" + ${args[@]} + + # Use the local architecture to support running locally and in CI, which will be linux/amd64 by default. + arch=$(util::tools::arch) - if [[ -e "${BUILD_DIR}/buildpackage-linux-amd64.cnb" ]]; then - echo "Copying linux-amd64 buildpackage to buildpackage.cnb" - cp "${BUILD_DIR}/buildpackage-linux-amd64.cnb" "${BUILD_DIR}/buildpackage.cnb" + if [[ -e "${BUILD_DIR}/buildpackage-linux-${arch}.cnb" ]]; then + echo "Copying linux-${arch} buildpackage to buildpackage.cnb" + cp "${BUILD_DIR}/buildpackage-linux-${arch}.cnb" "${BUILD_DIR}/buildpackage.cnb" fi } diff --git a/scripts/publish.sh b/scripts/publish.sh new file mode 100755 index 00000000..b6157fd8 --- /dev/null +++ b/scripts/publish.sh @@ -0,0 +1,142 @@ +#!/usr/bin/env bash + +set -eu +set -o pipefail + +readonly ROOT_DIR="$(cd "$(dirname "${0}")/.." && pwd)" +readonly BIN_DIR="${ROOT_DIR}/.bin" + +# shellcheck source=SCRIPTDIR/.util/tools.sh +source "${ROOT_DIR}/scripts/.util/tools.sh" + +# shellcheck source=SCRIPTDIR/.util/print.sh +source "${ROOT_DIR}/scripts/.util/print.sh" + +function main { + local archive_path image_ref token + token="" + + while [[ "${#}" != 0 ]]; do + case "${1}" in + --archive-path | -a) + archive_path="${2}" + shift 2 + ;; + + --image-ref | -i) + image_ref="${2}" + shift 2 + ;; + + --token | -t) + token="${2}" + shift 2 + ;; + + --help | -h) + shift 1 + usage + exit 0 + ;; + + "") + # skip if the argument is empty + shift 1 + ;; + + *) + util::print::error "unknown argument \"${1}\"" + ;; + esac + done + + if [[ -z "${image_ref:-}" ]]; then + usage + util::print::error "--image-ref is required" + fi + + if [[ -z "${archive_path:-}" ]]; then + util::print::info "Using default archive path: ${ROOT_DIR}/build/buildpack-release-artifact.tgz" + archive_path="${ROOT_DIR}/build/buildpack-release-artifact.tgz" + else + archive_path="${archive_path}" + fi + + repo::prepare + + tools::install "${token}" + + buildpack::publish "${image_ref}" "${archive_path}" +} + +function usage() { + cat <<-USAGE +Publishes a composite buildpack to a registry. + +OPTIONS + -a, --archive-path Path to the buildpack release artifact (default: ${ROOT_DIR}/build/buildpack-release-artifact.tgz) (optional) + -h, --help Prints the command usage + -i, --image-ref List of image reference to publish to (required) + -t, --token Token used to download assets from GitHub (e.g. jam, pack, etc) (optional) + +USAGE +} + +function repo::prepare() { + util::print::title "Preparing repo..." + + mkdir -p "${BIN_DIR}" + + export PATH="${BIN_DIR}:${PATH}" +} + +function tools::install() { + local token + token="${1}" + + util::tools::pack::install \ + --directory "${BIN_DIR}" \ + --token "${token}" + + util::tools::yj::install \ + --directory "${BIN_DIR}" \ + --token "${token}" +} + +function buildpack::publish() { + local image_ref archive_path tmp_dir + image_ref="${1}" + archive_path="${2}" + + util::print::title "Publishing composite buildpack..." + + util::print::info "Extracting archive..." + tmp_dir=$(mktemp -d -p $ROOT_DIR) + tar -xvf $archive_path -C $tmp_dir + + util::print::info "Publishing buildpack to ${image_ref}" + + cd $tmp_dir + + # If package.toml has no targets we must specify one on the command line, otherwise pack will complain. + # This is here for backward compatibility but eventually all package.toml files should have targets defined. + targets="" + if cat package.toml | yj -tj | jq -r .targets | grep -q null; then + # Use the local architecture to support running locally and in CI, which will be linux/amd64 by default. + arch=$(util::tools::arch) + targets="--target linux/${arch}" + echo "package.toml has no targets so ${targets} will be used" + fi + + pack \ + buildpack package "${image_ref}" \ + --config package.toml \ + --format image \ + --publish \ + ${targets} + + cd $ROOT_DIR + rm -rf $tmp_dir +} + +main "${@:-}" From c7737032d31399ff0471d00f923c773cef3bb367 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 23 Sep 2025 17:26:37 +0000 Subject: [PATCH 28/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 71f93300..ac554d35 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.5.4 + uses: buildpacks/github-actions/setup-tools@v5.9.4 - name: Validate version run: | From 55bd058d3f58073dbe150671f864831f94103a41 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 24 Sep 2025 17:25:43 +0000 Subject: [PATCH 29/64] Updating github-config --- scripts/package.sh | 40 +++++++++++++++++++++++++++++++--------- scripts/publish.sh | 3 ++- 2 files changed, 33 insertions(+), 10 deletions(-) diff --git a/scripts/package.sh b/scripts/package.sh index d6e4cfea..015e07d0 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -111,6 +111,10 @@ function tools::install() { util::tools::pack::install \ --directory "${BIN_DIR}" \ --token "${token}" + + util::tools::yj::install \ + --directory "${BIN_DIR}" \ + --token "${token}" } function buildpack::archive() { @@ -131,7 +135,7 @@ function buildpack::release::archive() { util::print::title "Packaging buildpack into ${BUILD_DIR}/buildpack-release-artifact.tgz..." - tmp_dir=$(mktemp -d -p $ROOT_DIR) + tmp_dir=$(mktemp -d -p $BUILD_DIR) cat <<'README_EOF' > $tmp_dir/README.md # Composite buildpack release artifact @@ -143,7 +147,7 @@ It contains the following files: * `buildpack.toml` - this is needed because it contains the buildpacks and ordering information for the composite buildpack * `package.toml` - this is needed because it contains the dependencies (and URIs) that let pack know where to find the buildpacks referenced in `buildpack.toml`. * `package.toml` can contain targets (platforms) for multi-arch support -* `build/buildpack.tgz` - this is needed because it contains the actual buildpack referenced in `package.toml` +* `build/buildpack.tgz` - this is added because it is referenced in `package.toml` by some buildpacks ## package locally @@ -173,36 +177,54 @@ README_EOF # add the buildpack.toml from the tgz file because it has the version populated tar -xzf ${BUILD_DIR}/buildpack.tgz -C $tmp_dir/ buildpack.toml - tar -cvzf ${BUILD_DIR}/buildpack-release-artifact.tgz -C $tmp_dir $(ls $tmp_dir) + tar -czf ${BUILD_DIR}/buildpack-release-artifact.tgz -C $tmp_dir $(ls $tmp_dir) rm -rf $tmp_dir } function buildpackage::create() { - local output flags + local output flags release_archive_path tmp_dir output="${1}" flags=("${@:2}") + release_archive_path="${BUILD_DIR}/buildpack-release-artifact.tgz" util::print::title "Packaging buildpack..." + util::print::info "Extracting release archive..." + tmp_dir=$(mktemp -d -p $BUILD_DIR) + tar -xvf $release_archive_path -C $tmp_dir + + current_dir=$(pwd) + cd $tmp_dir + args=( - --config "${ROOT_DIR}/package.toml" + --config package.toml --format file ) - args+=("${flags[@]}") + # Use the local architecture to support running locally and in CI, which will be linux/amd64 by default. + arch=$(util::tools::arch) + + # If package.toml has no targets we must specify one on the command line, otherwise pack will complain. + # This is here for backward compatibility but eventually all package.toml files should have targets defined. + if cat package.toml | yj -tj | jq -r .targets | grep -q null; then + echo "package.toml has no targets so --target linux/${arch} will be passed to pack" + args+=("--target linux/${arch}") + fi + + set -x pack \ buildpack package "${output}" \ ${args[@]} - # Use the local architecture to support running locally and in CI, which will be linux/amd64 by default. - arch=$(util::tools::arch) - if [[ -e "${BUILD_DIR}/buildpackage-linux-${arch}.cnb" ]]; then echo "Copying linux-${arch} buildpackage to buildpackage.cnb" cp "${BUILD_DIR}/buildpackage-linux-${arch}.cnb" "${BUILD_DIR}/buildpackage.cnb" fi + + cd $current_dir + rm -rf $tmp_dir } main "${@:-}" diff --git a/scripts/publish.sh b/scripts/publish.sh index b6157fd8..f330ba7c 100755 --- a/scripts/publish.sh +++ b/scripts/publish.sh @@ -116,6 +116,7 @@ function buildpack::publish() { util::print::info "Publishing buildpack to ${image_ref}" + current_dir=$(pwd) cd $tmp_dir # If package.toml has no targets we must specify one on the command line, otherwise pack will complain. @@ -135,7 +136,7 @@ function buildpack::publish() { --publish \ ${targets} - cd $ROOT_DIR + cd $current_dir rm -rf $tmp_dir } From 0a6d11dd85e0962dd72338a52a51f9823f883eeb Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 26 Sep 2025 17:24:44 +0000 Subject: [PATCH 30/64] Updating github-config --- scripts/package.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/package.sh b/scripts/package.sh index 015e07d0..aa55b40e 100755 --- a/scripts/package.sh +++ b/scripts/package.sh @@ -213,7 +213,6 @@ function buildpackage::create() { args+=("--target linux/${arch}") fi - set -x pack \ buildpack package "${output}" \ ${args[@]} From 16beb6c2e0ccb1094fa6581950c06b4407cd7a2d Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 7 Oct 2025 17:25:29 +0000 Subject: [PATCH 31/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index ac554d35..781f8256 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.9.4 + uses: buildpacks/github-actions/setup-tools@v5.9.5 - name: Validate version run: | From dce154535608f56052b6c30f6d6ba7146282745e Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 30 Oct 2025 17:26:18 +0000 Subject: [PATCH 32/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 2 +- scripts/.util/tools.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 781f8256..3daf8d42 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.9.5 + uses: buildpacks/github-actions/setup-tools@v5.9.6 - name: Validate version run: | diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 770a8805..e063bd02 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,5 +1,5 @@ { - "jam": "v2.15.0", + "jam": "v2.15.1", "pack": "v0.38.2", "yj": "v5.1.0" } From 69e8bfbced5fd7cd7ce8d5f50fd4fa1b5cf596dd Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 31 Oct 2025 17:26:12 +0000 Subject: [PATCH 33/64] Updating github-config --- .github/workflows/lint.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 31737ef6..d9c79474 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -1,9 +1,6 @@ name: Lint on: - push: - branches: - - main pull_request: branches: - main From bd34a62635a88f9d3a6089b269e14bfc31a88eeb Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 6 Nov 2025 17:26:34 +0000 Subject: [PATCH 34/64] Updating github-config --- .github/workflows/update-buildpack-toml.yml | 2 +- .github/workflows/update-github-config.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/update-buildpack-toml.yml b/.github/workflows/update-buildpack-toml.yml index 6eb3c7b4..ce01bc6a 100644 --- a/.github/workflows/update-buildpack-toml.yml +++ b/.github/workflows/update-buildpack-toml.yml @@ -2,7 +2,7 @@ name: Update buildpack.toml on: schedule: - - cron: '1 6 * * *' # daily at 06:01 UTC + - cron: '1 6 * * *' # daily at 06:01 UTC workflow_dispatch: {} concurrency: buildpack_update diff --git a/.github/workflows/update-github-config.yml b/.github/workflows/update-github-config.yml index 60d93cee..ea15d195 100644 --- a/.github/workflows/update-github-config.yml +++ b/.github/workflows/update-github-config.yml @@ -2,7 +2,7 @@ name: Update shared github-config on: schedule: - - cron: '20 17 * * *' # daily at 17:20 UTC + - cron: '20 17 * * *' # daily at 17:20 UTC workflow_dispatch: {} concurrency: github_config_update From afcc7a08ec78ff436a8b3556daa6f230e547302c Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Mon, 24 Nov 2025 17:26:52 +0000 Subject: [PATCH 35/64] Updating github-config --- .github/workflows/update-go-mod-version.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/update-go-mod-version.yml b/.github/workflows/update-go-mod-version.yml index 5cc1a944..32db3f14 100644 --- a/.github/workflows/update-go-mod-version.yml +++ b/.github/workflows/update-go-mod-version.yml @@ -21,8 +21,9 @@ jobs: - name: Setup Go id: setup-go uses: actions/setup-go@v6 + # Fetching the latest stable Go version with: - go-version-file: go.mod + go-version-file: stable - name: Get current go toolchain version id: current-go-version uses: paketo-buildpacks/github-config/actions/update-go-mod-version@main From 4e13151d31d11857177f0deae3ec190d3913c5c3 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 25 Nov 2025 17:26:56 +0000 Subject: [PATCH 36/64] Updating github-config --- .github/workflows/update-go-mod-version.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/update-go-mod-version.yml b/.github/workflows/update-go-mod-version.yml index 32db3f14..49fae7b5 100644 --- a/.github/workflows/update-go-mod-version.yml +++ b/.github/workflows/update-go-mod-version.yml @@ -23,7 +23,7 @@ jobs: uses: actions/setup-go@v6 # Fetching the latest stable Go version with: - go-version-file: stable + go-version: stable - name: Get current go toolchain version id: current-go-version uses: paketo-buildpacks/github-config/actions/update-go-mod-version@main From 6ff1877e498b9da0677bdd80af222a8a474080af Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 26 Nov 2025 17:26:41 +0000 Subject: [PATCH 37/64] Updating github-config --- .github/workflows/lint.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index d9c79474..ff71426e 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -19,7 +19,7 @@ jobs: go-version-file: go.mod - name: golangci-lint - uses: golangci/golangci-lint-action@v3 + uses: golangci/golangci-lint-action@v9 with: version: latest args: --timeout 3m0s From 0ef18e08381f608c22044a50b18ce9f673ee3f4d Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 28 Nov 2025 17:25:47 +0000 Subject: [PATCH 38/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index e063bd02..cf84ccd1 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,5 +1,5 @@ { "jam": "v2.15.1", - "pack": "v0.38.2", + "pack": "v0.39.0", "yj": "v5.1.0" } From 42c64711569f07b68c904b0e8ae35ee46885b847 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 9 Dec 2025 17:27:03 +0000 Subject: [PATCH 39/64] Updating github-config --- .github/workflows/approve-bot-pr.yml | 2 +- .github/workflows/create-draft-release.yml | 6 +- .github/workflows/lint-yaml.yml | 4 +- .github/workflows/lint.yml | 2 +- .github/workflows/push-buildpackage.yml | 4 +- .github/workflows/synchronize-labels.yml | 2 +- .github/workflows/test-pull-request.yml | 6 +- .github/workflows/update-buildpack-toml.yml | 2 +- .github/workflows/update-github-config.yml | 4 +- .github/workflows/update-go-mod-version.yml | 2 +- scripts/.util/tools.sh | 99 +++++++++++++++++---- scripts/integration.sh | 24 ++++- 12 files changed, 120 insertions(+), 37 deletions(-) diff --git a/.github/workflows/approve-bot-pr.yml b/.github/workflows/approve-bot-pr.yml index d958d9a4..00e6345a 100644 --- a/.github/workflows/approve-bot-pr.yml +++ b/.github/workflows/approve-bot-pr.yml @@ -52,7 +52,7 @@ jobs: - name: Checkout if: steps.human-commits.outputs.human_commits == 'false' && steps.unverified-commits.outputs.unverified_commits == 'false' - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Approve if: steps.human-commits.outputs.human_commits == 'false' && steps.unverified-commits.outputs.unverified_commits == 'false' diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index 903d2302..767197a0 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -22,7 +22,7 @@ jobs: builders: ${{ steps.builders.outputs.builders }} steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Get builders from integration.json id: builders run: | @@ -41,7 +41,7 @@ jobs: fail-fast: false # don't cancel all test jobs when one fails steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Go uses: actions/setup-go@v6 with: @@ -57,7 +57,7 @@ jobs: needs: integration steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-tags: true - name: Reset Draft Release diff --git a/.github/workflows/lint-yaml.yml b/.github/workflows/lint-yaml.yml index f4f032bc..8a7dab74 100644 --- a/.github/workflows/lint-yaml.yml +++ b/.github/workflows/lint-yaml.yml @@ -10,10 +10,10 @@ jobs: lintYaml: runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Checkout github-config - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: repository: paketo-buildpacks/github-config path: github-config diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index ff71426e..469c029d 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Go uses: actions/setup-go@v6 diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 3daf8d42..67492ad1 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -20,7 +20,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Parse Event id: event @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.9.6 + uses: buildpacks/github-actions/setup-tools@v5.9.7 - name: Validate version run: | diff --git a/.github/workflows/synchronize-labels.yml b/.github/workflows/synchronize-labels.yml index fc0f5163..09db8880 100644 --- a/.github/workflows/synchronize-labels.yml +++ b/.github/workflows/synchronize-labels.yml @@ -12,7 +12,7 @@ jobs: runs-on: - ubuntu-24.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - uses: micnncim/action-label-syncer@v1 env: GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index a31d191d..0775e376 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -18,7 +18,7 @@ jobs: builders: ${{ steps.builders.outputs.builders }} steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Get builders from integration.json id: builders run: | @@ -38,7 +38,7 @@ jobs: fail-fast: false # don't cancel all test jobs when one fails steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Go uses: actions/setup-go@v6 @@ -71,7 +71,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Upload Artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v5 with: name: event-payload path: ${{ github.event_path }} diff --git a/.github/workflows/update-buildpack-toml.yml b/.github/workflows/update-buildpack-toml.yml index ce01bc6a..7b544f51 100644 --- a/.github/workflows/update-buildpack-toml.yml +++ b/.github/workflows/update-buildpack-toml.yml @@ -14,7 +14,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Checkout Branch uses: paketo-buildpacks/github-config/actions/pull-request/checkout-branch@main diff --git a/.github/workflows/update-github-config.yml b/.github/workflows/update-github-config.yml index ea15d195..3a4aa67a 100644 --- a/.github/workflows/update-github-config.yml +++ b/.github/workflows/update-github-config.yml @@ -14,12 +14,12 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: token: ${{ secrets.PAKETO_BOT_GITHUB_TOKEN }} - name: Checkout github-config - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: repository: paketo-buildpacks/github-config path: github-config diff --git a/.github/workflows/update-go-mod-version.yml b/.github/workflows/update-go-mod-version.yml index 49fae7b5..41cc6f9b 100644 --- a/.github/workflows/update-go-mod-version.yml +++ b/.github/workflows/update-go-mod-version.yml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out code - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Checkout PR Branch uses: paketo-buildpacks/github-config/actions/pull-request/checkout-branch@main with: diff --git a/scripts/.util/tools.sh b/scripts/.util/tools.sh index 5868b7e2..853e8186 100644 --- a/scripts/.util/tools.sh +++ b/scripts/.util/tools.sh @@ -31,6 +31,10 @@ function util::tools::arch() { amd64|x86_64) if [[ "${1:-}" == "--blank-amd64" ]]; then echo "" + elif [[ "${1:-}" == "--format-amd64-x86_64" ]]; then + echo "x86_64" + elif [[ "${1:-}" == "--format-amd64-x86-64" ]]; then + echo "x86-64" else echo "amd64" fi @@ -135,12 +139,17 @@ function util::tools::pack::install() { version="$(jq -r .pack "$(dirname "${BASH_SOURCE[0]}")/tools.json")" - tmp_location="/tmp/pack.tgz" + local pack_config_enable_experimental + if [ -f "$(dirname "${BASH_SOURCE[0]}")/../options.json" ]; then + pack_config_enable_experimental="$(jq -r .pack_config_enable_experimental "$(dirname "${BASH_SOURCE[0]}")/../options.json")" + else + pack_config_enable_experimental="false" + fi + curl_args=( "--fail" "--silent" "--location" - "--output" "${tmp_location}" ) if [[ "${token}" != "" ]]; then @@ -153,18 +162,45 @@ function util::tools::pack::install() { arch=$(util::tools::arch --blank-amd64) curl "https://github.com/buildpacks/pack/releases/download/${version}/pack-${version}-${os}${arch:+-$arch}.tgz" \ - "${curl_args[@]}" - - tar xzf "${tmp_location}" -C "${dir}" + "${curl_args[@]}" | \ + tar xzf - -C "${dir}" chmod +x "${dir}/pack" - rm "${tmp_location}" + if [[ "${pack_config_enable_experimental}" == "true" ]]; then + "${dir}"/pack config experimental true + fi + else util::print::info "Using pack $("${dir}"/pack version)" fi } -function util::tools::yj::install() { +function util::tools::packager::install () { + local dir + while [[ "${#}" != 0 ]]; do + case "${1}" in + --directory) + dir="${2}" + shift 2 + ;; + + *) + util::print::error "unknown argument \"${1}\"" + ;; + + esac + done + + mkdir -p "${dir}" + util::tools::path::export "${dir}" + + if [[ ! -f "${dir}/packager" ]]; then + util::print::title "Installing packager" + GOBIN="${dir}" go install github.com/cloudfoundry/libcfbuildpack/packager@latest + fi +} + +function util::tools::libpak-tools::install () { local dir token token="" @@ -188,36 +224,67 @@ function util::tools::yj::install() { mkdir -p "${dir}" util::tools::path::export "${dir}" - if [[ ! -f "${dir}/yj" ]]; then + + if [[ ! -f "${dir}/libpak-tools" ]]; then local version curl_args os arch - version="$(jq -r .yj "$(dirname "${BASH_SOURCE[0]}")/tools.json")" + version="$(jq -r .libpaktools "$(dirname "${BASH_SOURCE[0]}")/tools.json")" curl_args=( "--fail" "--silent" "--location" - "--output" "${dir}/yj" + "--output" "${dir}/libpak-tools.tar.gz" ) if [[ "${token}" != "" ]]; then curl_args+=("--header" "Authorization: Token ${token}") fi - util::print::title "Installing yj ${version}" + util::print::title "Installing libpak-tools ${version}" - os=$(util::tools::os macos) - arch=$(util::tools::arch) + os=$(util::tools::os) + arch=$(util::tools::arch --format-amd64-x86_64) - curl "https://github.com/sclevine/yj/releases/download/${version}/yj-${os}-${arch}" \ + curl "https://github.com/paketo-buildpacks/libpak-tools/releases/download/${version}/libpak-tools_${os}_${arch}.tar.gz" \ "${curl_args[@]}" - chmod +x "${dir}/yj" + tar -xzf "${dir}/libpak-tools.tar.gz" -C $dir + rm "${dir}/libpak-tools.tar.gz" + + chmod +x "${dir}/libpak-tools" else - util::print::info "Using yj $("${dir}"/yj -v)" + util::print::info "Using libpak-tools" fi } +function util::tools::create-package::install () { + local dir version + while [[ "${#}" != 0 ]]; do + case "${1}" in + --directory) + dir="${2}" + shift 2 + ;; + + *) + util::print::error "unknown argument \"${1}\"" + ;; + + esac + done + + version="$(jq -r .createpackage "$(dirname "${BASH_SOURCE[0]}")/tools.json")" + + mkdir -p "${dir}" + util::tools::path::export "${dir}" + + if [[ ! -f "${dir}/create-package" ]]; then + util::print::title "Installing create-package" + GOBIN="${dir}" go install -ldflags="-s -w" "github.com/paketo-buildpacks/libpak/cmd/create-package@${version}" + fi +} + function util::tools::tests::checkfocus() { testout="${1}" if grep -q 'Focused: [1-9]' "${testout}"; then diff --git a/scripts/integration.sh b/scripts/integration.sh index f1e1f11f..029e2d91 100755 --- a/scripts/integration.sh +++ b/scripts/integration.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash + set -eu set -o pipefail @@ -32,7 +33,6 @@ function main() { shift 2 ;; - --token|-t) token="${2}" shift 2 @@ -49,7 +49,7 @@ function main() { done if [[ ! -d "${BUILDPACKDIR}/integration" ]]; then - util::print::warn "** WARNING No Integration tests **" + util::print::warn "** WARNING No Integration tests **" fi tools::install "${token}" @@ -109,6 +109,17 @@ function tools::install() { util::tools::jam::install \ --directory "${BUILDPACKDIR}/.bin" \ --token "${token}" + + util::tools::libpak-tools::install \ + --directory "${BUILDPACKDIR}/.bin" + + util::tools::create-package::install \ + --directory "${BUILDPACKDIR}/.bin" + + if [[ -f "${BUILDPACKDIR}/.libbuildpack" ]]; then + util::tools::packager::install \ + --directory "${BUILDPACKDIR}/.bin" + fi } function builder_images::pull() { @@ -123,11 +134,17 @@ function builder_images::pull() { pack inspect-builder "${builder}" --output json \ | jq -r '.remote_info.run_images[0].name' )" - lifecycle_image="index.docker.io/buildpacksio/lifecycle:$( + + os=$(util::tools::os) + arch=$(util::tools::arch --format-amd64-x86-64) + + lifecycle_version="$( pack inspect-builder "${builder}" --output json \ | jq -r '.remote_info.lifecycle.version' )" + lifecycle_image="index.docker.io/buildpacksio/lifecycle:${lifecycle_version}-${os}-${arch}" + util::print::title "Pulling run image..." docker pull "${run_image}" @@ -141,7 +158,6 @@ function tests::run() { export CGO_ENABLED=0 pushd "${BUILDPACKDIR}" > /dev/null - #shellcheck disable=SC2068 if GOMAXPROCS="${GOMAXPROCS:-4}" go test -count=1 -timeout 0 ./integration/... -v -run Integration | tee "${2}"; then util::print::info "** GO Test Succeeded with ${1}**" else From a3c23f217eb93dabed7c972428be7d31e1ff5349 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 10 Dec 2025 17:27:26 +0000 Subject: [PATCH 40/64] Updating github-config --- scripts/.util/tools.json | 2 ++ scripts/.util/tools.sh | 54 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index cf84ccd1..4ae65159 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,5 +1,7 @@ { + "createpackage": "v1.73.0", "jam": "v2.15.1", + "libpaktools": "v0.3.0", "pack": "v0.39.0", "yj": "v5.1.0" } diff --git a/scripts/.util/tools.sh b/scripts/.util/tools.sh index 853e8186..be9a7a54 100644 --- a/scripts/.util/tools.sh +++ b/scripts/.util/tools.sh @@ -175,6 +175,60 @@ function util::tools::pack::install() { fi } +function util::tools::yj::install() { + local dir token + token="" + + while [[ "${#}" != 0 ]]; do + case "${1}" in + --directory) + dir="${2}" + shift 2 + ;; + + --token) + token="${2}" + shift 2 + ;; + + *) + util::print::error "unknown argument \"${1}\"" + esac + done + + mkdir -p "${dir}" + util::tools::path::export "${dir}" + + if [[ ! -f "${dir}/yj" ]]; then + local version curl_args os arch + + version="$(jq -r .yj "$(dirname "${BASH_SOURCE[0]}")/tools.json")" + + curl_args=( + "--fail" + "--silent" + "--location" + "--output" "${dir}/yj" + ) + + if [[ "${token}" != "" ]]; then + curl_args+=("--header" "Authorization: Token ${token}") + fi + + util::print::title "Installing yj ${version}" + + os=$(util::tools::os macos) + arch=$(util::tools::arch) + + curl "https://github.com/sclevine/yj/releases/download/${version}/yj-${os}-${arch}" \ + "${curl_args[@]}" + + chmod +x "${dir}/yj" + else + util::print::info "Using yj $("${dir}"/yj -v)" + fi +} + function util::tools::packager::install () { local dir while [[ "${#}" != 0 ]]; do From c3e1344ebf3171f5700b9d995d54cb976f6d0b58 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 12 Dec 2025 17:27:06 +0000 Subject: [PATCH 41/64] Updating github-config --- .github/workflows/create-draft-release.yml | 1 + .github/workflows/test-pull-request.yml | 1 + scripts/.util/tools.json | 2 +- scripts/.util/tools.sh | 4 ++-- 4 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index 767197a0..ddc76510 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -49,6 +49,7 @@ jobs: - name: Run Integration Tests env: TMPDIR: "${{ runner.temp }}" + GIT_TOKEN: ${{ github.token }} run: ./scripts/integration.sh --builder ${{ matrix.builder }} release: diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index 0775e376..6ff172ad 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -48,6 +48,7 @@ jobs: - name: Run Integration Tests env: TMPDIR: "${{ runner.temp }}" + GIT_TOKEN: ${{ github.token }} run: ./scripts/integration.sh --builder ${{ matrix.builder }} roundup: diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 4ae65159..e4074610 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -2,6 +2,6 @@ "createpackage": "v1.73.0", "jam": "v2.15.1", "libpaktools": "v0.3.0", - "pack": "v0.39.0", + "pack": "v0.39.1", "yj": "v5.1.0" } diff --git a/scripts/.util/tools.sh b/scripts/.util/tools.sh index be9a7a54..34591851 100644 --- a/scripts/.util/tools.sh +++ b/scripts/.util/tools.sh @@ -158,7 +158,7 @@ function util::tools::pack::install() { util::print::title "Installing pack ${version}" - os=$(util::tools::os macos) + os=$(util::tools::os) arch=$(util::tools::arch --blank-amd64) curl "https://github.com/buildpacks/pack/releases/download/${version}/pack-${version}-${os}${arch:+-$arch}.tgz" \ @@ -217,7 +217,7 @@ function util::tools::yj::install() { util::print::title "Installing yj ${version}" - os=$(util::tools::os macos) + os=$(util::tools::os) arch=$(util::tools::arch) curl "https://github.com/sclevine/yj/releases/download/${version}/yj-${os}-${arch}" \ From 988ee045fcdec8b13f0c2386ae2f189659f02418 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 13 Dec 2025 17:25:28 +0000 Subject: [PATCH 42/64] Updating github-config --- .github/workflows/test-pull-request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index 6ff172ad..c5829bf6 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -72,7 +72,7 @@ jobs: runs-on: ubuntu-24.04 steps: - name: Upload Artifact - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: event-payload path: ${{ github.event_path }} From e1e76eead3f07b733cbefe09796542b6d414e03e Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Mon, 15 Dec 2025 17:27:46 +0000 Subject: [PATCH 43/64] Updating github-config --- .github/dependabot.yml | 5 ----- scripts/integration.sh | 7 +------ 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index bf99f0e3..1f5b2152 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -16,8 +16,3 @@ updates: update-types: - "minor" - "patch" - exclude-patterns: - - "github.com/anchore/stereoscope" - - "github.com/testcontainers/testcontainers-go" - - "github.com/docker/docker" - - "github.com/containerd/containerd" diff --git a/scripts/integration.sh b/scripts/integration.sh index 029e2d91..3257ad9f 100755 --- a/scripts/integration.sh +++ b/scripts/integration.sh @@ -135,16 +135,11 @@ function builder_images::pull() { | jq -r '.remote_info.run_images[0].name' )" - os=$(util::tools::os) - arch=$(util::tools::arch --format-amd64-x86-64) - - lifecycle_version="$( + lifecycle_image="index.docker.io/buildpacksio/lifecycle:$( pack inspect-builder "${builder}" --output json \ | jq -r '.remote_info.lifecycle.version' )" - lifecycle_image="index.docker.io/buildpacksio/lifecycle:${lifecycle_version}-${os}-${arch}" - util::print::title "Pulling run image..." docker pull "${run_image}" From 29af5f73ba9b7edc47010c52f7cb697c55ff9910 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 19 Dec 2025 17:26:04 +0000 Subject: [PATCH 44/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 67492ad1..f745eed6 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.9.7 + uses: buildpacks/github-actions/setup-tools@v5.10.0 - name: Validate version run: | From 7321771748ecccd3f424147a40231b4296a84400 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 26 Dec 2025 17:26:26 +0000 Subject: [PATCH 45/64] Updating github-config --- scripts/.util/tools.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.sh b/scripts/.util/tools.sh index 34591851..a2536515 100644 --- a/scripts/.util/tools.sh +++ b/scripts/.util/tools.sh @@ -158,7 +158,7 @@ function util::tools::pack::install() { util::print::title "Installing pack ${version}" - os=$(util::tools::os) + os=$(util::tools::os macos) arch=$(util::tools::arch --blank-amd64) curl "https://github.com/buildpacks/pack/releases/download/${version}/pack-${version}-${os}${arch:+-$arch}.tgz" \ From 8cb4e5e5d11417278242f1ecdcf10a82dfd08a80 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sun, 11 Jan 2026 17:26:07 +0000 Subject: [PATCH 46/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index e4074610..97086a98 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,6 +1,6 @@ { "createpackage": "v1.73.0", - "jam": "v2.15.1", + "jam": "v2.15.2", "libpaktools": "v0.3.0", "pack": "v0.39.1", "yj": "v5.1.0" From 64ee33f6bc5ef9747322f9a76b7dd8f2262f746b Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Mon, 19 Jan 2026 17:27:32 +0000 Subject: [PATCH 47/64] Updating github-config --- .github/.patch_files | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/.patch_files b/.github/.patch_files index 7a34e1cb..6674c0cc 100644 --- a/.github/.patch_files +++ b/.github/.patch_files @@ -4,19 +4,28 @@ .github/dependabot.yml .github/labels.yml .github/workflows/approve-bot-pr.yml +.github/workflows/codeql-analysis.yml +.github/workflows/create-draft-release.yml .github/workflows/label-pr.yml .github/workflows/lint-yaml.yml .github/workflows/lint.yml +.github/workflows/publish-releases.yml +.github/workflows/push-buildpackage.yml .github/workflows/synchronize-labels.yml .github/workflows/test-pull-request.yml .github/workflows/update-buildpack-toml.yml .github/workflows/update-github-config.yml +.github/workflows/update-go-mod-version.yml .gitignore LICENSE NOTICE README.md +go.mod +go.sum scripts/.util/builders.sh scripts/.util/print.sh scripts/.util/tools.json scripts/.util/tools.sh scripts/integration.sh +scripts/package.sh +scripts/publish.sh From 3e0440e5a350f4517d2e9911bd82c9141a52577c Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 20 Jan 2026 17:28:36 +0000 Subject: [PATCH 48/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index f745eed6..c17fb86a 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.10.0 + uses: buildpacks/github-actions/setup-tools@v5.10.1 - name: Validate version run: | From 912a0173aaa6701e094aaec4d9b39be17848fed5 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Wed, 4 Feb 2026 17:33:23 +0000 Subject: [PATCH 49/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 97086a98..2c36cb35 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -2,6 +2,6 @@ "createpackage": "v1.73.0", "jam": "v2.15.2", "libpaktools": "v0.3.0", - "pack": "v0.39.1", + "pack": "v0.40.0", "yj": "v5.1.0" } From ab6c09319ff0f7909c18ca1ae1f6b8346fc3907f Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 6 Feb 2026 17:31:11 +0000 Subject: [PATCH 50/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index c17fb86a..4607887b 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.10.1 + uses: buildpacks/github-actions/setup-tools@v5.11.0 - name: Validate version run: | From c864d0f62e2b05bcbed23dcbd2b971e2aaf57cfd Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 14 Feb 2026 17:28:32 +0000 Subject: [PATCH 51/64] Updating github-config --- .github/workflows/test-pull-request.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/test-pull-request.yml b/.github/workflows/test-pull-request.yml index c5829bf6..1bfa8c37 100644 --- a/.github/workflows/test-pull-request.yml +++ b/.github/workflows/test-pull-request.yml @@ -45,6 +45,12 @@ jobs: with: go-version-file: go.mod + # Causes errors with integration tests + - name: Disable containerd snapshotter + run: | + echo '{"features": {"containerd-snapshotter": false}}' | sudo tee /etc/docker/daemon.json + sudo systemctl restart docker + - name: Run Integration Tests env: TMPDIR: "${{ runner.temp }}" From 8616f9c773035ce3c6faebf5439a0605ea1ac930 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sun, 15 Feb 2026 17:28:01 +0000 Subject: [PATCH 52/64] Updating github-config --- .github/workflows/create-draft-release.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/create-draft-release.yml b/.github/workflows/create-draft-release.yml index ddc76510..295cbd2a 100644 --- a/.github/workflows/create-draft-release.yml +++ b/.github/workflows/create-draft-release.yml @@ -46,6 +46,13 @@ jobs: uses: actions/setup-go@v6 with: go-version-file: go.mod + + # Causes errors with integration tests + - name: Disable containerd snapshotter + run: | + echo '{"features": {"containerd-snapshotter": false}}' | sudo tee /etc/docker/daemon.json + sudo systemctl restart docker + - name: Run Integration Tests env: TMPDIR: "${{ runner.temp }}" From 304c908a29cf22a50383751bc1cc71373bd6916b Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Mon, 16 Feb 2026 17:30:31 +0000 Subject: [PATCH 53/64] Updating github-config --- .github/.patch_files | 12 +++++++----- scripts/.util/tools.sh | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/.github/.patch_files b/.github/.patch_files index 6674c0cc..dd65bdc8 100644 --- a/.github/.patch_files +++ b/.github/.patch_files @@ -1,8 +1,3 @@ -.github/.patch_files -.github/.syncignore -.github/CODEOWNERS -.github/dependabot.yml -.github/labels.yml .github/workflows/approve-bot-pr.yml .github/workflows/codeql-analysis.yml .github/workflows/create-draft-release.yml @@ -16,6 +11,11 @@ .github/workflows/update-buildpack-toml.yml .github/workflows/update-github-config.yml .github/workflows/update-go-mod-version.yml +.github/.patch_files +.github/.syncignore +.github/CODEOWNERS +.github/dependabot.yml +.github/labels.yml .gitignore LICENSE NOTICE @@ -26,6 +26,8 @@ scripts/.util/builders.sh scripts/.util/print.sh scripts/.util/tools.json scripts/.util/tools.sh +scripts/.syncignore scripts/integration.sh +scripts/options.json scripts/package.sh scripts/publish.sh diff --git a/scripts/.util/tools.sh b/scripts/.util/tools.sh index a2536515..5a2eea05 100644 --- a/scripts/.util/tools.sh +++ b/scripts/.util/tools.sh @@ -217,7 +217,7 @@ function util::tools::yj::install() { util::print::title "Installing yj ${version}" - os=$(util::tools::os) + os=$(util::tools::os, macos) arch=$(util::tools::arch) curl "https://github.com/sclevine/yj/releases/download/${version}/yj-${os}-${arch}" \ From b7aad1e6714634a40cd148308dba4c140d9f5faa Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 17 Feb 2026 17:38:22 +0000 Subject: [PATCH 54/64] Updating github-config --- scripts/.util/tools.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.sh b/scripts/.util/tools.sh index 5a2eea05..be9a7a54 100644 --- a/scripts/.util/tools.sh +++ b/scripts/.util/tools.sh @@ -217,7 +217,7 @@ function util::tools::yj::install() { util::print::title "Installing yj ${version}" - os=$(util::tools::os, macos) + os=$(util::tools::os macos) arch=$(util::tools::arch) curl "https://github.com/sclevine/yj/releases/download/${version}/yj-${os}-${arch}" \ From 4ad6531a4255d762c582ae24a32e3a7ea8eee4c4 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 21 Feb 2026 17:27:46 +0000 Subject: [PATCH 55/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 2c36cb35..7ee60d1f 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,6 +1,6 @@ { "createpackage": "v1.73.0", - "jam": "v2.15.2", + "jam": "v2.15.3", "libpaktools": "v0.3.0", "pack": "v0.40.0", "yj": "v5.1.0" From edd8f0fa59476022c51d0c8275a7c1361f308ef9 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Mon, 2 Mar 2026 17:32:53 +0000 Subject: [PATCH 56/64] Updating github-config --- .github/workflows/lint-yaml.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint-yaml.yml b/.github/workflows/lint-yaml.yml index 8a7dab74..69d60672 100644 --- a/.github/workflows/lint-yaml.yml +++ b/.github/workflows/lint-yaml.yml @@ -21,7 +21,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v5 with: - python-version: 3.8 + python-version: 3.14 - name: Install yamllint run: pip install yamllint From c86e83d8b501d3409c411528a4c33b6b4d11aaf9 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 3 Mar 2026 17:31:54 +0000 Subject: [PATCH 57/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 7ee60d1f..e376e87f 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -2,6 +2,6 @@ "createpackage": "v1.73.0", "jam": "v2.15.3", "libpaktools": "v0.3.0", - "pack": "v0.40.0", + "pack": "v0.40.1", "yj": "v5.1.0" } From eb401aebc11f42158afe4be11a4d72cdd0dc9b3c Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Thu, 5 Mar 2026 17:59:19 +0000 Subject: [PATCH 58/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 4607887b..9e705fb5 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -73,14 +73,14 @@ jobs: fi - name: Docker login docker.io - uses: docker/login-action@v3 + uses: docker/login-action@v4 with: username: ${{ env.DOCKERHUB_USERNAME }} password: ${{ env.DOCKERHUB_PASSWORD }} registry: ${{ env.DOCKERHUB_REGISTRY }} - name: Docker login gcr.io - uses: docker/login-action@v3 + uses: docker/login-action@v4 if: ${{ steps.parse_configs.outputs.push_to_gcr == 'true' }} with: username: ${{ env.GCR_USERNAME }} From d4c0c4988f63de670c6e2bf194db1bac096bb1f7 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 14 Mar 2026 17:28:08 +0000 Subject: [PATCH 59/64] Updating github-config --- scripts/.util/tools.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index e376e87f..26498cf3 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -2,6 +2,6 @@ "createpackage": "v1.73.0", "jam": "v2.15.3", "libpaktools": "v0.3.0", - "pack": "v0.40.1", + "pack": "v0.40.2", "yj": "v5.1.0" } From a41d537162d2d95ef674cf06284816008e87cf4a Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Tue, 7 Apr 2026 17:37:46 +0000 Subject: [PATCH 60/64] Updating github-config --- .github/dependabot.yml | 5 +++++ scripts/.util/tools.json | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 1f5b2152..dbe82d23 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -16,3 +16,8 @@ updates: update-types: - "minor" - "patch" + exclude-patterns: + # go-diskfs 1.8 broke API wrt 1.7 which is in use by syft + # at the time of writing + # keep until https://github.com/anchore/syft/pull/4719 is merged or issue resolved. + - "github.com/diskfs/go-diskfs" diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 26498cf3..1fac160b 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,6 +1,6 @@ { "createpackage": "v1.73.0", - "jam": "v2.15.3", + "jam": "v2.17.1", "libpaktools": "v0.3.0", "pack": "v0.40.2", "yj": "v5.1.0" From b76d08ea3782add386feb14846ca6ff3ac540c15 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Mon, 13 Apr 2026 17:39:50 +0000 Subject: [PATCH 61/64] Updating github-config --- scripts/.util/tools.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 1fac160b..90236e5a 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,7 +1,7 @@ { "createpackage": "v1.73.0", - "jam": "v2.17.1", - "libpaktools": "v0.3.0", + "jam": "v2.17.3", + "libpaktools": "v0.4.0", "pack": "v0.40.2", "yj": "v5.1.0" } From 784f00d4007c088a5c491fc8b2d4039dc862316c Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 2 May 2026 17:32:58 +0000 Subject: [PATCH 62/64] Updating github-config --- scripts/.util/tools.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 90236e5a..121f3326 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,7 +1,7 @@ { "createpackage": "v1.73.0", "jam": "v2.17.3", - "libpaktools": "v0.4.0", - "pack": "v0.40.2", + "libpaktools": "v0.5.0", + "pack": "v0.40.3", "yj": "v5.1.0" } From ab66301ba8596a7348d366773a8c63111e9409f0 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Sat, 9 May 2026 17:36:00 +0000 Subject: [PATCH 63/64] Updating github-config --- .github/workflows/push-buildpackage.yml | 2 +- scripts/.util/tools.json | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/push-buildpackage.yml b/.github/workflows/push-buildpackage.yml index 9e705fb5..88dade07 100644 --- a/.github/workflows/push-buildpackage.yml +++ b/.github/workflows/push-buildpackage.yml @@ -61,7 +61,7 @@ jobs: echo "push_to_gcr=${push_to_gcr}" >> "$GITHUB_OUTPUT" - name: Install yj and crane - uses: buildpacks/github-actions/setup-tools@v5.11.0 + uses: buildpacks/github-actions/setup-tools@v5.12.1 - name: Validate version run: | diff --git a/scripts/.util/tools.json b/scripts/.util/tools.json index 121f3326..f5bae19a 100644 --- a/scripts/.util/tools.json +++ b/scripts/.util/tools.json @@ -1,7 +1,7 @@ { "createpackage": "v1.73.0", "jam": "v2.17.3", - "libpaktools": "v0.5.0", - "pack": "v0.40.3", + "libpaktools": "v0.6.0", + "pack": "v0.40.4", "yj": "v5.1.0" } From b51f00c1bb0f9ea96a1e4ab65e3d18c904d1f5e4 Mon Sep 17 00:00:00 2001 From: paketo-bot Date: Fri, 12 Jun 2026 17:59:48 +0000 Subject: [PATCH 64/64] Updating github-config --- .github/dependabot.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index dbe82d23..1f5b2152 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -16,8 +16,3 @@ updates: update-types: - "minor" - "patch" - exclude-patterns: - # go-diskfs 1.8 broke API wrt 1.7 which is in use by syft - # at the time of writing - # keep until https://github.com/anchore/syft/pull/4719 is merged or issue resolved. - - "github.com/diskfs/go-diskfs"