1234567891011121314151617181920212223242526272829303132333435363738394041 |
- # Terraform Provider release workflow.
- name: Release
- # This GitHub action creates a release when a tag that matches the pattern
- # "v*" (e.g. v0.1.0) is created.
- on:
- push:
- tags:
- - 'v*'
- # Releases need permissions to read and write the repository contents.
- # GitHub considers creating releases and uploading assets as writing contents.
- permissions:
- contents: write
- jobs:
- goreleaser:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- with:
- # Allow goreleaser to access older tag information.
- 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@f82d6c1c344bcacabba2c841718984797f664a6b # v4.2.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 }}
|