name: Create GitHub Release on: push: tags: - "v*" permissions: contents: write jobs: release: runs-on: ubuntu-latest steps: - name: Create or update GitHub Release env: GH_TOKEN: ${{ github.token }} run: | if gh release view "${GITHUB_REF_NAME}" --repo "${GITHUB_REPOSITORY}" >/dev/null 2>&1; then gh release edit "${GITHUB_REF_NAME}" \ --repo "${GITHUB_REPOSITORY}" \ --title "${GITHUB_REF_NAME}" \ --notes "Automated release for ${GITHUB_REF_NAME}" else gh release create "${GITHUB_REF_NAME}" \ --repo "${GITHUB_REPOSITORY}" \ --title "${GITHUB_REF_NAME}" \ --notes "Automated release for ${GITHUB_REF_NAME}" fi