Skip AUR for now, attach Arch package as a GitHub release asset #42

Merged
jknapp merged 2 commits from fix/aur-render-expression-collision into main 2026-08-27 21:50:55 +00:00
Owner

Follow-up to #41. Publishing to the AUR needs a maintainer AUR account and its SSH key registered as a secret, neither of which exists yet. Rather than leave the workflow permanently failing at that step, it now stops short of AUR and instead uploads the built .pkg.tar.zst to the same GitHub release it built from, as a plain downloadable asset (pacman -U to install). The AUR-push step stays in this file's git history if that setup happens later and it's worth reinstating.

Renamed publish-aur-package.yml -> publish-arch-package.yml to match. Also updated packaging/arch/README.md, packaging/arch/PKGBUILD's header comment, and TECHNICAL.md's file-tree comment for the rename/behavior change.

Test plan

  • YAML parses; workflow-level env.GITHUB_REPO confirmed to cascade to the new step the same way it already does for the existing checksum-download step
  • Ran the exact render + build container script for real (Docker create/cp/start) against a real rendered PKGBUILD and a synthetic-but-structurally-real .deb: container exits 0, captures the real built filename (triple-c-bin-0.4.15-1-x86_64.pkg.tar.zst) from inside the container via .pkgfile, and that file round-trips out via docker cp intact
  • Re-run Publish Arch Package via workflow_dispatch after merge to confirm the real CI job attaches an asset to a real release
Follow-up to #41. Publishing to the AUR needs a maintainer AUR account and its SSH key registered as a secret, neither of which exists yet. Rather than leave the workflow permanently failing at that step, it now stops short of AUR and instead uploads the built `.pkg.tar.zst` to the same GitHub release it built from, as a plain downloadable asset (`pacman -U` to install). The AUR-push step stays in this file's git history if that setup happens later and it's worth reinstating. Renamed `publish-aur-package.yml` -> `publish-arch-package.yml` to match. Also updated `packaging/arch/README.md`, `packaging/arch/PKGBUILD`'s header comment, and `TECHNICAL.md`'s file-tree comment for the rename/behavior change. ## Test plan - [x] YAML parses; workflow-level `env.GITHUB_REPO` confirmed to cascade to the new step the same way it already does for the existing checksum-download step - [x] Ran the exact render + build container script for real (Docker create/cp/start) against a real rendered PKGBUILD and a synthetic-but-structurally-real `.deb`: container exits 0, captures the real built filename (`triple-c-bin-0.4.15-1-x86_64.pkg.tar.zst`) from inside the container via `.pkgfile`, and that file round-trips out via `docker cp` intact - [ ] Re-run `Publish Arch Package` via workflow_dispatch after merge to confirm the real CI job attaches an asset to a real release
jknapp added 1 commit 2026-08-27 21:49:18 +00:00
Skip AUR for now — attach the built Arch package to the GitHub release
Secret Scan / scan (push) Successful in 5s
Secret Scan / scan (pull_request) Successful in 5s
3c8296843f
Publishing to the AUR needs a maintainer AUR account and its SSH key
registered as a secret here, neither of which exists yet. Rather than
leave the workflow permanently failing at that last step, it now stops
short of AUR and instead uploads the built .pkg.tar.zst to the same
GitHub release it built from, as a plain downloadable asset (`pacman -U`
to install). The AUR-push step is still in this file's git history if
that setup happens later.

Renamed publish-aur-package.yml -> publish-arch-package.yml to match.
The render/validate steps are unchanged; new here is capturing the exact
built package filename from inside the build container (makepkg is the
only thing that actually knows it) and an upload step that follows the
same create-or-reuse-release, strip-upload_url, POST-octet-stream pattern
build-app.yml and backfill-releases.yml already use for GitHub assets,
plus a delete-existing-asset-first step so a re-dispatch for an
already-packaged version replaces rather than 422s.

Verified with a real Docker run end to end: rendered a real PKGBUILD,
built a real (synthetic) .deb through makepkg + namcap in an archlinux
container, confirmed the container exits 0, and confirmed the exact
package filename it captures (triple-c-bin-<version>-1-x86_64.pkg.tar.zst)
round-trips out via docker cp intact.
jknapp added 1 commit 2026-08-27 21:50:21 +00:00
Merge branch 'main' into fix/aur-render-expression-collision
Secret Scan / scan (push) Successful in 5s
Secret Scan / scan (pull_request) Successful in 6s
adf9e7d603
jknapp merged commit e63318e04a into main 2026-08-27 21:50:55 +00:00
jknapp deleted branch fix/aur-render-expression-collision 2026-08-27 21:50:55 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: CyberCoveLLC/Triple-C#42