workflow
or how I finally automated updating a website
Ever get the feeling you are doing it all wrong?
That’s how I felt when I started this new website back in Q1/2017. How hard could it be to roll out content without having to maintain and secure a backend that isn’t needed most of the time?
That’s because you are correct.
After wasting most of the previous year(s) I decided to give it all up and come to my senses.
Somewhat.
Thing is, after moving from the big city to the countryside I finally found the space for a homelab. And while the lady of the house isn’t too happy about the electrical bill, I can now declare myself to be on a mission. And after much Weeping and gnashing of teeth I finally managed to stabilize my network enough, to start with this endeavor.
What did we end up with? Let’s discover my Workflow from the Website end:
The Page you are currently reading is served by an NGINX Webserver (HTTPS only through Let’s Encrypt), running on a tiny VPS, hosted by Hetzner which is one of the few european hosters (and also the cheapest).
The Page Data is deployed to this VPS by a Drone CI runner. The subtasks describing this task are:
- Clone the repository from an in-house Gitea server
- Build the Webpage with Jekyll
- Deploy it to the VPS by rsync
This was all implemented and tested in many a long night. And it’s something you get totally for free if you use GitHub Pages.
Isn’t all of this exciting?