Skip to content

Commit 306f7ae

Browse files
committed
CD: Add manual release workflow
This commit implements a naive manual "Publish Release" workflow, which just creates a GH release with "Package Control.sublime-package" attached. Required release steps: 1. update version files - package_control/__init__.py - package-metadata.json 2. commit as "Bump Version" 3. push to remote 4. run "Publish Release" workflow on GH The first and only goal is to provide a common public method to do a release, using trustworthy upstream infrastructure. Ideas for future changes: 1. trigger when creating semver compliant tags. 2. update version files in repo automatically. 3. auto-create the "Bump Version" commit. 4. maybe auto-sign created package 5. auto-upload to packagecontrol.io/...
1 parent 5ad4c60 commit 306f7ae

1 file changed

Lines changed: 21 additions & 0 deletions

File tree

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Publish Release
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
release:
8+
name: Create and publish release
9+
env:
10+
GH_TOKEN: ${{ github.token }}
11+
permissions:
12+
contents: write
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v6
16+
- uses: astral-sh/setup-uv@v7
17+
- run: |
18+
version=$(uv run --quiet python -c "from package_control import __version__;print(__version__)")
19+
archive="Package Control.sublime-package"
20+
git archive --format zip -o "$archive" master
21+
gh release create --generate-notes --latest --target master -t "v$version" "$version" "$archive#$archive"

0 commit comments

Comments
 (0)