name: Build Terraform provider and prepare release on: workflow_dispatch: inputs: ref: type: string description: "Git ref to checkout" required: false workflow_call: inputs: ref: type: string description: "Git ref to checkout" required: true jobs: build-tf-provider: runs-on: ubuntu-22.04 strategy: fail-fast: false matrix: include: - arch: amd64 os: linux - arch: amd64 os: darwin - arch: amd64 os: windows - arch: arm64 os: linux - arch: arm64 os: darwin steps: - name: Checkout id: checkout uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 with: ref: ${{ inputs.ref || github.head_ref }} - name: Setup bazel uses: ./.github/actions/setup_bazel_nix with: useCache: "false" - name: Build Terraform Provider Binary uses: ./.github/actions/build_tf_provider with: targetOS: ${{ matrix.os }} targetArch: ${{ matrix.arch }} - name: Upload Terraform Provider Binary as artifact (unix) uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3 if : ${{ matrix.os != 'windows' }} with: name: terraform-provider-constellation-${{ matrix.os }}-${{ matrix.arch }} path: | build/terraform-provider-constellation-${{ matrix.os }}-${{ matrix.arch }} - name: Upload Terraform Provider Binary as artifact (windows) uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 # v3.1.3 if : ${{ matrix.os == 'windows' }} with: name: terraform-provider-constellation-${{ matrix.os }}-${{ matrix.arch }} path: | build/terraform-provider-constellation-${{ matrix.os }}-${{ matrix.arch }}.exe