chore: adopt NiceGuyIT governance build/CI standards #3
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "chore/governance-conformance"
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?
Brings the fork up to par with the
a8n-run/governanceCHECKLIST.md, usingmonkey(same org, public Rust CLI shipping a binary) as the blueprint.What this adds
oci-build/Dockerfile- org-standard multi-stage glibc build (rust-builder-glibcbuilder,scratchbinary export,debian:trixie-slimruntime). Copiesbuild.rs+localization/before the dependency-prime build becausebuild.rsvalidates everymessages.ftlat compile time.oci-build/Dockerfile.windows- mingw cross-compile (x86_64-pc-windows-gnu) for the Windows binary.oci-build/get-tags.nu- shared tag computation, copied from the governance template..forgejo/workflows/:check.yml(fmt + clippy + build + tests),build-binary.yml(Linux x86_64 to Generic Packages),build-binary-windows.yml(Windows x86_64),create-release.yml(tag + release onrelease/*merge).justfile- the monkey recipe set (hooks, dev, checks, build, release), glibc dev image,fj/forgejo-clinames..dockerignore,CLAUDE.md(project doc).Dockerfile.Decisions
fjdynamically links OpenSSL and usesgit2/ssh2, and glibc matches upstream's "Linux GNU" release promise.just build-docker) and is never pushed.compose*.yml,.env.example,.devcontainer/, ports/HOST_IP - SaaS-only items that do not apply to a CLI (monkey omits them too).Validation
Locally confirmed: the glibc builder compiles
forgejo-cli v0.5.0with--locked, the full image runsfj version(v0.5.0) as non-rootappuser,get-tags.nuruns, all four workflows are valid YAML, andcargo fmt --checkis clean. The Windows OpenSSL/libgit2 cross-compile is left for the first CI run to confirm; ifopenssl-syscannot find a cross OpenSSL, the fix is itsvendoredfeature.🤖 Generated with Claude Code