Pathtoglory.quest

I'm on a quest to learn and understand things.

I broke production. Multitple times

Posted on 17 Mar 2026, 17:22

As I was starting to work on an RSS feature. I wanted my blog to generate an rss.xml file so people can get the latest news from my blog without having to use some third-party provider. By the way, here is the rss.xml file.

I developed my feature, and wanted to deploy it. And that's when I remembered how fastidious it was. I decided that I need to do some CI/CD thing to make it easier. It went in few steps:

  • Installing a git server (I chose gitea)
  • Setup some action runners
  • Write my actions
  • Have a successful deploy

The plan seemed easy and straight-forward. But nothing is straigth-forward with sysadmin. I had to set up my database the right way, which led me to actually delete my database (I lost two articles, what a shame). Then set up the user, the permissions, paths, etc..

Then came setting up the runner. With the same challenges.

And then, once I had a running git server and some runners, I had to write my actions. It took me 11 iterations to get it up running as I wanted.

I wanted my actions to copy the public files into the public folder handled by nginx for cache and performance.

I then copy the application files onto the server, add the env files with secrets from the repository secrets, and restart pm2.

It was a long challenge. Full of anger against permissions. But I have triumphed! And with that I get a stronger understanding of linux services, permissions, docker containers and their volume as well as github actions.