From 268dcb28224362e3f80d6536c18d4f2cff7aec97 Mon Sep 17 00:00:00 2001 From: Pulumi Bot <30351955+pulumi-bot@users.noreply.github.com> Date: Tue, 26 Nov 2024 21:44:02 -0800 Subject: [PATCH] [internal] Update GitHub Actions workflow files (#310) --- .github/actions/download-bin/action.yml | 2 +- .github/actions/download-sdk/action.yml | 2 +- .github/actions/upload-bin/action.yml | 2 +- .github/actions/upload-sdk/action.yml | 2 +- .github/workflows/build_provider.yml | 11 ++++------- .github/workflows/build_sdk.yml | 13 ++----------- .github/workflows/command-dispatch.yml | 2 +- .github/workflows/community-moderation.yml | 8 ++++---- .github/workflows/license.yml | 2 +- .github/workflows/lint.yml | 2 +- .github/workflows/main.yml | 11 ++++------- .github/workflows/prerelease.yml | 7 ++----- .github/workflows/prerequisites.yml | 12 +++--------- .github/workflows/publish.yml | 10 +++++----- .github/workflows/pull-request.yml | 4 ++-- .github/workflows/release.yml | 7 ++----- .github/workflows/release_command.yml | 2 +- .github/workflows/resync-build.yml | 4 ++-- .github/workflows/run-acceptance-tests.yml | 9 +++------ .github/workflows/upgrade-bridge.yml | 11 +++++++++-- .github/workflows/upgrade-provider.yml | 10 ++++++++-- .github/workflows/verify-release.yml | 2 +- Makefile | 4 ++-- 23 files changed, 61 insertions(+), 78 deletions(-) diff --git a/.github/actions/download-bin/action.yml b/.github/actions/download-bin/action.yml index 02008b2..a5957b2 100644 --- a/.github/actions/download-bin/action.yml +++ b/.github/actions/download-bin/action.yml @@ -5,7 +5,7 @@ runs: using: "composite" steps: - name: Download provider + tfgen binaries - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v4.1.8 with: name: http-provider.tar.gz path: ${{ github.workspace }}/bin diff --git a/.github/actions/download-sdk/action.yml b/.github/actions/download-sdk/action.yml index 1fd5484..272e331 100644 --- a/.github/actions/download-sdk/action.yml +++ b/.github/actions/download-sdk/action.yml @@ -10,7 +10,7 @@ runs: using: "composite" steps: - name: Download ${{ inputs.language }} SDK - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v4.1.8 with: name: ${{ inputs.language }}-sdk.tar.gz path: ${{ github.workspace}}/sdk/ diff --git a/.github/actions/upload-bin/action.yml b/.github/actions/upload-bin/action.yml index 6634ff5..7a69bc7 100644 --- a/.github/actions/upload-bin/action.yml +++ b/.github/actions/upload-bin/action.yml @@ -8,7 +8,7 @@ runs: shell: bash run: tar -zcf ${{ github.workspace }}/bin/provider.tar.gz -C ${{ github.workspace }}/bin/ pulumi-resource-http pulumi-tfgen-http - name: Upload artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v4.4.3 with: name: http-provider.tar.gz path: ${{ github.workspace }}/bin/provider.tar.gz diff --git a/.github/actions/upload-sdk/action.yml b/.github/actions/upload-sdk/action.yml index 77d4849..c8c88de 100644 --- a/.github/actions/upload-sdk/action.yml +++ b/.github/actions/upload-sdk/action.yml @@ -13,7 +13,7 @@ runs: shell: bash run: tar -zcf sdk/${{ inputs.language }}.tar.gz -C sdk/${{ inputs.language }} . - name: Upload artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v4.4.3 with: name: ${{ inputs.language }}-sdk.tar.gz path: ${{ github.workspace}}/sdk/${{ inputs.language }}.tar.gz diff --git a/.github/workflows/build_provider.yml b/.github/workflows/build_provider.yml index 525ca43..0a46f2c 100644 --- a/.github/workflows/build_provider.yml +++ b/.github/workflows/build_provider.yml @@ -30,7 +30,7 @@ jobs: arch: amd64 steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools @@ -40,7 +40,7 @@ jobs: - name: Prepare local workspace before restoring previously built run: make prepare_local_workspace - name: Download schema-embed.json - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v4.1.8 with: # Use a pattern to avoid failing if the artifact doesn't exist pattern: schema-embed.* @@ -48,14 +48,11 @@ jobs: merge-multiple: true path: provider/cmd/pulumi-resource-http/schema-embed.json - name: Restore makefile progress - uses: actions/download-artifact@v4 - with: - name: prerequisites.make - path: .make + run: make --touch provider schema - name: Build & package provider run: make provider_dist-${{ matrix.platform.os }}-${{ matrix.platform.arch }} - name: Upload artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v4.4.3 with: name: pulumi-resource-http-v${{ inputs.version }}-${{ matrix.platform.os }}-${{ matrix.platform.arch }}.tar.gz path: bin/pulumi-resource-http-v${{ inputs.version }}-${{ matrix.platform.os }}-${{ matrix.platform.arch }}.tar.gz diff --git a/.github/workflows/build_sdk.yml b/.github/workflows/build_sdk.yml index fa3d6ab..7fe6f54 100644 --- a/.github/workflows/build_sdk.yml +++ b/.github/workflows/build_sdk.yml @@ -42,7 +42,7 @@ jobs: - java steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Cache examples generation @@ -62,10 +62,7 @@ jobs: - name: Update path run: echo "${{ github.workspace }}/bin" >> "$GITHUB_PATH" - name: Restore makefile progress - uses: actions/download-artifact@v4 - with: - name: prerequisites.make - path: .make + run: make --touch provider schema - name: Build SDK run: make build_${{ matrix.language }} - name: Check worktree clean @@ -81,9 +78,3 @@ jobs: uses: ./.github/actions/upload-sdk with: language: ${{ matrix.language }} - - name: Save makefile progress - uses: actions/upload-artifact@v4 - with: - name: build_${{ matrix.language }}.make - path: .make - include-hidden-files: true diff --git a/.github/workflows/command-dispatch.yml b/.github/workflows/command-dispatch.yml index 8c1e20e..1a54d6a 100644 --- a/.github/workflows/command-dispatch.yml +++ b/.github/workflows/command-dispatch.yml @@ -24,7 +24,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - uses: peter-evans/slash-command-dispatch@v4 diff --git a/.github/workflows/community-moderation.yml b/.github/workflows/community-moderation.yml index cc672ff..9fdd1ae 100644 --- a/.github/workflows/community-moderation.yml +++ b/.github/workflows/community-moderation.yml @@ -8,24 +8,24 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - id: schema_changed name: Check for diff in schema - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v2.12.0 with: filters: "changed: 'provider/cmd/**/schema.json'" - id: sdk_changed if: steps.schema_changed.outputs.changed == 'false' name: Check for diff in sdk/** - uses: dorny/paths-filter@v2 + uses: dorny/paths-filter@v2.12.0 with: filters: "changed: 'sdk/**'" - if: steps.sdk_changed.outputs.changed == 'true' && github.event.pull_request.head.repo.full_name != github.repository name: Send codegen warning as comment on PR - uses: thollander/actions-comment-pull-request@v2 + uses: thollander/actions-comment-pull-request@v2.5.0 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} message: > diff --git a/.github/workflows/license.yml b/.github/workflows/license.yml index 600ddb0..a5eb1d1 100644 --- a/.github/workflows/license.yml +++ b/.github/workflows/license.yml @@ -31,7 +31,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 38c2691..e0cd81a 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -31,7 +31,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Install go diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fe78cd5..12a3ce4 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -56,11 +56,11 @@ jobs: tool-cache: false swap-storage: false - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Configure AWS Credentials - uses: aws-actions/configure-aws-credentials@v4 + uses: aws-actions/configure-aws-credentials@v4.0.2 with: aws-access-key-id: ${{ secrets.AWS_CORP_S3_UPLOAD_ACCESS_KEY_ID }} aws-region: us-west-2 @@ -138,7 +138,7 @@ jobs: PROVIDER_VERSION: ${{ needs.prerequisites.outputs.version }} steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools @@ -154,10 +154,7 @@ jobs: with: language: ${{ matrix.language }} - name: Restore makefile progress - uses: actions/download-artifact@v4 - with: - name: build_${{ matrix.language }}.make - path: .make + run: make --touch provider schema build_${{ matrix.language }} - name: Update path run: echo "${{ github.workspace }}/bin" >> "$GITHUB_PATH" - name: Install Python deps diff --git a/.github/workflows/prerelease.yml b/.github/workflows/prerelease.yml index 0d54720..e63cf83 100644 --- a/.github/workflows/prerelease.yml +++ b/.github/workflows/prerelease.yml @@ -80,7 +80,7 @@ jobs: PROVIDER_VERSION: ${{ needs.prerequisites.outputs.version }} steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools @@ -96,10 +96,7 @@ jobs: with: language: ${{ matrix.language }} - name: Restore makefile progress - uses: actions/download-artifact@v4 - with: - name: build_${{ matrix.language }}.make - path: .make + run: make --touch provider schema build_${{ matrix.language }} - name: Update path run: echo "${{ github.workspace }}/bin" >> "$GITHUB_PATH" - name: Install Python deps diff --git a/.github/workflows/prerequisites.yml b/.github/workflows/prerequisites.yml index 92a9c65..dcaaaab 100644 --- a/.github/workflows/prerequisites.yml +++ b/.github/workflows/prerequisites.yml @@ -44,7 +44,7 @@ jobs: version: ${{ steps.provider-version.outputs.version }} steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - uses: pulumi/provider-version-action@v1 @@ -78,15 +78,9 @@ jobs: schema-tools compare -r github://api.github.com/pulumi -p http -o "${{ inputs.default_branch }}" -n --local-path=provider/cmd/pulumi-resource-http/schema.json; echo "$EOF"; } >> "$GITHUB_ENV" - - name: Save makefile progress - uses: actions/upload-artifact@v4 - with: - name: prerequisites.make - path: .make - include-hidden-files: true - if: inputs.is_pr && inputs.is_automated == false name: Comment on PR with Details of Schema Check - uses: thollander/actions-comment-pull-request@v2 + uses: thollander/actions-comment-pull-request@v2.5.0 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} comment_tag: schemaCheck @@ -100,7 +94,7 @@ jobs: uses: ./.github/actions/upload-bin - name: Upload schema-embed.json - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v4.4.3 with: name: schema-embed.json path: provider/cmd/pulumi-resource-http/schema-embed.json diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index bddd32b..9f86c47 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -47,7 +47,7 @@ jobs: if: inputs.skipGoSdk && inputs.isPrerelease == false run: echo "Can't skip Go SDK for stable releases. This is likely a bug in the calling workflow." && exit 1 - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools @@ -55,7 +55,7 @@ jobs: with: tools: pulumictl, pulumicli, go, schema-tools - name: Configure AWS Credentials - uses: aws-actions/configure-aws-credentials@v4 + uses: aws-actions/configure-aws-credentials@v4.0.2 with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-region: us-east-2 @@ -67,7 +67,7 @@ jobs: - name: Create dist directory run: mkdir -p dist - name: Download provider assets - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v4.1.8 with: pattern: pulumi-resource-http-v${{ inputs.version }}-* path: dist @@ -111,7 +111,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: # Persist credentials so we can push back to the repo persist-credentials: true @@ -152,7 +152,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Clean up release labels diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 3106dbe..2c0b920 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -25,11 +25,11 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Comment PR - uses: thollander/actions-comment-pull-request@v2 + uses: thollander/actions-comment-pull-request@v2.5.0 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} message: > diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3ada75b..4807d41 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -86,7 +86,7 @@ jobs: PROVIDER_VERSION: ${{ needs.prerequisites.outputs.version }} steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools @@ -102,10 +102,7 @@ jobs: with: language: ${{ matrix.language }} - name: Restore makefile progress - uses: actions/download-artifact@v4 - with: - name: build_${{ matrix.language }}.make - path: .make + run: make --touch provider schema build_${{ matrix.language }} - name: Update path run: echo "${{ github.workspace }}/bin" >> "$GITHUB_PATH" - name: Install Python deps diff --git a/.github/workflows/release_command.yml b/.github/workflows/release_command.yml index f199952..ea43de9 100644 --- a/.github/workflows/release_command.yml +++ b/.github/workflows/release_command.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Should release PR diff --git a/.github/workflows/resync-build.yml b/.github/workflows/resync-build.yml index 2946a92..ec17395 100644 --- a/.github/workflows/resync-build.yml +++ b/.github/workflows/resync-build.yml @@ -26,12 +26,12 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: # Persist credentials so we can push a new branch. persist-credentials: true - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: path: ci-mgmt repository: pulumi/ci-mgmt diff --git a/.github/workflows/run-acceptance-tests.yml b/.github/workflows/run-acceptance-tests.yml index 7b13492..97a79f7 100644 --- a/.github/workflows/run-acceptance-tests.yml +++ b/.github/workflows/run-acceptance-tests.yml @@ -128,13 +128,13 @@ jobs: PROVIDER_VERSION: ${{ needs.prerequisites.outputs.version }} steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: ref: ${{ env.PR_COMMIT_SHA }} persist-credentials: false - name: Checkout p/examples if: matrix.testTarget == 'pulumiExamples' - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: repository: pulumi/examples path: p-examples @@ -151,10 +151,7 @@ jobs: with: language: ${{ matrix.language }} - name: Restore makefile progress - uses: actions/download-artifact@v4 - with: - name: build_${{ matrix.language }}.make - path: .make + run: make --touch provider schema build_${{ matrix.language }} - name: Update path run: echo "${{ github.workspace }}/bin" >> "$GITHUB_PATH" - name: Install Python deps diff --git a/.github/workflows/upgrade-bridge.yml b/.github/workflows/upgrade-bridge.yml index dcfea70..b47d57a 100644 --- a/.github/workflows/upgrade-bridge.yml +++ b/.github/workflows/upgrade-bridge.yml @@ -49,16 +49,23 @@ on: required: false type: boolean default: false + +permissions: + contents: write + issues: write + pull-requests: write + env: - GH_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }} + GH_TOKEN: ${{ secrets.PULUMI_PROVIDER_AUTOMATION_TOKEN || secrets.PULUMI_BOT_TOKEN || secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + jobs: upgrade_provider: name: upgrade-provider runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools diff --git a/.github/workflows/upgrade-provider.yml b/.github/workflows/upgrade-provider.yml index 6e7ec04..174d3f4 100644 --- a/.github/workflows/upgrade-provider.yml +++ b/.github/workflows/upgrade-provider.yml @@ -22,16 +22,22 @@ on: # 3 AM UTC ~ 8 PM PDT / 7 PM PST daily. Time chosen to run during off hours. - cron: 0 3 * * * +permissions: + contents: write + issues: write + pull-requests: write + env: - GH_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }} + GH_TOKEN: ${{ secrets.PULUMI_PROVIDER_AUTOMATION_TOKEN || secrets.PULUMI_BOT_TOKEN || secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + jobs: upgrade_provider: name: upgrade-provider runs-on: ubuntu-latest steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: # Persist credentials so upgrade-provider can push a new branch. persist-credentials: true diff --git a/.github/workflows/verify-release.yml b/.github/workflows/verify-release.yml index d3c9540..332e2a8 100644 --- a/.github/workflows/verify-release.yml +++ b/.github/workflows/verify-release.yml @@ -70,7 +70,7 @@ jobs: runs-on: ${{ matrix.runner }} steps: - name: Checkout Repo - uses: actions/checkout@v4 + uses: actions/checkout@v4.2.2 with: persist-credentials: false - name: Setup tools diff --git a/Makefile b/Makefile index e9e4de7..766903c 100644 --- a/Makefile +++ b/Makefile @@ -240,12 +240,12 @@ tfgen_no_deps: .make/schema .make/schema: export PULUMI_CONVERT_EXAMPLES_CACHE_DIR := $(WORKING_DIR)/.pulumi/examples-cache .make/schema: export PULUMI_DISABLE_AUTOMATIC_PLUGIN_ACQUISITION := $(PULUMI_CONVERT) .make/schema: export PULUMI_MISSING_DOCS_ERROR := $(PULUMI_MISSING_DOCS_ERROR) -.make/schema: bin/$(TFGEN) provider/resources.go provider/go.mod .make/install_plugins .make/upstream +.make/schema: bin/$(TFGEN) .make/install_plugins .make/upstream $(WORKING_DIR)/bin/$(TFGEN) schema --out provider/cmd/$(PROVIDER) (cd provider && VERSION=$(VERSION_GENERIC) go generate cmd/$(PROVIDER)/main.go) @touch $@ tfgen_build_only: bin/$(TFGEN) -bin/$(TFGEN): +bin/$(TFGEN): provider/*.go provider/go.* .make/upstream (cd provider && go build $(PULUMI_PROVIDER_BUILD_PARALLELISM) -o $(WORKING_DIR)/bin/$(TFGEN) -ldflags "$(LDFLAGS_PROJ_VERSION) $(LDFLAGS_EXTRAS)" $(PROJECT)/$(PROVIDER_PATH)/cmd/$(TFGEN)) .PHONY: tfgen schema tfgen_no_deps tfgen_build_only