Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Deployment and troubleshooting

The pipeline

git push (or daily 00:30 UTC cron, or manual trigger)
        ↓
GitHub Actions: npm ci && npm run build
        ↓
Upload _site/ as a Pages artifact
        ↓
Deploy to GitHub Pages
        ↓
https://blog.adarshrust.com

Defined in .github/workflows/deploy.yml. Three triggers:

  • push to main — every commit deploys.
  • schedule (daily 00:30 UTC) — releases future-dated articles.
  • workflow_dispatch — manual: Actions → Deploy → Run workflow.

One-time setup (do this if not done yet)

  1. Repo Settings → Pages → Build and deployment → Source: GitHub Actions.
  2. Same page: set Custom domain to blog.adarshrust.com and keep Enforce HTTPS on once available.
  3. At your DNS provider: point blog.adarshrust.com with a CNAME record to webrowse.github.io (replacing the old Railway record).
  4. Decommission the Railway service once the new site answers.

Until step 1 is done, the workflow’s deploy job fails with a “Pages not enabled” style error — the build job still proves your content is fine.

When something goes wrong

The Actions run is red. Open the run and read the failing step.

  • build failed → almost always broken frontmatter. YAML is picky: a stray tab, an unquoted colon in a title (title: "Rust: notes" needs quotes), or mismatched --- fences. The log names the file.
  • deploy failed → a Pages/permissions problem, not your article. Check the one-time setup above; re-run the job from the Re-run jobs button.

The run is green but the article is missing. Check, in order:

  1. date: — is it in the future?
  2. published: — is it false?
  3. Is the file under content/ with a .md extension?

An image is broken. The path in the Markdown must match the file’s location relative to the article — usually images/name.png, and case-sensitive in production even if it works on your Mac.

The site looks stale. Deploys finish in ~1 minute but your browser may cache pages; hard-refresh (⌘⇧R) before debugging further.

Scheduled post didn’t appear. GitHub pauses cron schedules on repos with no activity for 60 days. Any push, or a manual Run workflow, resumes it and releases the post.