I use sourcehut for version control and storing my code. That includes this blog.
My workflow until today was pretty simple. I make changes to the blog, commit and push those changes to the remote repo and then I would build the blog and use rsync to copy changes over to my host. I have everything set up to do this on the two main machines I use. It’s really pretty easy.
But I keep seeing articles about people who use github actions to make stuff happen and this made me think that I could do the same over at sourchut. I figured I’d need a combination of builds and dispatch. So I started with builds first.
I decided to use a Fedora image. I did so just because this is the environment running on my server and the system that I know best. But really, it isn’t necessary for it to match the server. My laptop runs MacOS and works fine for building the site. Any OS that can run hugo will work. But for a first run I figured I’d go with something I know.
The steps are simple, pull over the code, run hugo, rsync the public directory contents that get created. This took me a little time as I had to sort out what ssh key I needed, how to set up the commands properly, etc. I plan on doing a full write up of the whole process with code and what not.
I didn’t need to worry about dispatch. Builds will automatically run for commits to sourcehut git repos if there is a .build.yml file so I just put my config for the build there and it just works. Super nice.
This post will be my first where the blog is updated via the new method.