diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4be8f94..26b5c98 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -39,10 +39,10 @@ env: SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }} SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }} - GOVERSION: 1.21.x - NODEVERSION: 20.x - PYTHONVERSION: "3.11" - DOTNETVERSION: 8.0.x + GOVERSION: "1.21.x" + NODEVERSION: "20.x" + PYTHONVERSION: "3.11.8" + DOTNETVERSION: "8.0.x" JAVAVERSION: "11" ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }} @@ -240,7 +240,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -254,7 +254,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -384,7 +384,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -398,7 +398,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -410,7 +410,7 @@ jobs: -exec chmod +x {} \; - name: Download SDK if: ${{ matrix.language != 'yaml' }} - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: ${{ matrix.language }}-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -444,7 +444,7 @@ jobs: with: environment: logins/pulumi-ci - name: Authenticate to Google Cloud - uses: google-github-actions/auth@71f986410dfbc7added4569d411d040a91dc6935 # v2.1.8 + uses: google-github-actions/auth@7b53cdc2a387814ed14eec026287aac689ae8c9b # v2.1.9 with: workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER }}/locations/global/workloadIdentityPools/${{ @@ -571,11 +571,11 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Download python SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: python-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -583,7 +583,7 @@ jobs: run: tar -zxf ${{github.workspace}}/sdk/python.tar.gz -C ${{github.workspace}}/sdk/python - name: Download dotnet SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: dotnet-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -591,7 +591,7 @@ jobs: run: tar -zxf ${{github.workspace}}/sdk/dotnet.tar.gz -C ${{github.workspace}}/sdk/dotnet - name: Download nodejs SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: nodejs-sdk.tar.gz path: ${{ github.workspace}}/sdk/ diff --git a/.github/workflows/command-dispatch.yml b/.github/workflows/command-dispatch.yml index 3b1147c..a713b08 100644 --- a/.github/workflows/command-dispatch.yml +++ b/.github/workflows/command-dispatch.yml @@ -24,10 +24,10 @@ env: SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }} SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }} - GOVERSION: 1.21.x - NODEVERSION: 20.x - PYTHONVERSION: "3.11" - DOTNETVERSION: 8.0.x + GOVERSION: "1.21.x" + NODEVERSION: "20.x" + PYTHONVERSION: "3.11.8" + DOTNETVERSION: "8.0.x" JAVAVERSION: "11" ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }} diff --git a/.github/workflows/prerelease.yml b/.github/workflows/prerelease.yml index 0a27ea9..5f0a1de 100644 --- a/.github/workflows/prerelease.yml +++ b/.github/workflows/prerelease.yml @@ -30,10 +30,10 @@ env: SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }} SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }} - GOVERSION: 1.21.x - NODEVERSION: 20.x - PYTHONVERSION: "3.11" - DOTNETVERSION: 8.0.x + GOVERSION: "1.21.x" + NODEVERSION: "20.x" + PYTHONVERSION: "3.11.8" + DOTNETVERSION: "8.0.x" JAVAVERSION: "11" ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }} @@ -232,7 +232,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -246,7 +246,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -375,7 +375,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -389,7 +389,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -401,7 +401,7 @@ jobs: -exec chmod +x {} \; - name: Download SDK if: ${{ matrix.language != 'yaml' }} - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: ${{ matrix.language }}-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -435,7 +435,7 @@ jobs: with: environment: logins/pulumi-ci - name: Authenticate to Google Cloud - uses: google-github-actions/auth@71f986410dfbc7added4569d411d040a91dc6935 # v2.1.8 + uses: google-github-actions/auth@7b53cdc2a387814ed14eec026287aac689ae8c9b # v2.1.9 with: workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER }}/locations/global/workloadIdentityPools/${{ @@ -562,11 +562,11 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Download python SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: python-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -574,7 +574,7 @@ jobs: run: tar -zxf ${{github.workspace}}/sdk/python.tar.gz -C ${{github.workspace}}/sdk/python - name: Download dotnet SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: dotnet-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -582,7 +582,7 @@ jobs: run: tar -zxf ${{github.workspace}}/sdk/dotnet.tar.gz -C ${{github.workspace}}/sdk/dotnet - name: Download nodejs SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: nodejs-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -640,7 +640,7 @@ jobs: with: gradle-version: "7.6" - name: Download java SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: java-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -670,7 +670,7 @@ jobs: with: set-env: PROVIDER_VERSION - name: Download go SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: go-sdk.tar.gz path: ${{ github.workspace}}/sdk/ diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 14ca458..0f3781c 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -21,10 +21,10 @@ env: SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }} SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }} - GOVERSION: 1.21.x - NODEVERSION: 20.x - PYTHONVERSION: "3.11" - DOTNETVERSION: 8.0.x + GOVERSION: "1.21.x" + NODEVERSION: "20.x" + PYTHONVERSION: "3.11.8" + DOTNETVERSION: "8.0.x" JAVAVERSION: "11" ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3dc0939..b27da84 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -31,10 +31,10 @@ env: SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }} SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }} - GOVERSION: 1.21.x - NODEVERSION: 20.x - PYTHONVERSION: "3.11" - DOTNETVERSION: 8.0.x + GOVERSION: "1.21.x" + NODEVERSION: "20.x" + PYTHONVERSION: "3.11.8" + DOTNETVERSION: "8.0.x" JAVAVERSION: "11" ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }} @@ -232,7 +232,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -246,7 +246,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -375,7 +375,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -389,7 +389,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -401,7 +401,7 @@ jobs: -exec chmod +x {} \; - name: Download SDK if: ${{ matrix.language != 'yaml' }} - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: ${{ matrix.language }}-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -435,7 +435,7 @@ jobs: with: environment: logins/pulumi-ci - name: Authenticate to Google Cloud - uses: google-github-actions/auth@71f986410dfbc7added4569d411d040a91dc6935 # v2.1.8 + uses: google-github-actions/auth@7b53cdc2a387814ed14eec026287aac689ae8c9b # v2.1.9 with: workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER }}/locations/global/workloadIdentityPools/${{ @@ -562,11 +562,11 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Download python SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: python-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -574,7 +574,7 @@ jobs: run: tar -zxf ${{github.workspace}}/sdk/python.tar.gz -C ${{github.workspace}}/sdk/python - name: Download dotnet SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: dotnet-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -582,7 +582,7 @@ jobs: run: tar -zxf ${{github.workspace}}/sdk/dotnet.tar.gz -C ${{github.workspace}}/sdk/dotnet - name: Download nodejs SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: nodejs-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -640,7 +640,7 @@ jobs: with: gradle-version: "7.6" - name: Download java SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: java-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -670,7 +670,7 @@ jobs: with: set-env: PROVIDER_VERSION - name: Download go SDK - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: go-sdk.tar.gz path: ${{ github.workspace}}/sdk/ diff --git a/.github/workflows/run-acceptance-tests.yml b/.github/workflows/run-acceptance-tests.yml index 07fa554..e0e129a 100644 --- a/.github/workflows/run-acceptance-tests.yml +++ b/.github/workflows/run-acceptance-tests.yml @@ -27,10 +27,10 @@ env: SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }} SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }} - GOVERSION: 1.21.x - NODEVERSION: 20.x - PYTHONVERSION: "3.11" - DOTNETVERSION: 8.0.x + GOVERSION: "1.21.x" + NODEVERSION: "20.x" + PYTHONVERSION: "3.11.8" + DOTNETVERSION: "8.0.x" JAVAVERSION: "11" ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }} @@ -252,7 +252,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -266,7 +266,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -400,7 +400,7 @@ jobs: with: dotnet-version: ${{ env.DOTNETVERSION }} - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Setup Java @@ -414,7 +414,7 @@ jobs: with: gradle-version: "7.6" - name: Download provider - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: pulumi-${{ env.PROVIDER }}-provider.tar.gz path: ${{ github.workspace }}/bin @@ -426,7 +426,7 @@ jobs: -exec chmod +x {} \; - name: Download SDK if: ${{ matrix.language != 'yaml' }} - uses: actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e # v4.2.1 + uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0 with: name: ${{ matrix.language }}-sdk.tar.gz path: ${{ github.workspace}}/sdk/ @@ -460,7 +460,7 @@ jobs: with: environment: logins/pulumi-ci - name: Authenticate to Google Cloud - uses: google-github-actions/auth@71f986410dfbc7added4569d411d040a91dc6935 # v2.1.8 + uses: google-github-actions/auth@7b53cdc2a387814ed14eec026287aac689ae8c9b # v2.1.9 with: workload_identity_provider: projects/${{ env.GOOGLE_PROJECT_NUMBER }}/locations/global/workloadIdentityPools/${{ diff --git a/.github/workflows/weekly-pulumi-update.yml b/.github/workflows/weekly-pulumi-update.yml index 83d886f..eaeec78 100644 --- a/.github/workflows/weekly-pulumi-update.yml +++ b/.github/workflows/weekly-pulumi-update.yml @@ -23,10 +23,10 @@ env: SIGNING_KEY_ID: ${{ secrets.JAVA_SIGNING_KEY_ID }} SIGNING_KEY: ${{ secrets.JAVA_SIGNING_KEY }} SIGNING_PASSWORD: ${{ secrets.JAVA_SIGNING_PASSWORD }} - GOVERSION: 1.21.x - NODEVERSION: 20.x - PYTHONVERSION: "3.11" - DOTNETVERSION: 8.0.x + GOVERSION: "1.21.x" + NODEVERSION: "20.x" + PYTHONVERSION: "3.11.8" + DOTNETVERSION: "8.0.x" JAVAVERSION: "11" ARM_CLIENT_ID: 30e520fa-12b4-4e21-b473-9426c5ac2e1e ARM_CLIENT_SECRET: ${{ secrets.ARM_CLIENT_SECRET }} @@ -73,7 +73,7 @@ jobs: node-version: ${{ env.NODEVERSION }} registry-url: https://registry.npmjs.org - name: Setup Python - uses: actions/setup-python@8d9ed9ac5c53483de85588cdf95a591a75ab9f55 # v5.5.0 + uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0 with: python-version: ${{ env.PYTHONVERSION }} - name: Update Pulumi/Pulumi diff --git a/CHANGELOG.md b/CHANGELOG.md index b8b6100..63821bd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ ## Unreleased +### Changed + +- Respond to cancel for exec builds. () + ## 0.0.11 (2025-04-11) ### Changed diff --git a/go.mod b/go.mod index 6c9dad7..504221a 100644 --- a/go.mod +++ b/go.mod @@ -17,7 +17,7 @@ require ( github.com/pulumi/providertest v0.3.1 github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet v0.0.0-20241219213128-b19d8c8da35b github.com/pulumi/pulumi-go-provider v0.25.1-0.20250501172612-76ede73bcfee - github.com/pulumi/pulumi-java/pkg v1.10.1-0.20250430211204-978569a2545c + github.com/pulumi/pulumi-java/pkg v1.10.1-0.20250501074704-87881c4a7c04 github.com/pulumi/pulumi-yaml v1.17.0 github.com/pulumi/pulumi/pkg/v3 v3.165.0 github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3 v3.0.0-20250417110128-49fb14839a5a diff --git a/go.sum b/go.sum index 023b68a..97d47c1 100644 --- a/go.sum +++ b/go.sum @@ -952,8 +952,8 @@ github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet v0.0.0-20241219213128-b19 github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet v0.0.0-20241219213128-b19d8c8da35b/go.mod h1:5LjEUmPDpUyXzFbQCy3s1oFgeU9K3gVA6tX+xn1Xvbo= github.com/pulumi/pulumi-go-provider v0.25.1-0.20250501172612-76ede73bcfee h1:W/TG5TuN0F0JRRtJ7e588T1nzDM6OZfQZpX1NP3FEds= github.com/pulumi/pulumi-go-provider v0.25.1-0.20250501172612-76ede73bcfee/go.mod h1:4WYnu61f4I8EvmNzxftRtXznAfe7SdgtFMvxqoygGCg= -github.com/pulumi/pulumi-java/pkg v1.10.1-0.20250430211204-978569a2545c h1:S0EGaFRWVXhVvRJ2cx3xb64Bzraga45tojsavqLsAHI= -github.com/pulumi/pulumi-java/pkg v1.10.1-0.20250430211204-978569a2545c/go.mod h1:fE/A/3U2rpqpQKG0RrmmHjf0q+7shjsSfi74mhmLF6g= +github.com/pulumi/pulumi-java/pkg v1.10.1-0.20250501074704-87881c4a7c04 h1:JtnozyKVJrV3ITXhnZL82lO3V8pbqrA+p5co8b3hbr4= +github.com/pulumi/pulumi-java/pkg v1.10.1-0.20250501074704-87881c4a7c04/go.mod h1:fE/A/3U2rpqpQKG0RrmmHjf0q+7shjsSfi74mhmLF6g= github.com/pulumi/pulumi-yaml v1.17.0 h1:ebzggygqBcQrtmdBUqi28B1L/fAyHCFVIt0dS5re8Oc= github.com/pulumi/pulumi-yaml v1.17.0/go.mod h1:4cpS4ITkIAXgVedTZB3JY/DnZu9XSh+RhrKB5WlB/fs= github.com/pulumi/pulumi/pkg/v3 v3.165.0 h1:a0UOxhM+yUi5NH+SP5lv0YHxac3JOaeaZ/VINVkK+bM= diff --git a/provider/internal/cli.go b/provider/internal/cli.go index bb5a280..ab33922 100644 --- a/provider/internal/cli.go +++ b/provider/internal/cli.go @@ -25,6 +25,7 @@ import ( "fmt" "io" "os" + "os/exec" "path/filepath" "strings" @@ -203,7 +204,7 @@ func (c *cli) Close() error { // execBuild performs a build by os.Exec'ing the docker-buildx binary. // Credentials are communicated to docker-buildx via a temporary directory. // Secrets are communicated via dynamic environment variables. -func (c *cli) execBuild(b Build) (*client.SolveResponse, error) { +func (c *cli) execBuild(ctx context.Context, b Build) (*client.SolveResponse, error) { // Setup a temporary directory for auth, and clean it up when we're done. tmp, err := os.MkdirTemp("", "pulumi-docker-") if err != nil { @@ -213,7 +214,7 @@ func (c *cli) execBuild(b Build) (*client.SolveResponse, error) { opts := b.BuildOptions() - builder, err := c.host.builderFor(b) + builder, err := c.host.builderFor(ctx, b) if err != nil { return nil, err } @@ -339,7 +340,7 @@ func (c *cli) execBuild(b Build) (*client.SolveResponse, error) { } // Invoke docker-buildx. - err = c.exec(args, env) + err = c.exec(ctx, args, env) if err != nil { return nil, err } @@ -378,7 +379,7 @@ func (c *cli) execBuild(b Build) (*client.SolveResponse, error) { // exec invokes a Docker plugin binary. The first argument should be the name // of the plugin's subcommand, e.g. "buildx". -func (c *cli) exec(args, extraEnv []string) error { +func (c *cli) exec(ctx context.Context, args, extraEnv []string) error { if len(args) == 0 { return errors.New("args must be non-empty") } @@ -395,16 +396,18 @@ func (c *cli) exec(args, extraEnv []string) error { defer contract.IgnoreClose(c.w) - cmd, err := manager.PluginRunCommand(c, name, root) + runCmd, err := manager.PluginRunCommand(c, name, root) if err != nil { return err } - cmd.Args = append([]string{cmd.Args[0]}, args...) + // Create a new command that inherits from ctx. + cmd := exec.CommandContext(ctx, //nolint:gosec // We take the first argument and binary from runCmd. + runCmd.Path, append([]string{runCmd.Args[1]}, args...)..., + ) cmd.Stderr = c.Err() cmd.Stdout = c.Out() cmd.Stdin = c.In() - - cmd.Env = append(cmd.Env, extraEnv...) + cmd.Env = append(runCmd.Env, extraEnv...) //nolint:gocritic // We are intentionally assigning from runCmd to cmd return cmd.Run() } diff --git a/provider/internal/cli_test.go b/provider/internal/cli_test.go index 8169450..48f59fb 100644 --- a/provider/internal/cli_test.go +++ b/provider/internal/cli_test.go @@ -28,12 +28,12 @@ import ( func TestExec(t *testing.T) { t.Parallel() - h, err := newHost(context.Background(), nil) + h, err := newHost(t.Context(), nil) require.NoError(t, err) cli, err := wrap(h) require.NoError(t, err) - err = cli.exec([]string{"buildx", "version"}, nil) + err = cli.exec(t.Context(), []string{"buildx", "version"}, nil) assert.NoError(t, err) out, err := io.ReadAll(cli.r) diff --git a/provider/internal/client.go b/provider/internal/client.go index d09021c..6381704 100644 --- a/provider/internal/client.go +++ b/provider/internal/client.go @@ -106,10 +106,10 @@ func (c *cli) Build( defer contract.IgnoreClose(c) if build.ShouldExec() { - return c.execBuild(build) + return c.execBuild(ctx, build) } - b, err := c.host.builderFor(build) + b, err := c.host.builderFor(ctx, build) if err != nil { return nil, err } diff --git a/provider/internal/host.go b/provider/internal/host.go index 7b34f1c..3f852b0 100644 --- a/provider/internal/host.go +++ b/provider/internal/host.go @@ -68,7 +68,7 @@ func newHost(ctx context.Context, config *Config) (*host, error) { // // If the build doesn't specify a builder by name, we will iterate through all // available builders until we find one that we can connect to. -func (h *host) builderFor(build Build) (*cachedBuilder, error) { +func (h *host) builderFor(ctx context.Context, build Build) (*cachedBuilder, error) { h.mu.Lock() defer h.mu.Unlock() @@ -116,7 +116,7 @@ func (h *host) builderFor(build Build) (*cachedBuilder, error) { if bb.Err() != nil { continue } - nodes, err := bb.LoadNodes(context.Background()) + nodes, err := bb.LoadNodes(ctx) if err != nil { continue } @@ -125,7 +125,7 @@ func (h *host) builderFor(build Build) (*cachedBuilder, error) { if n.Driver == nil { continue nextbuilder } - if _, err := n.Driver.Dial(context.Background()); err != nil { + if _, err := n.Driver.Dial(ctx); err != nil { continue nextbuilder } // TODO: Confirm the builder supports the requested platforms. @@ -139,7 +139,7 @@ func (h *host) builderFor(build Build) (*cachedBuilder, error) { // If we STILL don't have a builder, create a docker-container instance. b, err = builder.Create( - context.Background(), + ctx, txn, h.cli, builder.CreateOpts{Driver: "docker-container"}, @@ -147,7 +147,7 @@ func (h *host) builderFor(build Build) (*cachedBuilder, error) { if err != nil { return nil, fmt.Errorf("creating builder: %w", err) } - ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second) + ctx, cancel := context.WithTimeout(ctx, 30*time.Second) defer cancel() if _, err := b.Boot(ctx); err != nil { return nil, fmt.Errorf("booting builder: %w", err) @@ -157,7 +157,7 @@ func (h *host) builderFor(build Build) (*cachedBuilder, error) { // Attempt to load nodes in order to determine the builder's driver. Ignore // errors for "exec" builds because it's possible to request builders with // drivers that are unknown to us. - nodes, err := b.LoadNodes(context.Background(), builder.WithData()) + nodes, err := b.LoadNodes(ctx, builder.WithData()) if err != nil && !build.ShouldExec() { return nil, fmt.Errorf("loading nodes: %w", err) }