Registry guides
Publish to the catalog
Contribute providers, policy packs, and framework profiles via GitHub.
Publishing is GitOps: artifacts live in the faramesh-registry repository (or your fork).
Policy pack or framework profile
- Copy an existing artifact directory under
catalog/artifacts/. - Edit
policy.fplorprofile.fpl(FPL is canonical). - Add an entry to
catalog/catalog.jsonwithtrust_tier: "community"unless you are an official maintainer. - Run
./scripts/validate-catalog.shlocally. - Open a pull request.
Maintainers with REGISTRY_SIGNING_KEY_B64 run go run ./cmd/sign-catalog -catalog catalog to produce .sig sidecars.
Provider binary
- Implement under
providers/<name>/using existing Vault/SPIFFE providers as templates. - Add the name to
MakefilePROVIDERS. make providersand./scripts/refresh-provider-hashes.sh.- Add
manifest.jsonand catalog index entry. make sign-all(maintainers) and PR.
Distribute without merging upstream
Consumers can use your fork directly:
git clone https://github.com/<you>/faramesh-registry
export FARAMESH_REGISTRY_ROOT=$PWD/faramesh-registryThey must add your publisher key to trust { ... } in governance.fms.
Optional HTTP mirror
Run go run ./cmd/registry -catalog catalog and set FARAMESH_REGISTRY_URL for teams that prefer an internal HTTP endpoint backed by the same Git tree.