ci: add build-linux.yaml release workflow + pre-merge clippy/fmt cleanup #51
No reviewers
Labels
No labels
prio_critical
prio_low
type_bug
type_contact
type_issue
type_lead
type_question
type_story
type_task
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lhumina_code/hero_collab!51
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "development_mik_build_linux"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
.forgejo/workflows/build-linux.yaml— on tag push (v*), builds and publishes 3 static-pie musl binaries (hero_collab_server,hero_collab_ui,hero_collab) under the target-triple naming convention from home#212.--workspace:hero_collab_appis a Dioxus WASM frontend that currently fails its host-linux compile against the latesthero_archipelagosdevelopment branch (use_focus_pollrename +IslandContextfield drift) — separate archipelago refactor, not a release blocker.hero_collab_examplesis a test crate.cargo fmt --all(50 files, mechanical) and 16 clippy fixes (doc_lazy_continuation×5, collapsible_if×4 via 2024 if-let chains, type_complexity, dead_code on serde fixtures, assert_eq-with-bool×2, manual split_once, redundant guard) so the workspace passes the pre-merge gate.Test plan
cargo fmt --all -- --checkclean.cargo clippy -p hero_collab_server -p hero_collab_ui -p hero_collab --all-targets -- -D warningsclean.cargo build -p hero_collab_server -p hero_collab_ui -p hero_collab --release --target x86_64-unknown-linux-muslproduces 3 ELF static-pie musl binaries (16.9 MB / 12.9 MB / 9.5 MB).v0.5.0-rc1, confirm 3 release assets land with<bin>-x86_64-unknown-linux-muslnames.service collab install --download --resetfetches all 3 assets and ELF-verifies (after consumer PR on hero_skills lands).On tag push (v*), builds 3 statically-linked PIE musl binaries (hero_collab_server, hero_collab_ui, hero_collab) and uploads them as Forgejo Release assets + generic Package Registry blobs under the target-triple naming convention from home#212. Build is scoped to the 3 shipped crates (-p flag list) rather than --workspace because: - hero_collab_app is a Dioxus WASM frontend (cdylib) consumed by hero_os/hero_archipelagos and not shipped as a hero_proc binary. It currently fails its host-linux compile against the latest hero_archipelagos development branch (use_focus_poll rename + IslandContext field drift) — that is a separate archipelago refactor, not a release blocker. - hero_collab_examples is the load/integration test crate, not a runtime artifact. Mirrors the canonical pure-musl pipeline shipped in: https://forge.ourworld.tf/lhumina_code/hero_proc/blob/development/.forgejo/workflows/build-linux.yaml https://forge.ourworld.tf/lhumina_code/hero_agent/blob/development/.forgejo/workflows/build-linux.yaml Closes home#212 progress 20/29 -> 21/29 once tagged + consumed. Tracked at lhumina_code/home#212 Signed-off-by: mik-tf