ci: publish binaries to Releases assets (cluster A canonical-pattern fix) #119

Merged
mik-tf merged 1 commit from development_mik_release_assets into development 2026-05-04 02:21:42 +00:00
Owner

Single-squash for the cluster A canonical-pattern fix. See #118 for full pilot context.

Mirrors the pattern landed in hero_browser PR #17. Restores parity with hero_proc's build-linux.yaml canonical pattern.

Adapted for hero_books's structure (single linux-amd64-gnu matrix target, scripts/buildenv.sh location, ci_setup_toolchain function variant).

Pilot validated end-to-end with v0.1.6-rc1 — all 8 workflow steps green, 5 Release assets (hero_books / hero_books_admin / hero_books_server / hero_books_ui / hero_docs), pkg-registry mirror published.

Tracker: hero_demo#54

Signed-off-by: mik-tf

Single-squash for the cluster A canonical-pattern fix. See [#118](https://forge.ourworld.tf/lhumina_code/hero_books/issues/118) for full pilot context. Mirrors the pattern landed in [hero_browser PR #17](https://forge.ourworld.tf/lhumina_code/hero_browser/pulls/17). Restores parity with hero_proc's `build-linux.yaml` canonical pattern. Adapted for hero_books's structure (single linux-amd64-gnu matrix target, `scripts/buildenv.sh` location, `ci_setup_toolchain` function variant). Pilot validated end-to-end with `v0.1.6-rc1` — all 8 workflow steps green, 5 Release assets (hero_books / hero_books_admin / hero_books_server / hero_books_ui / hero_docs), pkg-registry mirror published. Tracker: [hero_demo#54](https://forge.ourworld.tf/lhumina_code/hero_demo/issues/54) Signed-off-by: mik-tf
ci: publish binaries to Releases assets (cluster A canonical-pattern fix)
All checks were successful
Build Linux / build-linux (linux-amd64, x86_64-unknown-linux-gnu) (push) Successful in 6m34s
Test / test (pull_request) Successful in 7m54s
Test / integration (pull_request) Successful in 4m27s
f368c2adfb
Mirrors the cluster A pilot landed at hero_browser PR #17. Restores
parity with hero_proc's build-linux.yaml canonical pattern. Single
squashed commit per option 2(b) of the audit plan.

Workflow changes (.forgejo/workflows/build-linux.yaml):
- Adds explicit Create Release step (race-tolerant POST→GET fallback).
- Adds Upload Release Assets step (loops $BINARIES from
  scripts/buildenv.sh, uploads to /api/v1/repos/.../releases/.../assets).
- Replaces broken publish_binaries helper call with inline pkg-registry
  upload using correct /api/packages/<owner>/generic/<project>/<v>/
  endpoint (publish_binaries used /api/crates/, which 404s) and
  tag-derived version (was hardcoded to buildenv.sh::VERSION=0.1.0).

build_lib.sh changes:
- ci_setup_toolchain now apt-installs jq (required by Create Release /
  Upload Release Assets curl chains; not in despiegk/builder image).

Notes vs hero_browser pilot:
- hero_books has single matrix target (linux-amd64-gnu, no musl, no
  arm64) — musl-target install fix not applicable here.
- buildenv.sh is at scripts/buildenv.sh (not root); workflow sources
  scripts/buildenv.sh accordingly.
- ci_setup_toolchain (CI-specific variant) replaces setup_linux_toolchain
  used in hero_browser; jq install added to the variant in use here.

Tracker: lhumina_code/hero_demo#54
        #118
Pilot:   lhumina_code/hero_browser#17

Signed-off-by: mik-tf
mik-tf merged commit 0cb4ee232f into development 2026-05-04 02:21:42 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_books!119
No description provided.