Over the last couple of weekends I’ve been doing some work on adding automation to codemichael.net. I already had most of my configs out on github, but now I’ve updated that repo to include Ansible playbooks for the automated deploy and updating of my hosts.
I haven’t nearly gotten everything that I want to do yet, but I’ve mad a good first pass. The updates in the repo include automated installation of base packages such as Nginx, Letsencrypt, and Mariadb, download, configuration and updating my deployments of the Ghost blogging platform, and installation of Hastebin (moving away from my modern-paste install).
I use Ansible at work, and it’s a good tool. It’s probably overkill for a personal project like mine, but once you know how to create playbooks it does make upgrading things like ghost much easier.
Here’s an example of checking out the current master of the Hastebin repo as a preparatory step for install.
- name: checkout current version of hastebin
git:
repo: https://github.com/seejohnrun/haste-server
dest: /var/cache/hastebin
version: master
notify: install hastebin
When that step fires it grabs the lastest copy of master from the repository on github. If there are any changes from the copy that is sitting in cache, it will trigger the install hastebin
steps (via notify
).
I also made some updates to rpgames.org, and