Skip to content

Deploying

The deploy is .github/workflows/deploy.yml. Once ONE9X_SITE and ONE9X_TOKEN are set (setup), it runs on every push and every pull request:

Event What happens
Pull request The site is built and staged: uploaded as a new release with its own preview URL, which the workflow comments on the pull request. Production does not change.
Push to main The site is built and published: the new release goes live.

Each release is complete before anyone sees it. Visitors get the old site until the new one is fully uploaded, then the new one — never a mix of the two.

Every release has its own address, whether or not it ever went live:

https://v12--mydocs.one9x.app/

v12 is the release number. Send the link to whoever is reviewing the change; it keeps working after the pull request is merged, for as long as the release is kept.

The same thing from your own machine, with the One9x CLI:

Terminal window
npm run build
one9x pages release ./dist --site mydocs --error 404:/404.html --deploy

Leave off --deploy to stage a release and get its preview URL without going live. To publish a staged release later:

Terminal window
one9x pages deploy --site mydocs --to v12

A release is identified by a hash of its contents. Building the same docs twice produces the same release, and nothing is uploaded the second time.

Deployed on One9x Pages