mirror of
https://git.hiabuto.net/C3MA/CCMA.git
synced 2026-07-01 11:14:52 +02:00
ci: add CCMA release builds
This commit is contained in:
@@ -59,8 +59,8 @@ also checks the default install locations under `%PROGRAMFILES%` and
|
||||
|
||||
## Building standalone executables
|
||||
|
||||
To bundle CCMA into a single-file Windows executable with PyInstaller, use the
|
||||
build script in the `build/` directory:
|
||||
CCMA uses the same PyInstaller-based release flow locally and in CI. The
|
||||
single-file executables are built from `build/ccma.spec`.
|
||||
|
||||
### Windows standalone build
|
||||
|
||||
@@ -76,9 +76,30 @@ This creates two executables in the `dist/` directory:
|
||||
The build script automatically:
|
||||
- Creates a venv if missing
|
||||
- Installs dependencies and PyInstaller
|
||||
- Generates a Windows icon from the splash image
|
||||
- Generates a Windows icon from the CCMA icon
|
||||
- Runs PyInstaller to bundle the application
|
||||
|
||||
### Linux standalone build
|
||||
|
||||
```bash
|
||||
python3 -m venv .venv
|
||||
. .venv/bin/activate
|
||||
python -m pip install -U pip
|
||||
pip install -r requirements.txt
|
||||
pip install pyinstaller
|
||||
python -m PyInstaller --noconfirm --clean build/ccma.spec
|
||||
```
|
||||
|
||||
This creates `dist/ccma`. In CI, release builds additionally rename artifacts
|
||||
to `ccma-<version>-linux-<arch>` and `ccma-<version>-windows-<arch>.exe`.
|
||||
|
||||
### CI release builds
|
||||
|
||||
The Gitea workflows use the central `ci-templates` submodule and
|
||||
`ci-config.yaml` to run PR checks, Linux smoke builds, and release packaging for
|
||||
Linux amd64, Linux arm64, and Windows amd64. A release build is skipped when the
|
||||
commit message contains `[nobuild]`.
|
||||
|
||||
On first start, select or create the central member-store directory. The
|
||||
`VERSION` file is the single source for application and package versions.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user