Build from Markdown or GitHub
Deploying a static or docs site covers uploading a site you built yourself. InfoEmu can also build for you: send raw content and it renders the site in an isolated sandbox, or connect a GitHub repo so every push builds and publishes. Either way you still get immutable releases with preview, promote, and rollback.
Option A — send raw content
Section titled “Option A — send raw content”Instead of a built site, upload your source (for example a tar of Markdown) and let InfoEmu build it:
curl -sS -X POST \ -H "Authorization: Bearer $DEPLOY_TOKEN" \ -F "archive=@source.tar.gz" \ "$DEPLOY_URL/api/deploy/$INSTANCE_ID/source"The build runs in a sandbox and produces a new release. Watch it with:
curl -sS -H "Authorization: Bearer $DEPLOY_TOKEN" \ "$DEPLOY_URL/api/deploy/$INSTANCE_ID/builds"If the build fails you get the logs, and your live site is untouched — a broken source can’t take production down.
Option B — connect a GitHub repo
Section titled “Option B — connect a GitHub repo”Connect a repository so pushes build automatically:
curl -sS -X PUT \ -H "Authorization: Bearer $DEPLOY_TOKEN" \ -H "Content-Type: application/json" \ -d '{"repo": "you/your-repo", "branch": "main", "webhook_secret": "<at-least-16-chars>"}' \ "$DEPLOY_URL/api/deploy/$INSTANCE_ID/github"The webhook_secret must be at least 16 characters; the response echoes the
stored secret once. Then add a webhook in your GitHub repo settings pointing at
InfoEmu, using that same secret. On each push to the configured branch, InfoEmu
builds the repo in the sandbox and publishes a new release. Build status and
logs are available at the builds endpoint above.
Build in your own CI instead
Section titled “Build in your own CI instead”If you’d rather keep the build in your own pipeline, build there and use the
upload API (Option in Deploying a static or docs
site). This starter ships a GitHub Actions
workflow (.github/workflows/deploy.yml) that runs pnpm build then
./deploy.sh on every push — a drop-in for any CI.
Which should I use?
Section titled “Which should I use?”- Upload from CI — most control; you own the toolchain and versions.
- Raw content — simplest for a Markdown-only site with no local toolchain.
- GitHub push-to-build — hands-off “git push to publish” once connected.
All three produce the same immutable releases, so you can mix them.