Documentation
Deployers
A deployer turns one service block into ordered steps. Deployers do not hide the commands: deliver plan shows the result before it runs.
hugo
Build a Hugo site, package its output, and pass the release to the file deployer. Releases use new directories and an atomic live-path switch.
files
Ship a file, directory, or prepared archive. Use it for static output and other complete artifacts that do not need a container.
docker-compose
Build an image locally, ship it as a tarball or through a registry, preserve the Compose files byte-for-byte, start infrastructure, run release commands, and check the live service.
nginx-vhost
Install nginx configuration safely. The managed mode can prepare Certbot, issue or expand certificates, stage the vhost, run nginx -t, reload, and restore the prior configuration if validation fails.
macos-app
Build, sign, notarize, and publish a macOS app and Sparkle appcast. Delivery Boy calls the platform tools instead of replacing them.
This deployer needs the Apple signing and notarization tools on a macOS release host. Review its plan for the archive, appcast, and publish paths before the first live release.
commands
Run explicit local and SSH steps when a built-in deployer does not cover a small project-specific need.
services:
warm-cache:
deployer: commands
config:
steps:
- command: ./scripts/build-cache.sh
- ssh: cd /var/www/example && ./bin/warm-cache
You can also place pre and post command steps around another deployer.
Command steps run with the rights of the local user or configured SSH user. Use fixed commands from the repository; do not build command strings from untrusted input.