Update release workflow to use Makefile for building and packaging; add smoke test step
This commit is contained in:
@@ -21,10 +21,11 @@ jobs:
|
|||||||
- name: Install build dependencies
|
- name: Install build dependencies
|
||||||
run: |
|
run: |
|
||||||
python -m pip install --upgrade pip
|
python -m pip install --upgrade pip
|
||||||
pip install -r scripts/requirements.txt pyinstaller
|
pip install uv
|
||||||
|
make setup
|
||||||
- name: Build binary
|
- name: Build binary
|
||||||
run: |
|
run: |
|
||||||
pyinstaller --onefile --name planka-cli scripts/planka_cli.py
|
make build
|
||||||
- name: Package tarball
|
- name: Package tarball
|
||||||
run: |
|
run: |
|
||||||
VERSION="${GITHUB_REF_NAME#v}"
|
VERSION="${GITHUB_REF_NAME#v}"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
.PHONY: setup run build clean
|
.PHONY: setup run build smoke clean
|
||||||
|
|
||||||
setup:
|
setup:
|
||||||
uv venv
|
uv venv
|
||||||
@@ -8,7 +8,14 @@ run:
|
|||||||
uv run python scripts/planka_cli.py status
|
uv run python scripts/planka_cli.py status
|
||||||
|
|
||||||
build:
|
build:
|
||||||
uv run pyinstaller --onefile --name planka-cli scripts/planka_cli.py
|
uv run pyinstaller --onefile --name planka-cli --collect-all plankapy scripts/planka_cli.py
|
||||||
|
|
||||||
|
smoke: build
|
||||||
|
@tmp_home="$$(mktemp -d)"; \
|
||||||
|
env -i PATH="/usr/bin:/bin:/usr/sbin:/sbin" HOME="$$tmp_home" \
|
||||||
|
PYTHONNOUSERSITE=1 PYTHONPATH= PYTHONHOME= \
|
||||||
|
./dist/planka-cli --help; \
|
||||||
|
rm -rf "$$tmp_home"
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf dist build *.spec __pycache__ scripts/__pycache__
|
rm -rf dist build *.spec __pycache__ scripts/__pycache__
|
||||||
|
|||||||
Reference in New Issue
Block a user