docs: add INSTALL.md and update project documentation for release pipeline
Co-authored-by: Junie <junie@jetbrains.com>
This commit is contained in:
parent
e1844ff919
commit
33e23bf422
4 changed files with 133 additions and 9 deletions
23
docs/plans/feature-6-release-pipeline.md
Normal file
23
docs/plans/feature-6-release-pipeline.md
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# Feature 6: Build Automation & Release Pipeline
|
||||
|
||||
**Status:** ✅ **Completed**
|
||||
|
||||
## Context
|
||||
Automated multi-platform packaging and release pipeline for WoW Backup using GitHub Actions. Whenever changes are merged/pushed to the `main` branch, the pipeline calculates the next release version and tag, compiles native distributables for macOS, Windows, and Linux, and attaches all packaged binaries to a published GitHub Release.
|
||||
|
||||
## Deliverables
|
||||
1. **Dynamic Versioning in Gradle**:
|
||||
- `composeApp/build.gradle.kts` dynamically reads `appVersion` via `-PappVersion=...` or defaults to `1.0.0`.
|
||||
- `BuildConfig.kt` and native distribution packaging tasks respect the injected version.
|
||||
2. **GitHub Actions Workflow (`.github/workflows/release.yml`)**:
|
||||
- Automated semantic patch version computation and git tagging on push to `main` and `workflow_dispatch`.
|
||||
- Parallel runner matrix (`macos-latest`, `windows-latest`, `ubuntu-latest`) packaging `.dmg`, `.msi`, and `.deb`.
|
||||
- Automated GitHub Release creation with attached artifacts and release notes.
|
||||
3. **Installation Guide (`INSTALL.md`)**:
|
||||
- Detailed user installation guide for macOS (Gatekeeper bypass), Windows (SmartScreen bypass), and Linux (APT/DPKG).
|
||||
- Linked directly from `README.md`.
|
||||
|
||||
## Verification
|
||||
- `./gradlew :composeApp:generateBuildConfig -PappVersion=1.2.3` generates `BuildConfig.VERSION = "1.2.3"`.
|
||||
- Packaging tasks (`packageDmg`, `packageMsi`, `packageDeb`) are wired and functional.
|
||||
- Workflow YAML syntax validated.
|
||||
Loading…
Add table
Add a link
Reference in a new issue