ads' corner

Ansible: debug: invalid or malformed argument: 'your text here'

Ansible raises the error 'invalid or malformed argument', but the problem is in the code.

Ansible Handler: respond to multiple different Notifications simultaneously

Ansible has a concept of handlers, which run at the end of a Playbook, when something changed. In certain situations it might be desired or necessary to have a handler listen to more than one signal name. In my example: I'm updating the Samba configuration, and before restarting smbd or nmbd I want to check the configuration. This configuration check handler must listen to both restart signals.

Install Microsoft True Type Core Fonts on Arch Linux and Manjaro Linux

Switching laptops from Ubuntu to Manjaro Linux. One of the packages which I want to install is the Microsoft True Type Core Fonts. That works different in both distributions.

Using fail2ban to block unfriendly web requests

Every time I peek into the webserver logfiles, I find quite a few 404 requests trying to figure out if certain exploits exist on this server. Now I get that these are automated attempts, and the number of requests coming from one IP show that they try several different exploits and path names. Nevertheless I thought that I don’t need this in my log, and on my webserver. fail2ban for the rescue.

Run Ansible tasks as different remote user

Had a somewhat curious situation: need to run a task in Ansible in different user accounts, but I don't have 'sudo' or 'su' access, only ssh access for every account. Took me a moment to figure out how to do that.

Ansible: Lookup group name by gid

For one of my *Ansible* Playbooks I need the group name associated with a specific group id. Turns out there is not much documentation online how to do this, and I had to test it out.

Read a JSON text into a variable in Ansible without parsing it

For one project I need to insert the content of a local file into another file on the remote system, and the first file happens to be JSON. The JSON file is in compact format and is supposed to stay this way. When Ansible reads the content of the file, it determines that the content is JSON, and parses the content into the variable - and along the way is uncompressing the format. Not what I want. To keep the file content as string, it is necessary to tell Ansible to handle this as string.

Ansible and string comparisation for IDs

Was running in a stupid problem where Ansible (version 2.9.x) throws an error when a variable is defined.

Ansible, "copy" module and "become"

For testing I did spin up a couple of new virtual (Ubuntu 20.04 LTS) instances, installed PostgreSQL, and wanted to copy over a '.sql' file to install in the database. And ran into a meaningless error message.

Make Ansible "postgresql_ping" fail if the database does not exist

Ansible has a very useful module 'postgresql_ping' which checks connectivity to the database server. I'm using it in quite a few Playbooks as first step just to ensure that the database server is present - this fails early if there is a problem which otherwise just prevents the rest of the Playbook to work properly.