Yesterday I teased a new post about how I automated my blogroll generation by writing a Go script and using the Miniflux API. Here it is.
Today I modified my theme to use Twemoji for emojis. To add the SVG files to the theme, I used a Hugo module mount in the config of my theme:
module: imports: - path: github.com/twitter/twemoji mounts: - source: assets/svg target: static/twemoji/svg The problem now is that Hugo needs to download more then 3000 SVG files from GitHub when there is no cache. And because my blog builds on Drone CI, each time in a new container, there’s no cache and the build time increased by about 10 seconds.
After getting inspired by Kevin C. Coram, the blog is now generated by Hugo on a private Drone CI instance. Using a custom Docker image with Hugo, the site gets generated and the output is then uploaded to the server using rsync. Because this approach is much cleaner than my previous one, I could now also setup things like a preview page and I can update Hugo versions for my sites independently.