Skip to content

permission hardening #24

permission hardening

permission hardening #24

Workflow file for this run

name: release
on:
push:
tags:
- "*"
permissions: {}
jobs:
release:
permissions:
contents: write
runs-on: ubuntu-latest
outputs:
artifact-id: ${{ steps.upload-artifact.outputs.artifact-id }}
steps:
- name: checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # pin@v4
with:
fetch-depth: 0
persist-credentials: false
- name: setup go
uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # pin@v5
with:
go-version-file: "go.mod"
cache: false
- name: goreleaser
uses: goreleaser/goreleaser-action@9c156ee8a17a598857849441385a2041ef570552 # pin@v6
with:
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: upload artifact
uses: actions/[email protected]
id: upload-artifact
with:
path: dist/
sign:
needs: release
permissions:
id-token: write
attestations: write
contents: read
uses: github/salsa/.github/workflows/sign-artifact.yml@main
with:
artifact-ids: ${{ needs.release.outputs.artifact-id }}
artifact-path: "."
verify:
permissions: {}
needs: [release, sign]
uses: github/salsa/.github/workflows/verify.yml@main
with:
artifact-ids: ${{ needs.release.outputs.artifact-id }}
artifact-path: "."