This repository publishes the skir_elixir_client package to Hex (Mix application :skir_elixir_client). Its version
is independent of the generator's npm version.
Set the repository Actions secret HEX_API_KEY to a Hex API key authorized to
publish skir_elixir_client. The generator deploy key is read-only and cannot publish here.
- Set the version in
mix.exsand runnpm run test:allandmix docs --warnings-as-errors. Source links use the matchingvX.Y.Ztag. - Optionally dispatch Release: it runs CI on OTP 27/28/29 without publishing.
- Publish a stable GitHub release tagged
vX.Y.Z, matchingmix.exs.
The release reruns standalone CI, compiles the tagged production runtime with
locked dependencies, verifies the documentation, then runs a Hex package dry-run,
publishes the package, and uploads the ExDoc documentation to
HexDocs. ExDoc runs in the development
environment; the runtime archive is built in the production environment.
Ordinary CI uses hex.build and a fresh consumer install without credentials.
Drafts and prereleases do not publish. The package archive is public even while
this source repository is private. Never republish an existing version.
Documentation for an existing release
To add or update documentation without republishing the package, check out the released tag, fetch dependencies, and upload docs with the same Hex credential:
mix deps.get --check-locked
mix docs --warnings-as-errors
mix hex.publish docs --yes
The version in mix.exs selects the documentation version. Package and docs
publishing are separate steps, so a failed docs upload can be retried with this
command without attempting to publish the package again. The same HEX_API_KEY
secret is used by both release steps. Manual workflow dispatch runs checks only.