Compare commits

..
3 Commits
3 changed files with 40 additions and 7 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
name = "cz_conventional_commits" name = "cz_conventional_commits"
tag_format = "v$version" tag_format = "v$version"
version_scheme = "semver" version_scheme = "semver"
version = "0.5.24" version = "0.5.25"
update_changelog_on_bump = true update_changelog_on_bump = true
major_version_zero = true major_version_zero = true
changelog_file = "./docs/docs/changelog/index.md" changelog_file = "./docs/docs/changelog/index.md"
+32 -6
View File
@@ -2,8 +2,9 @@ name: Versioned Release
on: on:
push: push:
tags: tags: ["v*"]
- "*" branches: ["develop"]
workflow_dispatch:
permissions: permissions:
contents: write contents: write
@@ -14,9 +15,23 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
outputs: outputs:
release_exists: ${{ steps.check.outputs.release_exists }} release_exists: ${{ steps.check.outputs.release_exists }}
is_tag: ${{ steps.check-ref.outputs.is_tag }}
ref_name: ${{ steps.check-ref.outputs.ref_name }}
steps: steps:
- name: Determine ref type and name
id: check-ref
run: |
if [[ $GITHUB_REF == refs/tags/* ]]; then
echo "is_tag=true" >> "$GITHUB_OUTPUT"
echo "ref_name=${GITHUB_REF#refs/tags/}" >> "$GITHUB_OUTPUT"
else
echo "is_tag=false" >> "$GITHUB_OUTPUT"
echo "ref_name=${GITHUB_REF#refs/heads/}" >> "$GITHUB_OUTPUT"
fi
- name: Check if release exists - name: Check if release exists
id: check id: check
if: steps.check-ref.outputs.is_tag == 'true'
run: | run: |
RELEASE_EXISTS=$(curl -s -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \ RELEASE_EXISTS=$(curl -s -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
"https://api.github.com/repos/onsonr/sonr/releases/tags/${GITHUB_REF#refs/tags/}" \ "https://api.github.com/repos/onsonr/sonr/releases/tags/${GITHUB_REF#refs/tags/}" \
@@ -26,7 +41,9 @@ jobs:
goreleaser: goreleaser:
name: Run GoReleaser name: Run GoReleaser
needs: check-release needs: check-release
if: needs.check-release.outputs.release_exists == 'false' if: |
(needs.check-release.outputs.is_tag == 'true' && needs.check-release.outputs.release_exists == 'false') ||
(needs.check-release.outputs.is_tag == 'false')
permissions: write-all permissions: write-all
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
@@ -37,8 +54,17 @@ jobs:
fetch-depth: 0 fetch-depth: 0
fetch-tags: true fetch-tags: true
- name: Checkout Latest Tag - name: Set up release configuration
run: git checkout $(git describe --tags --abbrev=0) id: setup
run: |
if [[ "${{ needs.check-release.outputs.is_tag }}" == "true" ]]; then
echo "Using tag configuration"
git checkout ${{ needs.check-release.outputs.ref_name }}
echo "args=release --clean" >> "$GITHUB_OUTPUT"
else
echo "Using snapshot configuration"
echo "args=release --snapshot --clean" >> "$GITHUB_OUTPUT"
fi
- uses: actions/setup-go@v5 - uses: actions/setup-go@v5
with: with:
@@ -56,7 +82,7 @@ jobs:
with: with:
distribution: goreleaser-pro distribution: goreleaser-pro
version: latest version: latest
args: release --clean args: ${{ steps.setup.outputs.args }}
env: env:
GITHUB_TOKEN: ${{ secrets.GH_RELEASER_TOKEN }} GITHUB_TOKEN: ${{ secrets.GH_RELEASER_TOKEN }}
GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }} GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }}
+7
View File
@@ -1,3 +1,10 @@
## v0.5.25 (2024-12-11)
### Feat
- enable GoReleaser releases on tags and snapshots
- automate release on tag and workflow dispatch
## v0.5.24 (2024-12-11) ## v0.5.24 (2024-12-11)
### Feat ### Feat