infinipaint/docs/windows-runner.md

48 lines
1.5 KiB
Markdown
Raw Permalink Normal View History

# Windows continuous release (Forgejo → private GitHub builder)
Native InfiniPaint Windows builds need **MSVC** (see `docs/BUILDING.md` +
`windowsinstall/`). There is no Linux cross-build path.
Policy:
- **Forgejo** (`copilot/infinipaint`) is the **public** fork and download site.
- **GitHub** (`littlecodedragon/infinipaint`) is a **private** builder mirror only
(`windows-latest` MSVC). Must stay private.
- Tower **`desktop-release`** runs the Forgejo workflow: it dispatches/waits on
the private GitHub build, then checks the public Forgejo release.
## Public download (friends)
https://forgejo.fsociety00.cc/copilot/infinipaint/releases/tag/windows-continuous
Portable zip → extract → run `infinipaint.exe`.
## Workflows
| File | Runner | Role |
|------|--------|------|
| `.forgejo/workflows/windows_release.yml` | `desktop-release` (Tower) | Orchestrate + verify Forgejo release |
| `.github/workflows/windows_release.yml` | `windows-latest` (private) | Compile + upload Forgejo asset |
Forgejo repo secret: **`GH_BUILDER_TOKEN`** (GitHub PAT with `actions:write` /
`contents:read` on the private mirror).
GitHub Actions secret: **`FORGEJO_TOKEN`** (Forgejo PAT with release write on
`copilot/infinipaint`).
## Tray
Tower CI job tray (`ci-runner-job-tray.py`) tracks:
- `Forgejo desktop-release` — host unit (orchestrator + APK jobs)
- `Forgejo InfiniPaint Windows` — Forgejo Actions run for this workflow
## Sync remotes
```bash
git push origin main # Forgejo (public)
git push github main # private builder
```
Keep GitHub **private**.