Skip to content

Commit

Permalink
feat(ci): Add release-please automation with VERSION (#37)
Browse files Browse the repository at this point in the history
* Add VERSION file that Zephyr will pick up
* Add release-please automation

---

Release-As: 0.1.0
  • Loading branch information
petejohanson authored Nov 8, 2024
1 parent 2ded791 commit 771554e
Show file tree
Hide file tree
Showing 5 changed files with 68 additions and 0 deletions.
40 changes: 40 additions & 0 deletions .github/workflows/release-please.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
on:
push:
branches:
- main
- "v*.*-branch"

permissions:
contents: write
pull-requests: write

name: release-please

jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v4
id: release
with:
token: ${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}
- uses: actions/checkout@v4
if: ${{ steps.release.outputs.release_created }}
- name: create major, minor branch
if: ${{ steps.release.outputs.release_created && steps.release.outputs.patch == '0' }}
run: |
git remote add gh-token-branch "https://x-access-token:${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}@github.com/${{ github.repository }}.git"
git checkout -b v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}-branch
git push gh-token-branch v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}-branch
- name: tag major and minor versions
if: ${{ steps.release.outputs.release_created }}
run: |
git config user.name github-actions[bot]
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
git remote add gh-token "https://x-access-token:${{ secrets.ZMK_RELEASE_PLEASE_TOKEN }}@github.com/${{ github.repository }}.git"
git tag -d v${{ steps.release.outputs.major }} || true
git tag -d v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} || true
git tag -a v${{ steps.release.outputs.major }} -m "Release v${{ steps.release.outputs.major }}"
git tag -a v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }} -m "Release v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}"
git push --force gh-token v${{ steps.release.outputs.major }}
git push --force gh-token v${{ steps.release.outputs.major }}.${{ steps.release.outputs.minor }}
5 changes: 5 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ repos:
rev: v2.7.1
hooks:
- id: prettier
exclude: |
(?x)^(
CHANGELOG.md|
.release-please-manifest.json
)$
# Workaround for https://github.com/pre-commit/mirrors-prettier/issues/29
additional_dependencies:
- [email protected]
Expand Down
1 change: 1 addition & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
13 changes: 13 additions & 0 deletions app/VERSION
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# x-release-please-start-major
VERSION_MAJOR = 0
# x-release-please-end

# x-release-please-start-minor
VERSION_MINOR = 0
# x-release-please-end

# x-release-please-start-patch
PATCHLEVEL = 1
# x-release-please-end

VERSION_TWEAK = 0
9 changes: 9 additions & 0 deletions release-please-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
"bootstrap-sha": "2ded7919ebd63e0174bf5a412f6f01d6af0061c6",
"release-type": "simple",
"extra-files": ["app/VERSION"],
"packages": {
".": {}
}
}

0 comments on commit 771554e

Please sign in to comment.