diff --git a/.github/actions/download-bin/action.yml b/.github/actions/download-bin/action.yml index 3bff6fd..74cc652 100644 --- a/.github/actions/download-bin/action.yml +++ b/.github/actions/download-bin/action.yml @@ -1,16 +1,23 @@ -name: Download binary assets -description: Downloads the provider and tfgen binaries to `bin/`. +name: Download the provider binary +description: Downloads the provider binary to `bin/`. runs: using: "composite" steps: - - name: Download provider + tfgen binaries + + - name: Download pulumi-resource-http uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 with: - name: http-provider.tar.gz + pattern: pulumi-resource-http-*-linux-amd64.tar.gz path: ${{ github.workspace }}/bin - - name: Untar provider binaries + merge-multiple: true + + - name: Untar pulumi-resource-http + shell: bash + run: | + tar -zxf ${{ github.workspace }}/bin/*amd64.tar.gz -C ${{ github.workspace}}/bin + + - name: Mark pulumi-resource-http as executable shell: bash run: | - tar -zxf ${{ github.workspace }}/bin/provider.tar.gz -C ${{ github.workspace}}/bin find ${{ github.workspace }} -name "pulumi-*-http" -print -exec chmod +x {} \; diff --git a/.github/actions/download-tfgen/action.yml b/.github/actions/download-tfgen/action.yml new file mode 100644 index 0000000..b61a031 --- /dev/null +++ b/.github/actions/download-tfgen/action.yml @@ -0,0 +1,17 @@ +name: Download the tfgen binary +description: Downloads the tfgen binary to `bin/`. + +runs: + using: "composite" + steps: + + - name: Download pulumi-tfgen-http + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 + with: + name: pulumi-tfgen-http + path: ${{ github.workspace }}/bin + + - name: Ensure pulumi-tfgen-http is executable + shell: bash + run: | + find ${{ github.workspace }} -name "pulumi-*-http" -print -exec chmod +x {} \; diff --git a/.github/workflows/build_provider.yml b/.github/workflows/build_provider.yml index 2122eb7..511a273 100644 --- a/.github/workflows/build_provider.yml +++ b/.github/workflows/build_provider.yml @@ -14,6 +14,7 @@ jobs: runs-on: ubuntu-latest env: PROVIDER_VERSION: ${{ inputs.version }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} strategy: fail-fast: true matrix: diff --git a/.github/workflows/build_sdk.yml b/.github/workflows/build_sdk.yml index 4667d94..496c953 100644 --- a/.github/workflows/build_sdk.yml +++ b/.github/workflows/build_sdk.yml @@ -57,8 +57,8 @@ jobs: tools: pulumictl, pulumicli, ${{ matrix.language }} - name: Prepare local workspace run: make prepare_local_workspace - - name: Download bin - uses: ./.github/actions/download-bin + - name: Download tfgen + uses: ./.github/actions/download-tfgen - name: Update path run: echo "${{ github.workspace }}/bin" >> "$GITHUB_PATH" - name: Restore makefile progress diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ff68e8c..cc9d60a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -130,6 +130,7 @@ jobs: name: test needs: - prerequisites + - build_provider - build_sdk permissions: contents: read diff --git a/.github/workflows/prerelease.yml b/.github/workflows/prerelease.yml index 15f57da..feb279f 100644 --- a/.github/workflows/prerelease.yml +++ b/.github/workflows/prerelease.yml @@ -71,6 +71,7 @@ jobs: name: test needs: - prerequisites + - build_provider - build_sdk permissions: contents: read diff --git a/.github/workflows/prerequisites.yml b/.github/workflows/prerequisites.yml index 414064e..cebf9a7 100644 --- a/.github/workflows/prerequisites.yml +++ b/.github/workflows/prerequisites.yml @@ -90,8 +90,12 @@ jobs: Maintainer note: consult the [runbook](https://github.com/pulumi/platform-providers-team/blob/main/playbooks/tf-provider-updating.md) for dealing with any breaking changes. - - name: Upload bin - uses: ./.github/actions/upload-bin + - name: Upload pulumi-tfgen-http + uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 + with: + name: pulumi-tfgen-http + path: ${{ github.workspace }}/bin/pulumi-tfgen-http + retention-days: 30 - name: Upload schema-embed.json uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 56a027c..b407024 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -77,6 +77,7 @@ jobs: name: test needs: - prerequisites + - build_provider - build_sdk permissions: contents: read diff --git a/.github/workflows/run-acceptance-tests.yml b/.github/workflows/run-acceptance-tests.yml index a74cd7d..62f5c69 100644 --- a/.github/workflows/run-acceptance-tests.yml +++ b/.github/workflows/run-acceptance-tests.yml @@ -119,6 +119,7 @@ jobs: name: test needs: - prerequisites + - build_provider - build_sdk permissions: contents: read diff --git a/upstream.sh b/upstream.sh index 87593cd..640b836 100755 --- a/upstream.sh +++ b/upstream.sh @@ -138,11 +138,14 @@ apply_patches() { # Iterating over the patches folder in sorted order, # apply the patch using a 3-way merge strategy. This mirrors the default behavior of 'git merge' cd upstream + # Allow directory to be empty + shopt -s nullglob for patch in ../patches/*.patch; do if ! git apply --3way "${patch}" --allow-empty; then err_failed_to_apply "$(basename "${patch}")" fi done + shopt -u nullglob } clean_rebases() { @@ -227,13 +230,16 @@ checkout() { # Create a new branch 'pulumi/patch-checkout' which will contain the commits for each patch git checkout -B pulumi/patch-checkout + # Allow directory to be empty + shopt -s nullglob for patch in ../patches/*.patch; do if ! git am --3way "${patch}"; then err_failed_to_apply "$(basename "${patch}")" fi done + shopt -u nullglob - cat <