Skip to content

Commit b7078ff

Browse files
committed
Update release workflow
1 parent 90afa5b commit b7078ff

File tree

2 files changed

+33
-25
lines changed

2 files changed

+33
-25
lines changed

.github/workflows/release.yaml

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
name: Release
22

33
on:
4-
release:
5-
types: [created]
4+
push:
5+
tags:
6+
- 'v*'
67

78
permissions:
89
contents: write
@@ -26,8 +27,32 @@ jobs:
2627
args: release --clean
2728
env:
2829
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
29-
- name: Publish release
30-
if: github.event.release.draft == true
31-
run: gh release edit ${{ github.event.release.tag_name }} --draft=false
30+
- name: Publish release and mark as latest
31+
run: |
32+
gh release edit ${{ github.ref_name }} --latest
3233
env:
33-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
34+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
35+
- name: Update README with version
36+
run: |
37+
TAG="${{ github.ref_name }}"
38+
VERSION=$(echo $TAG | sed 's/^v//')
39+
PREVIOUS_TAG=$(git tag -l | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | sort -V | tail -n 2 | head -n 1)
40+
41+
if [ -n "$PREVIOUS_TAG" ]; then
42+
sed -i "s|$PREVIOUS_TAG|$TAG|g" README.md
43+
sed -i "s|roc_$(echo $PREVIOUS_TAG | sed 's/^v//')|roc_$VERSION|g" README.md
44+
else
45+
# First release, update any placeholder versions
46+
sed -i "s|v0\.0\.0|$TAG|g" README.md
47+
sed -i "s|roc_0\.0\.0|roc_$VERSION|g" README.md
48+
fi
49+
50+
if git diff --exit-code README.md; then
51+
echo "README.md already up to date"
52+
else
53+
git config user.name "github-actions[bot]"
54+
git config user.email "github-actions[bot]@users.noreply.github.com"
55+
git add README.md
56+
git commit -m "Update README for $TAG" || exit 0
57+
git push origin HEAD:main || exit 0
58+
fi

Makefile

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
PREVIOUS_TAG ?= $(shell git tag -l | tail -n 1)
22
TAG=v0.1.8
3-
FILES_TO_COMMIT=Makefile README.md
43

54
.PHONY: build install bump tag release update-config
65

@@ -11,22 +10,6 @@ build:
1110
install: build
1211
sudo install -m 755 dist/roc /usr/local/bin/roc
1312

14-
bump:
15-
@PREVIOUS_VERSION=$$(echo $(PREVIOUS_TAG) | sed 's/^v//'); \
16-
NEW_VERSION=$$(echo $(TAG) | sed 's/^v//'); \
17-
gsed -i "s/$(PREVIOUS_TAG)/$(TAG)/g" README.md; \
18-
gsed -i "s/roc_$$PREVIOUS_VERSION/roc_$$NEW_VERSION/g" README.md
19-
if git diff --exit-code $(FILES_TO_COMMIT); then \
20-
echo "No changes to commit"; \
21-
else \
22-
git commit -m "Bump version to $(TAG)" $(FILES_TO_COMMIT) && \
23-
git push origin main && \
24-
git diff --exit-code; \
25-
fi
26-
27-
tag: bump
13+
tag:
2814
git tag -a $(TAG) -m "Release $(TAG)"
29-
git push origin $(TAG)
30-
31-
release: tag
32-
gh release create $(TAG) --generate-notes --draft
15+
git push origin $(TAG)

0 commit comments

Comments
 (0)