[defaults]
+# Setup paths for crucial files (inventory, roles, logs, vault key)
inventory = ./hosts.ini
roles_path = ./roles:../roles
log_path = ./log
-nocows=1
vault_password_file = ./gpg/get-vault-pass.sh
+# Disable an annoying easter-egg
+nocows = 1
+
# Error-out when encountering an undefined variable
# See https://docs.ansible.com/ansible/latest/intro_configuration.html#error-on-undefined-vars
error_on_undefined_vars = True
# Run more tasks in parallel
forks = 50
+# Cache host facts for 2h
gathering = smart
fact_caching = jsonfile
fact_caching_connection = ./.cache/facts
fact_caching_timeout = 7200
-
var_compression_level = 9
-timeout=30
+# Increase the timeout, to deal with going through jump hosts
+timeout = 30
+# Use SSH pipelining and multiplexing to minimize the number of extra
+# connections and round-trips.
[ssh_connection]
pipelining = True
ssh_args = -C -o ControlMaster=auto -o ControlPersist=60s