GitHub Pages + Actions = free CI/CD
11/11/2025
TLDR: I built a mini CI/CD pipeline for my blog, GitHub pages make it easy to verify ownership than a regular domain by simplifying adding an HTML file to your repo, GitHub actions are like a built in zapier for more things than you can imagine, and usually there are already scripts for something you need if you ask Claude.
When creating sites on builders like GitHub pages, you will need to add your own index.html and sitemap.xml files.
- Create a sitemap.xml \= lists all pages so Google knows what to index
- Setup GitHub actions workflow
- Add Google Search Console \= verifies site ownership so you can submit sitemaps + track indexing
- Create auto-update + ping system \= regenerates sitemap & notifies Google automatically
How it works:
- Add new HTML file to /blog folder (like this → blog/new-post.html)
- Update blog/index.html file to add the new link
- Commit/push to GitHub
- Github action triggers automatically (changed in /blog)
- Action scans your /blog folder for all html files
- Action regenerates sitemap.xml with all blog posts
- Action commits the updated sitemap
- Action pings Google “Hey, sitemap is updated, come index!”
- Google crawls site within 24/48 hrs
My workflow
- Take physical notes
- Write blog post (conversion process done from markdown to html*)
- Update blog index file
- Commit/push to github → live and new sitemap submitted to Google
Conversion from raw notes to blog
The italicized steps will be automated next and consolidated in my next update
- Write out written notes in Google Doc file
- Save/export as .md (markdown)
- Open .md to see/edit (i’m a micromanager of my processes)
- Copy html & add new html file to blog folder in Github
What happens when something breaks?
Glad you asked…it's simple.
- Check “Actions” tab in my GitHub repo
- Look for error messages
Back to Blog