The deploy pipeline works end-to-end now (Gimli deploys successfully), so the diagnostic step used to trace the WireGuard/TUN issue is no longer needed. RPIC continue-on-error is kept until the cluster returns.
Blog
Overview
This repository contains the source code for my personal blog hosted at blog.ahmza.com.
Features
Using Gitea provides several advantages:
- Highly Customizable CI/CD Pipelines: Automated processes for building and deploying the blog via Gitea Actions.
- Gitea Container Image Repository: Efficient management and storage of container images.
- Custom Gitea Runners: Flexibility in managing the CI/CD environment.
The CI/CD pipeline is configured to build the blog for both amd64 and arm64 architectures, allowing me to host the site on my Pi cluster as well as on other x86 platforms.
Motivation
My previous homelab setup included rack-mounted, power-hungry servers, which were expensive to run. By migrating to a Raspberry Pi cluster, I significantly reduced costs and improved efficiency. You can read more about this migration on my site.
A static site generator was the best choice for my needs, as I don't require a dynamically updating site. It provides simplicity and efficiency without sacrificing performance.
Benefits of Static Sites
- Security: Reduced attack surface due to the absence of a server-side backend.
- Reliability: Less prone to downtime and issues.
- Speed: Faster load times since content is pre-rendered.
- Scalability: Easily handle large amounts of traffic.
- Flexibility: Greater control over content and design.
- Low Resource Overhead: Minimal resource consumption compared to dynamic sites.
Implementation
- Hugo: Converts Markdown files into static HTML/CSS/JS files.
- Gitea Actions: Automates the build process and creates Docker images.
- Kubernetes Cluster: Serves the static files to users.
To-Do List
- Migrate to Kubernetes
- Migrate to Blowfish theme
- Make repo private to ensure all keys etc are hidden
- Update docker file
- Migrate to hugo modules for the theme
- Continue to write awesome posts
Notes
Cloning the Repository
The Blowfish theme is managed as a Hugo module, so no submodules are required. Clone the repository with:
git clone ssh://gitea@tea.ahmza.com:2222/ahmza/blog-ahmza-com.git