File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 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
Original file line number Diff line number Diff 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 |
You can’t perform that action at this time.
0 commit comments