Deployment
What triggers a deployment
GitHub Pages deployment triggers automatically on every push or merge to main.
GitHub Actions workflow
The workflow is pages-build-deployment, GitHub's built-in internal workflow. No custom workflow file is required.
Steps
- Push to
main - GitHub detects the push automatically
- GitHub's built-in Pages workflow (
pages-build-deployment) runs - No build step. The HTML files are served as-is.
- GitHub serves the contents of
maindirectly as the live site
What gets deployed
Every file in the main branch is served as a static file. This includes:
index.htmlat the root, served atdouglasebhoman.comcv/index.html, served atdouglasebhoman.com/cv/blog/index.html, served atdouglasebhoman.com/blog- All blog post folders under
blog/posts/, each served at their respective URL - All assets under
assets/
Custom domain configuration
DNS maps the custom domain to GitHub Pages. GitHub settings confirm that mapping, enabling the site to be accessed at douglasebhoman.com.
- A CNAME file in the repository root specifies the custom domain
- A CNAME record in Cloudflare points
douglasebhoman.comtodouglasebhoman.github.io - The custom domain is specified in the repository GitHub Pages settings
- HTTPS is handled automatically by GitHub via Let's Encrypt
- Cloudflare DNS records are set to DNS-only with no proxy, to allow GitHub's certificate issuance to work correctly
Deployment time
Typically 1 to 2 minutes depending on GitHub Actions queue time.
Verifying deployment
After pushing, navigate to the Actions tab in the GitHub repository to monitor the workflow status. A green checkmark confirms the deployment was successful.
If the deployment fails, click the failed workflow run to read the error log.