<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ansible-roles, branch main</title>
<subtitle>Ansible roles shared between many of my playbooks
</subtitle>
<id>https://git.fennell.dev/ansible-roles/atom?h=main</id>
<link rel='self' href='https://git.fennell.dev/ansible-roles/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/'/>
<updated>2026-09-09T21:54:41Z</updated>
<entry>
<title>Don't install prosody plugins by default</title>
<updated>2026-09-09T21:54:41Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T21:54:41Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=eb726d710784bb1676042f3fe2f1b5b0bb47cb81'/>
<id>urn:sha1:eb726d710784bb1676042f3fe2f1b5b0bb47cb81</id>
<content type='text'>
I want to set up monitoring on fennell.dev and search.fennell.dev - neither of
which have a postgres instance or should include other prosody-related plugins
in the future. Therefore, configure a base set of plugins that should always be
included, and let extra plugins / configuration be driven by extra_profiles.

Over time, I'll want to create profile maps (containing config for the
necessary packages/plugins to install/configure for that profile) to avoid
unnecessary duplication of tasks, but for now, it's sufficient.
</content>
</entry>
<entry>
<title>Use bash as the default shell for admin</title>
<updated>2026-09-09T21:17:34Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T21:17:34Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=954c8ecb4f1ff54f1097f92224447bf76293cf51'/>
<id>urn:sha1:954c8ecb4f1ff54f1097f92224447bf76293cf51</id>
<content type='text'>
ansible.builtin.user uses useradd's configured default shell if none is
specified - which on stock Debian systems, is /bin/sh. Choose a more sane
default with colours and reverse-search!

This is needed now as I'd like to run both bootstrap and munin-node against
both fennell.dev and search.fennell.dev, both of which were unmanaged in the
past. Now, at least the initial bootstrap and munin-node config will be managed
by ansible.
</content>
</entry>
<entry>
<title>Move munin-node template from xmpp-server</title>
<updated>2026-09-09T21:02:49Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T21:02:49Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=1abcdf6fe1f109db6fa8df609f98b87fccb31b0c'/>
<id>urn:sha1:1abcdf6fe1f109db6fa8df609f98b87fccb31b0c</id>
<content type='text'>
This was the only config file still dependent on the wider playbook.

There are still multiple variables that are neither defined in the playbook nor
in argument_specs. This would be good to clean up later.
</content>
</entry>
<entry>
<title>Copy munin-node tasks &amp; handlers from xmpp-server</title>
<updated>2026-09-09T21:00:45Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T21:00:45Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=d2ecd350c47312cbf58840c953a9be68990d01e5'/>
<id>urn:sha1:d2ecd350c47312cbf58840c953a9be68990d01e5</id>
<content type='text'>
This is a straightforward copy and delete from the xmpp-server playbook for
now. Cleanup (for instance, adding a prefix to the variable names) will come
later.
</content>
</entry>
<entry>
<title>ansible-galaxy init munin-node</title>
<updated>2026-09-09T20:53:38Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T20:53:38Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=0dd7bb008d2079f45b85736549ac524796c1f398'/>
<id>urn:sha1:0dd7bb008d2079f45b85736549ac524796c1f398</id>
<content type='text'>
Clear out subdirectories which are unlikely to be needed, and install the
plugin by default during make.
</content>
</entry>
<entry>
<title>Move bootstrap sources to their own subdirectory</title>
<updated>2026-09-09T20:50:33Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T20:48:42Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=25db56f6241ae50feb54232e25f8203c1a450c7c'/>
<id>urn:sha1:25db56f6241ae50feb54232e25f8203c1a450c7c</id>
<content type='text'>
Since much of the setup (e.g. linter, hook, Makefile configuration) is
consistent between ansible roles, instead of having a separate repo per role
(as I initially planned), I'd prefer to have a single repo with all of the
roles that the playbooks can then pull from.

This is in preparation of adding a new munin-node role, following a similar
process to bootstrap.
</content>
</entry>
<entry>
<title>Set default debian variables</title>
<updated>2026-09-09T20:44:54Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T20:44:54Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=afa36d11a380f924588d67172ecf02275461f386'/>
<id>urn:sha1:afa36d11a380f924588d67172ecf02275461f386</id>
<content type='text'>
On most of my servers, these will all be configured as the defaults are. On
Mythic Beasts servers, and some other hosts, I should pass a mirror path
instead of the deafult uris here.
</content>
</entry>
<entry>
<title>Move files and templates from xmpp-server</title>
<updated>2026-09-09T20:43:36Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T20:43:36Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=258012f00782d10d44d5bb284dfa00059b3af719'/>
<id>urn:sha1:258012f00782d10d44d5bb284dfa00059b3af719</id>
<content type='text'>
As I just performed a naive copy before, files and templates used by the
bootstrap role were still resolving via playbook_dir. This still worked, but I
want these bootstrap-specific files to remain self-contained within the role.
</content>
</entry>
<entry>
<title>Copy bootstrap tasks and handlers from xmpp-server</title>
<updated>2026-09-09T20:26:19Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T20:26:19Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=03e6483ad6889ca05e678ff1d11f69aace7ce614'/>
<id>urn:sha1:03e6483ad6889ca05e678ff1d11f69aace7ce614</id>
<content type='text'>
This is a straightforward copy and delete from the xmpp-server playbook for
now. Cleanup (for instance, adding a prefix to the variable names) will come
later.
</content>
</entry>
<entry>
<title>Add install task to Makefile</title>
<updated>2026-09-09T20:17:38Z</updated>
<author>
<name>Matthew Fennell</name>
<email>matthew@fennell.dev</email>
</author>
<published>2026-09-09T20:12:42Z</published>
<link rel='alternate' type='text/html' href='https://git.fennell.dev/ansible-roles/commit/?id=4c5207339421379f79b40d28ee132f0daf6ae619'/>
<id>urn:sha1:4c5207339421379f79b40d28ee132f0daf6ae619</id>
<content type='text'>
In ~/.ansible.cfg, I include /usr/local/share/ansible/roles in roles_path so
that playbooks can find roles from there. Add the corresponding install tasks
to the Makefile.
</content>
</entry>
</feed>
