Skip to content

Commit 0c5c86a

Browse files
committed
Setup versioning
1 parent 32f02b1 commit 0c5c86a

2 files changed

Lines changed: 47 additions & 0 deletions

File tree

.github/workflows/docker-publish.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,3 +53,22 @@ jobs:
5353
labels: ${{ steps.meta.outputs.labels }}
5454
cache-from: type=gha
5555
cache-to: type=gha,mode=max
56+
57+
release:
58+
needs: build-and-push
59+
runs-on: ubuntu-latest
60+
if: startsWith(github.ref, 'refs/tags/v')
61+
permissions:
62+
contents: write
63+
64+
steps:
65+
- name: Checkout
66+
uses: actions/checkout@v4
67+
68+
- name: Create GitHub Release
69+
env:
70+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
71+
run: |
72+
gh release create ${{ github.ref_name }} \
73+
--title "TubeChecker ${{ github.ref_name }}" \
74+
--generate-notes

README.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,34 @@ The SQLite database is stored in the mounted volume and is preserved across upda
214214

215215
---
216216

217+
## Releases
218+
219+
Releases are published to [GitHub Releases](https://github.com/Spaggel/TubeChecker/releases) and the Docker image is tagged automatically.
220+
221+
| Docker tag | Meaning |
222+
|---|---|
223+
| `latest` | Most recent build from `main` |
224+
| `1.2.3` | Exact version |
225+
| `1.2` | Latest patch of that minor version |
226+
227+
**To cut a new release:**
228+
229+
```bash
230+
git tag v1.0.0
231+
git push origin v1.0.0
232+
```
233+
234+
This triggers the GitHub Actions workflow which:
235+
1. Builds and pushes `ghcr.io/spaggel/tubechecker:1.0.0`, `:1.0`, and `:latest`
236+
2. Creates a GitHub Release with auto-generated release notes from commits since the previous tag
237+
238+
Use [semantic versioning](https://semver.org): `v1.0.0` → `vMAJOR.MINOR.PATCH`
239+
- **PATCH** — bug fixes
240+
- **MINOR** — new features, backwards compatible
241+
- **MAJOR** — breaking changes
242+
243+
---
244+
217245
## Stack
218246

219247
| Layer | Technology |

0 commit comments

Comments
 (0)