2201257e89
Implements the shared parity flake-module library so the ~51 parity repos
consume one source of truth instead of hand-inlined publish shells.
- lib.mk{PyPiWheel,S390xNpm,GenericBinary,Nix2Container,GoBinary,Helm}Publish
builders returning stage-<arch>/publish-<arch>/publish-index/publish/
push-staged apps per the corrected emmett#44 standard (build-parity stages to
./.parity-stage with no registry contact; publish dry-runs by default;
publish-index is build-free + fail-closed; :latest is the last digest copy).
- Shared ci/parity-lib.sh: token resolution ($REGISTRY_TOKEN + pass fallback,
never printed), dev-tag guard, version derivation, dry-run gate, preflight.
- pipeline-doctor package/app asserting the parity contract (cluster #193).
Refs cluster #192, #193, #194, emmett#44.
32 lines
1.6 KiB
Markdown
32 lines
1.6 KiB
Markdown
# Changelog
|
|
|
|
<!-- markdownlint-disable MD013 -->
|
|
|
|
All notable changes to parity-lib are documented here. This project follows
|
|
semantic versioning; the version is a conceptual tag (no git tag is created).
|
|
|
|
## v0.1.0
|
|
|
|
Initial release (cluster #192/#193/#194, emmett#44).
|
|
|
|
- `lib.mkParityBuilders pkgs` plus per-builder wrappers exposing the six
|
|
archetype publish-app builders:
|
|
- `mkPyPiWheelPublish` — single-arch Gitea PyPI wheel.
|
|
- `mkS390xNpmPublish` — single-arch Gitea npm native addon.
|
|
- `mkGenericBinaryPublish` — single-arch Gitea generic-registry binary.
|
|
- `mkGoBinaryPublish` — alias of `mkGenericBinaryPublish` (explicit archetype).
|
|
- `mkNix2ContainerPublish` — multi-arch OCI image with `publish-index` and
|
|
`:latest` digest copy.
|
|
- `mkHelmPublish` — Helm chart to an OCI registry.
|
|
- Each builder returns flake apps following the corrected parity standard:
|
|
`stage-<arch>` (build-parity, no registry), `publish-<arch>` (dry-run by
|
|
default), `publish-index` (build-free, fail-closed multi-arch assembly via
|
|
regctl), `publish` (all local arches + index + `:latest` last), and
|
|
`push-staged` (replay `./.parity-stage`).
|
|
- Shared shell library `ci/parity-lib.sh` (token resolution with
|
|
`$REGISTRY_TOKEN` + `pass` fallback and never printed, dev-tag guard, version
|
|
derivation, the dry-run gate, registry preflight, stage-dir helpers).
|
|
- `packages.pipeline-doctor` / `apps.pipeline-doctor` (cluster #193): static
|
|
parity-contract checker that prints local-equivalent commands.
|
|
- `flake.lock` fully pinned; nixpkgs follows the shared `fleet-pins` `nixpkgs-ci`.
|