fix: goreleaser to wait tag creation #5
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Terraform Provider release workflow. | |
name: Release | |
on: | |
workflow_dispatch: | |
pull_request: | |
branches: [main] | |
types: [closed] | |
# Releases need permissions to read and write the repository contents. | |
# GitHub considers creating releases and uploading assets as writing contents. | |
permissions: | |
contents: write | |
jobs: | |
create_tag: | |
environment: production | |
runs-on: ubuntu-latest | |
if: github.event.pull_request.merged == true | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
ref: ${{ github.event.pull_request.merge_commit_sha }} | |
fetch-depth: '0' | |
- name: Get previous tag | |
id: previoustag | |
uses: "WyriHaximus/github-action-get-previous-tag@v1" | |
with: | |
fallback: 0.0.0 | |
- name: Bump version and push tag | |
uses: anothrNick/[email protected] # Don't use @master or @v1 unless you're happy to test the latest version | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # if you don't want to set write permissions use a PAT token | |
WITH_V: true | |
DEFAULT_BUMP: patch | |
INITIAL_VERSION: ${{ steps.previoustag.outputs.tag }} | |
goreleaser: | |
environment: production | |
needs: [create_tag] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 | |
with: | |
fetch-depth: 0 | |
- uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1 | |
with: | |
go-version-file: 'go.mod' | |
cache: true | |
- name: Import GPG key | |
uses: crazy-max/ghaction-import-gpg@72b6676b71ab476b77e676928516f6982eef7a41 # v5.3.0 | |
id: import_gpg | |
with: | |
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} | |
passphrase: ${{ secrets.PASSPHRASE }} | |
- name: Run GoReleaser | |
uses: goreleaser/goreleaser-action@336e29918d653399e599bfca99fadc1d7ffbc9f7 # v4.3.0 | |
with: | |
args: release --clean | |
env: | |
# GitHub sets the GITHUB_TOKEN secret automatically. | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }} |