Skip to content

Deployment

From a clone

For a full local build and publish, copy the deploy script from its template and fill in the values at the top:

cp deploy.replace deploy
chmod +x deploy
./deploy --all              # javascript, css and images
./deploy --js               # javascript only
./deploy --css              # css only
./deploy --env=prod         # build:prod rather than build:dev

The template is deploy.replace; the copy, deploy, is gitignored, because it holds the identifiers of the distribution being deployed to.

On merge

Merges to master are built and published automatically. That path compiles the JavaScript and the stylesheet, copies the result and the image assets to object storage, and invalidates the CDN so the new bundle is served immediately. It substitutes the same REPLACE-* tokens the local script does, taking the values from deployment configuration rather than from a file on disk -- which is why no real identifier is committed here.

These pages

The documentation site deploys separately, from .github/workflows/docs.yml, on every push to master. See This documentation.