I host 33 web services on my personal servers. Ten of which are Go web services which I have created. They’re “open source.” In quotes as some services and their sources are obscured (I don’t care to document their uses). Managing more than a couple web services effectively needs some level of automation. Specifically around building and deploying the web services. Of which I handle with Git hooks and rc.d on FreeBSD.
On this blog you can find posts on minimal rc.d scripts and minimal CI/CD scripts but here I will show a full example I use across a number of open source Go projects that I think work well for general usage (and is used for this very blog).