CI / CD with Plesk, Hugo and GitLab

For a while I have been running my own GitLab install on one of my servers, to have a place for my private repos and some stuff I keep around. Tired of having to keep an eye on my WordPress blog continuosly, update all the time and fending off hacker attacks, some time ago I decided it was time to move to one of those new, modern, state-of-the-art static website builders. I chose Hugo for a series of reasons:

  • It’s a self-contained binary, easy and quick to install on any system, be it OSX, Windows or Linux.
  • It is lightning fast.
  • It has a decent selection of themes.
  • It looks like it´s very, very easy to learn to use.

So once I ventured into Hugo, I started rebuiding the blog from scratch, kept all my stuff neatly in a GitLab repo and was quite happy, as I could have the hugo binary installed on all my machines (I happen to use a Mac and a Windows PC at work, and a Linux laptop and a Windows PC at home) and work on stuff anywhere by just using my remote git repository.
I still had to manually upload all my stuff manually after compiling the site with Hugo, so I thougt to myself: Darn, there has to be a more convenient way, when I remembered that GitLab actually has had a built-in CD pipeline for quite some time.
On to google and to find this page which explains pretty well what to do.
I will provide the gory details in the next days, so please visit this page again.

Volker Kerkhoff avatar
About Volker Kerkhoff
Just another DevOps Engineer. Because international IT Mystery man isn´t a job description
comments powered by Disqus