feat(ci): rustls + buildenv ALL_FEATURES + inline release upload + target-triple naming #23
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_biz!23
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "development_mik_biz_from_ci"
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
Four coordinated changes to enable hero_biz
--from-ciinstall path. Bundled into one PR per "we need clean work" + runner-cycle frugality (validated with full local workspace gate before push).Changes
1. Switch reqwest to rustls (musl prerequisite)
crates/hero_biz_ui/Cargo.tomllines 54 + 70 — both[dependencies]and[dev-dependencies]reqwest entries:Same fix as hero_slides#45.
cargo update -p reqwestremoves openssl-sys, openssl, native-tls, tokio-native-tls, hyper-tls fromCargo.lock.2. Fix stale
ALL_FEATURESin buildenv.shThe workspace refactor (
ccf98c3) moved hero_osis_sdk feature gating from top-level workspace features to per-crate dep declarations, butbuildenv.shwasn't updated and still referencedhero_osis-business,hero_osis-projects,hero_osis-identity— features that don't exist anywhere in the current workspace.CI has been silently broken on this since the refactor — every prior tag (v0.1.0 / 0.1.1 / 0.1.2) failed at:
Match hero_books' buildenv.sh:
ALL_FEATURES="default"(universally-valid no-op feature name). Per-crate hero_osis_sdk feature settings (features = ["business", "projects"]) still apply correctly.3. Replace
publish_binarieswith inline release-asset upload.forgejo/workflows/build-linux.yaml— singlePublishstep (using shared-helperpublish_binariesthat writes only to pkg registry — the cluster A bug per hero_demo#54 c28672) replaced with the canonical inline pattern from hero_books's working build-linux.yaml:Create Release— race-tolerant POST to/api/v1/repos/.../releasesUpload Release Assets— POST each binary to/releases/<id>/assetsUpload to Package Registry— keeps the pkg-registry mirror as a secondary publish pointThis is what makes assets appear at
forge.ourworld.tf/lhumina_code/hero_biz/releases/tag/<tag>(downloadable byservice_biz install --from-ci).4. Asset naming → target triple (per home#212)
x86_64-unknown-linux-musllinux-amd64x86_64-unknown-linux-muslaarch64-unknown-linux-gnulinux-arm64aarch64-unknown-linux-gnuHonest about libc per repo (musl for amd64, gnu for arm64). Matches the convention slides shipped with in hero_slides v0.1.0-rc2.
+ cargo fmt --all
Small fmt drift cleanup. Clippy drift (~99 warnings) deferred to hero_biz#22 — separate concern, CI doesn't gate on clippy today, bundling it would have made this PR un-reviewable.
Validation (local before push)
Refs
--from-cirollout, Phase 2 cluster ATest plan
Cargo.lockno longer pulls openssl chaincargo build --features defaultworks on the workspacev0.1.3-rc2(succeeding the failed-but-stale v0.1.3-rc1), verify Forgejo Release shows 4 assets (2 binaries × 2 archs) with target-triple namingservice_biz.nu --from-cion hero_skills with suffixx86_64-unknown-linux-muslservice_biz install --from-ci --version v0.1.3-rc2on herociSigned-off-by: mik-tf
feat(ci): switch reqwest to rustls + inline release upload + target-triple namingto feat(ci): rustls + buildenv ALL_FEATURES + inline release upload + target-triple naming--from-ciinstall path blind to this repo #13