From 2c4f5be2d500a24872428d5e52ca5bc34ed5615b Mon Sep 17 00:00:00 2001 From: Janik von Rotz Date: Fri, 5 Apr 2024 16:04:24 +0200 Subject: [PATCH] BREAKING CHANGE: applied autofixes with ansible lint --- .ansible-lint | 13 +- play_clean.yml | 7 +- play_localhost.yml | 37 +-- play_nextcloud.yml | 29 +-- play_odoo.yml | 1 + play_proxy.yml | 61 ++--- play_setup.yml | 225 +++++++++--------- roles/bigbluebutton/defaults/main.yml | 3 +- roles/bigbluebutton/handlers/main.yml | 9 +- roles/bigbluebutton/meta/main.yml | 1 + .../tasks/bigbluebutton_coturn.yml | 5 +- .../tasks/bigbluebutton_greenlight.yml | 15 +- .../tasks/bigbluebutton_html5.yml | 27 ++- .../tasks/bigbluebutton_https.yml | 29 +-- .../tasks/bigbluebutton_letsencrypt.yml | 22 +- .../tasks/bigbluebutton_ubuntu1804.yml | 68 +++--- roles/bigbluebutton/tasks/main.yml | 47 ++-- .../bigbluebutton_exporter/defaults/main.yml | 3 +- roles/bigbluebutton_exporter/meta/main.yml | 3 +- .../tasks/bigbluebutton_exporter.yml | 13 +- .../bigbluebutton_exporter_nginx_config.yml | 21 +- roles/bigbluebutton_exporter/tasks/main.yml | 11 +- roles/birt/defaults/main.yml | 3 +- roles/birt/handlers/main.yml | 11 +- roles/birt/tasks/birt.yml | 26 +- roles/birt/tasks/main.yml | 7 +- roles/blackbox_exporter/defaults/main.yml | 3 +- roles/blackbox_exporter/files/config.yml | 19 +- roles/blackbox_exporter/meta/main.yml | 3 +- .../tasks/blackbox_exporter.yml | 13 +- roles/blackbox_exporter/tasks/main.yml | 7 +- roles/bookstack/defaults/main.yml | 3 +- roles/bookstack/meta/main.yml | 3 +- roles/bookstack/tasks/bookstack.yml | 11 +- roles/bookstack/tasks/main.yml | 7 +- roles/cadvisor/defaults/main.yml | 3 +- roles/cadvisor/meta/main.yml | 3 +- roles/cadvisor/tasks/cadvisor.yml | 9 +- .../cadvisor/tasks/cadvisor_nginx_config.yml | 21 +- roles/cadvisor/tasks/main.yml | 11 +- roles/cargo/defaults/main.yml | 3 +- roles/cargo/tasks/cargo.yml | 17 +- roles/cargo/tasks/main.yml | 7 +- roles/certbot/defaults/main.yml | 5 +- roles/certbot/handlers/main.yml | 7 +- roles/certbot/meta/main.yml | 3 +- roles/certbot/tasks/certbot.yml | 61 ++--- roles/certbot/tasks/certbot_build.yml | 13 +- roles/certbot/tasks/certbot_check.yml | 15 +- roles/certbot/tasks/certbot_cleanup.yml | 21 +- roles/certbot/tasks/certbot_renew.yml | 9 +- roles/certbot/tasks/certbot_secrets.yml | 11 +- roles/certbot/tasks/certbot_wildcard.yml | 19 +- roles/certbot/tasks/main.yml | 37 +-- roles/clean/defaults/main.yml | 5 +- roles/clean/tasks/bigbluebutton.yml | 33 +-- roles/clean/tasks/bookstack.yml | 9 +- roles/clean/tasks/cadvisor.yml | 9 +- roles/clean/tasks/certbot.yml | 7 +- roles/clean/tasks/collabora_code.yml | 7 +- roles/clean/tasks/commento.yml | 7 +- roles/clean/tasks/docker_compose.yml | 13 +- roles/clean/tasks/docker_network.yml | 5 +- roles/clean/tasks/docker_swarm.yml | 5 +- roles/clean/tasks/elasticsearch.yml | 13 +- roles/clean/tasks/elasticsearch_cluster.yml | 13 +- roles/clean/tasks/fathom.yml | 7 +- roles/clean/tasks/grafana.yml | 9 +- roles/clean/tasks/innernet_client.yml | 15 +- roles/clean/tasks/innernet_server.yml | 13 +- roles/clean/tasks/keycloak.yml | 7 +- roles/clean/tasks/kibana.yml | 7 +- roles/clean/tasks/logstash.yml | 9 +- roles/clean/tasks/mailhog.yml | 5 +- roles/clean/tasks/main.yml | 5 +- roles/clean/tasks/metricbeat.yml | 9 +- roles/clean/tasks/modsecurity.yml | 5 +- roles/clean/tasks/moodle.yml | 7 +- roles/clean/tasks/mysql.yml | 9 +- roles/clean/tasks/nextcloud.yml | 9 +- roles/clean/tasks/nginx.yml | 8 +- roles/clean/tasks/node_exporter.yml | 9 +- roles/clean/tasks/odoo.yml | 13 +- roles/clean/tasks/odoo_scripts.yml | 7 +- roles/clean/tasks/openldap.yml | 5 +- roles/clean/tasks/pgadmin.yml | 9 +- roles/clean/tasks/postgres.yml | 11 +- roles/clean/tasks/prometheus.yml | 9 +- roles/clean/tasks/redis.yml | 11 +- roles/clean/tasks/restic_client.yml | 5 +- roles/clean/tasks/wordpress.yml | 9 +- roles/collabora_code/defaults/main.yml | 3 +- roles/collabora_code/meta/main.yml | 1 + roles/collabora_code/tasks/collabora_code.yml | 9 +- roles/collabora_code/tasks/main.yml | 7 +- roles/commento/defaults/main.yml | 5 +- roles/commento/meta/main.yml | 3 +- roles/commento/tasks/commento.yml | 9 +- roles/commento/tasks/main.yml | 7 +- roles/coturn/defaults/main.yml | 3 +- roles/coturn/handlers/main.yml | 7 +- roles/coturn/meta/main.yml | 3 +- roles/coturn/tasks/coturn.yml | 17 +- roles/coturn/tasks/main.yml | 7 +- roles/cron/defaults/main.yml | 3 +- roles/cron/handlers/main.yml | 5 +- roles/cron/tasks/cron-log.yml | 19 +- roles/cron/tasks/cron.yml | 19 +- roles/cron/tasks/main.yml | 9 +- roles/debug/tasks/debug.yml | 39 ++- roles/debug/tasks/main.yml | 7 +- roles/dind/defaults/main.yml | 1 + roles/dind/meta/main.yml | 3 +- roles/dind/tasks/dind.yml | 7 +- roles/dind/tasks/main.yml | 7 +- roles/docker/defaults/main.yml | 11 +- roles/docker/handlers/main.yml | 7 +- roles/docker/tasks/docker-centos.yml | 15 +- roles/docker/tasks/docker-debian.yml | 13 +- roles/docker/tasks/docker-login.yml | 7 +- roles/docker/tasks/docker-rocky.yml | 15 +- roles/docker/tasks/docker-ubuntu.yml | 15 +- roles/docker/tasks/docker.yml | 27 ++- roles/docker/tasks/main.yml | 27 ++- roles/docker_compose/defaults/main.yml | 5 +- roles/docker_compose/handlers/main.yml | 5 +- roles/docker_compose/meta/main.yml | 3 +- roles/docker_compose/tasks/docker_compose.yml | 39 +-- roles/docker_compose/tasks/main.yml | 7 +- roles/docker_hosts/defaults/main.yml | 1 + roles/docker_hosts/meta/main.yml | 3 +- roles/docker_hosts/tasks/docker_hosts.yml | 25 +- roles/docker_hosts/tasks/main.yml | 5 +- roles/docker_network/defaults/main.yml | 3 +- roles/docker_network/meta/main.yml | 3 +- roles/docker_network/tasks/docker_network.yml | 9 +- roles/docker_network/tasks/main.yml | 3 +- roles/docker_swarm/defaults/main.yml | 3 +- roles/docker_swarm/meta/main.yml | 3 +- roles/docker_swarm/tasks/docker_swarm.yml | 5 +- roles/docker_swarm/tasks/main.yml | 7 +- roles/docker_volume/meta/main.yml | 3 +- roles/docker_volume/tasks/docker_volume.yml | 5 +- .../tasks/docker_volume_backup.yml | 5 +- .../tasks/docker_volume_scripts.yml | 7 +- roles/docker_volume/tasks/main.yml | 15 +- roles/dozzle/defaults/main.yml | 3 +- roles/dozzle/tasks/dozzle.yml | 9 +- roles/dozzle/tasks/main.yml | 7 +- roles/dribdat/defaults/main.yml | 3 +- roles/dribdat/meta/main.yml | 3 +- roles/dribdat/tasks/dribdat.yml | 33 +-- roles/dribdat/tasks/main.yml | 7 +- roles/elasticsearch/defaults/main.yml | 3 +- roles/elasticsearch/handlers/main.yml | 11 +- roles/elasticsearch/meta/main.yml | 3 +- .../tasks/elasticsearch-cluster.yml | 31 +-- .../tasks/elasticsearch-users.yml | 12 +- roles/elasticsearch/tasks/elasticsearch.yml | 40 ++-- roles/elasticsearch/tasks/main.yml | 19 +- roles/fail2ban/defaults/main.yml | 3 +- roles/fail2ban/handlers/main.yml | 7 +- roles/fail2ban/tasks/fail2ban.yml | 15 +- roles/fail2ban/tasks/main.yml | 7 +- roles/fathom/defaults/main.yml | 3 +- roles/fathom/meta/main.yml | 3 +- roles/fathom/tasks/fathom.yml | 11 +- roles/fathom/tasks/main.yml | 7 +- roles/fstab/tasks/fstab.yml | 11 +- roles/fstab/tasks/main.yml | 5 +- roles/git/tasks/git.yml | 11 +- roles/git/tasks/main.yml | 7 +- roles/gitea/defaults/main.yml | 3 +- roles/gitea/meta/main.yml | 3 +- roles/gitea/tasks/gitea.yml | 19 +- roles/gitea/tasks/main.yml | 7 +- roles/grafana/defaults/main.yml | 5 +- roles/grafana/handlers/main.yml | 7 +- roles/grafana/meta/main.yml | 3 +- roles/grafana/tasks/grafana.yml | 29 +-- roles/grafana/tasks/main.yml | 7 +- roles/htpasswd/defaults/main.yml | 3 +- roles/htpasswd/tasks/htpasswd.yml | 15 +- roles/htpasswd/tasks/main.yml | 5 +- roles/iam/defaults/main.yml | 3 +- roles/iam/handlers/main.yml | 5 +- roles/iam/meta/main.yml | 3 +- roles/iam/tasks/groups.yml | 33 +-- roles/iam/tasks/install-oh-my-zsh.yml | 13 +- roles/iam/tasks/main.yml | 11 +- roles/iam/tasks/users.yml | 19 +- .../innernet_client/tasks/innernet_client.yml | 35 +-- roles/innernet_client/tasks/main.yml | 7 +- .../innernet_server/tasks/innernet_server.yml | 27 ++- roles/innernet_server/tasks/main.yml | 7 +- roles/jenkins/defaults/main.yml | 9 +- roles/jenkins/handlers/main.yml | 9 +- roles/jenkins/meta/main.yml | 3 +- roles/jenkins/tasks/jenkins.yml | 19 +- roles/jenkins/tasks/jenkins_build.yml | 13 +- roles/jenkins/tasks/main.yml | 15 +- roles/keycloak/defaults/main.yml | 9 +- roles/keycloak/handlers/main.yml | 11 +- roles/keycloak/meta/main.yml | 3 +- roles/keycloak/tasks/keycloak.yml | 21 +- roles/keycloak/tasks/keycloak_build.yml | 25 +- roles/keycloak/tasks/main.yml | 17 +- roles/keycloak_client/meta/main.yml | 3 +- .../keycloak_client/tasks/keycloak_client.yml | 5 +- roles/keycloak_client/tasks/main.yml | 7 +- roles/kibana/defaults/main.yml | 3 +- roles/kibana/meta/main.yml | 1 + roles/kibana/tasks/kibana.yml | 9 +- roles/kibana/tasks/main.yml | 7 +- roles/locale/defaults/main.yml | 3 +- roles/locale/tasks/locale.yml | 17 +- roles/locale/tasks/main.yml | 7 +- roles/logstash/defaults/main.yml | 3 +- roles/logstash/handlers/main.yml | 7 +- roles/logstash/meta/main.yml | 3 +- roles/logstash/tasks/logstash.yml | 17 +- roles/logstash/tasks/main.yml | 7 +- roles/loki/defaults/main.yml | 3 +- roles/loki/handlers/main.yml | 7 +- roles/loki/meta/main.yml | 3 +- roles/loki/tasks/loki.yml | 17 +- roles/loki/tasks/loki_nginx_config.yml | 21 +- roles/loki/tasks/main.yml | 11 +- roles/mailhog/defaults/main.yml | 5 +- roles/mailhog/meta/main.yml | 3 +- roles/mailhog/tasks/mailhog.yml | 11 +- roles/mailhog/tasks/main.yml | 7 +- roles/maintenance/defaults/main.yml | 3 +- roles/maintenance/meta/main.yml | 3 +- roles/maintenance/tasks/main.yml | 19 +- roles/maintenance/tasks/maintenance.yml | 25 +- roles/maintenance/tasks/maintenance_apt.yml | 7 +- roles/maintenance/tasks/maintenance_job.yml | 9 +- roles/mariadb/defaults/main.yml | 3 +- roles/mariadb/meta/main.yml | 3 +- roles/mariadb/tasks/main.yml | 13 +- roles/mariadb/tasks/mariadb-backup.yml | 13 +- roles/mariadb/tasks/mariadb.yml | 13 +- roles/matomo/defaults/main.yml | 3 +- roles/matomo/handlers/main.yml | 9 +- roles/matomo/meta/main.yml | 1 + roles/matomo/tasks/main.yml | 15 +- roles/matomo/tasks/matomo.yml | 17 +- roles/matomo/tasks/matomo_build.yml | 13 +- roles/meilisearch/defaults/main.yml | 3 +- roles/meilisearch/handlers/main.yml | 9 +- roles/meilisearch/meta/main.yml | 1 + roles/meilisearch/tasks/main.yml | 7 +- roles/meilisearch/tasks/meilisearch.yml | 6 +- roles/metricbeat/defaults/main.yml | 3 +- roles/metricbeat/handlers/main.yml | 7 +- roles/metricbeat/meta/main.yml | 1 + roles/metricbeat/tasks/main.yml | 7 +- roles/metricbeat/tasks/metricbeat.yml | 23 +- roles/moodle/defaults/main.yml | 3 +- roles/moodle/meta/main.yml | 3 +- roles/moodle/tasks/main.yml | 7 +- roles/moodle/tasks/moodle.yml | 9 +- roles/mysql/defaults/main.yml | 3 +- roles/mysql/meta/main.yml | 3 +- roles/mysql/tasks/main.yml | 13 +- roles/mysql/tasks/mysql-backup.yml | 11 +- roles/mysql/tasks/mysql.yml | 9 +- roles/nextcloud/defaults/main.yml | 3 +- roles/nextcloud/handlers/main.yml | 11 +- roles/nextcloud/meta/main.yml | 1 + roles/nextcloud/tasks/main.yml | 19 +- roles/nextcloud/tasks/nextcloud.yml | 37 +-- roles/nextcloud/tasks/nextcloud_build.yml | 13 +- roles/nextcloud/tasks/nextcloud_integrity.yml | 9 +- roles/nextcloud_apps/tasks/main.yml | 7 +- roles/nextcloud_apps/tasks/nextcloud_apps.yml | 42 ++-- roles/nextcloud_exporter/defaults/main.yml | 5 +- roles/nextcloud_exporter/meta/main.yml | 3 +- roles/nextcloud_exporter/tasks/main.yml | 11 +- .../tasks/nextcloud_exporter.yml | 7 +- .../tasks/nextcloud_exporter_nginx_config.yml | 21 +- roles/nginx/defaults/main.yml | 5 +- roles/nginx/handlers/main.yml | 7 +- roles/nginx/meta/main.yml | 3 +- roles/nginx/tasks/main.yml | 9 +- roles/nginx/tasks/nginx.yml | 13 +- roles/nginx/tasks/nginx_config.yml | 43 ++-- roles/nginx_waf/defaults/main.yml | 5 +- roles/nginx_waf/tasks/main.yml | 5 +- roles/nginx_waf/tasks/nginx_waf.yml | 15 +- roles/node_exporter/defaults/main.yml | 5 +- roles/node_exporter/meta/main.yml | 3 +- roles/node_exporter/tasks/main.yml | 11 +- roles/node_exporter/tasks/node_exporter.yml | 29 +-- .../tasks/node_exporter_nginx_config.yml | 21 +- roles/odoo/defaults/main.yml | 5 +- roles/odoo/handlers/main.yml | 5 +- roles/odoo/handlers/odoo-handlers.yml | 11 +- roles/odoo/meta/main.yml | 3 +- roles/odoo/tasks/main.yml | 7 +- roles/odoo/tasks/odoo.yml | 49 ++-- roles/odoo_apps/defaults/main.yml | 5 +- roles/odoo_apps/hanlders.yml/main.yml | 3 +- roles/odoo_apps/tasks/main.yml | 11 +- roles/odoo_apps/tasks/odoo_apps.yml | 55 ++--- roles/odoo_apps/tasks/odoo_pip_packages.yml | 9 +- roles/odoo_data/defaults/main.yml | 3 +- roles/odoo_data/tasks/main.yml | 7 +- roles/odoo_data/tasks/odoo_data.yml | 17 +- roles/odoo_databases/defaults/main.yml | 3 +- roles/odoo_databases/meta/main.yml | 3 +- roles/odoo_databases/tasks/main.yml | 7 +- roles/odoo_databases/tasks/odoo_databases.yml | 19 +- roles/odoo_enterprise/defaults/main.yml | 7 +- roles/odoo_enterprise/meta/main.yml | 3 +- roles/odoo_enterprise/tasks/main.yml | 7 +- .../odoo_enterprise/tasks/odoo_enterprise.yml | 11 +- roles/odoo_patches/handlers/main.yml | 5 +- .../handlers/remove_odoo_patches.yml | 9 +- roles/odoo_patches/tasks/main.yml | 5 +- roles/odoo_patches/tasks/odoo_patches.yml | 15 +- roles/odoo_scripts/tasks/main.yml | 7 +- roles/odoo_scripts/tasks/odoo_scripts.yml | 9 +- .../defaults/main.yml | 3 +- roles/onlyoffice_documentserver/meta/main.yml | 3 +- .../onlyoffice_documentserver/tasks/main.yml | 7 +- .../tasks/onlyoffice_documentserver.yml | 7 +- roles/openldap/defaults/main.yml | 3 +- roles/openldap/handlers/main.yml | 7 +- roles/openldap/meta/main.yml | 1 + roles/openldap/tasks/main.yml | 7 +- roles/openldap/tasks/openldap.yml | 11 +- roles/package/defaults/main.yml | 3 +- roles/package/tasks/main.yml | 42 ++-- roles/package/tasks/package.yml | 7 +- roles/package/tasks/package_apt.yml | 9 +- roles/package/tasks/package_dnf.yml | 7 +- roles/package/tasks/package_snap.yml | 7 +- roles/package/tasks/package_yum.yml | 11 +- roles/pgadmin/defaults/main.yml | 3 +- roles/pgadmin/handlers/main.yml | 7 +- roles/pgadmin/meta/main.yml | 3 +- roles/pgadmin/tasks/main.yml | 7 +- roles/pgadmin/tasks/pgadmin.yml | 19 +- roles/php_fpm/defaults/main.yml | 1 + roles/php_fpm/handlers/main.yml | 11 +- roles/php_fpm/meta/main.yml | 1 + roles/php_fpm/tasks/main.yml | 17 +- roles/php_fpm/tasks/php_fpm.yml | 9 +- roles/php_fpm/tasks/php_fpm_build.yml | 13 +- roles/postfix/defaults/main.yml | 5 +- roles/postfix/handlers/main.yml | 23 +- roles/postfix/meta/main.yml | 3 +- roles/postfix/tasks/main.yml | 7 +- roles/postfix/tasks/postfix.yml | 34 +-- roles/postgres/defaults/main.yml | 5 +- roles/postgres/handlers/main.yml | 11 +- roles/postgres/meta/main.yml | 3 +- roles/postgres/tasks/main.yml | 23 +- roles/postgres/tasks/postgres.yml | 25 +- roles/postgres/tasks/postgres_backup.yml | 7 +- roles/postgres/tasks/postgres_build.yml | 13 +- roles/postgres/tasks/postgres_users.yml | 33 +-- roles/postgres_exporter/defaults/main.yml | 5 +- roles/postgres_exporter/files/queries.yml | 11 +- roles/postgres_exporter/meta/main.yml | 3 +- roles/postgres_exporter/tasks/main.yml | 11 +- .../tasks/postgres_exporter.yml | 18 +- .../tasks/postgres_exporter_nginx_config.yml | 21 +- roles/prometheus/defaults/main.yml | 5 +- roles/prometheus/handlers/main.yml | 7 +- roles/prometheus/meta/main.yml | 3 +- roles/prometheus/tasks/main.yml | 7 +- roles/prometheus/tasks/prometheus.yml | 37 +-- roles/promtail/defaults/main.yml | 3 +- roles/promtail/handlers/main.yml | 7 +- roles/promtail/meta/main.yml | 3 +- roles/promtail/tasks/main.yml | 5 +- roles/promtail/tasks/promtail.yml | 17 +- roles/rabbitmq/defaults/main.yml | 5 +- roles/rabbitmq/handlers/main.yml | 11 +- roles/rabbitmq/meta/main.yml | 3 +- roles/rabbitmq/tasks/main.yml | 7 +- roles/rabbitmq/tasks/rabbitmq.yml | 28 +-- roles/rclone/tasks/main.yml | 7 +- roles/rclone/tasks/rclone.yml | 32 +-- roles/redis/defaults/main.yml | 1 + roles/redis/handlers/main.yml | 7 +- roles/redis/meta/main.yml | 3 +- roles/redis/tasks/main.yml | 7 +- roles/redis/tasks/redis.yml | 13 +- roles/remark42/defaults/main.yml | 3 +- roles/remark42/meta/main.yml | 3 +- roles/remark42/tasks/main.yml | 7 +- roles/remark42/tasks/remark42.yml | 17 +- roles/resolv/defaults/main.yml | 3 +- roles/resolv/tasks/main.yml | 9 +- roles/resolv/tasks/resolv-hosts.yml | 7 +- roles/resolv/tasks/resolv.yml | 11 +- roles/restic_client/defaults/main.yml | 3 +- roles/restic_client/tasks/main.yml | 31 +-- roles/restic_client/tasks/restic_client.yml | 44 ++-- .../restic_client_docker_mariadb_backup.yml | 19 +- .../restic_client_docker_mysql_backup.yml | 19 +- .../restic_client_docker_postgres_backup.yml | 19 +- .../restic_client_docker_volume_backup.yml | 19 +- .../tasks/restic_client_file_backup.yml | 12 +- .../tasks/restic_client_odoo_backup.yml | 22 +- roles/restic_server/defaults/main.yml | 5 +- roles/restic_server/meta/main.yml | 3 +- roles/restic_server/tasks/main.yml | 11 +- roles/restic_server/tasks/restic_server.yml | 21 +- .../tasks/restic_server_nginx_config.yml | 21 +- roles/s3cmd/tasks/main.yml | 7 +- roles/s3cmd/tasks/s3cmd.yml | 14 +- roles/simple_mail_forwarder/defaults/main.yml | 1 + roles/simple_mail_forwarder/handlers/main.yml | 7 +- roles/simple_mail_forwarder/meta/main.yml | 3 +- roles/simple_mail_forwarder/tasks/main.yml | 7 +- .../tasks/simple_mail_forwarder.yml | 7 +- roles/superset/defaults/main.yml | 3 +- roles/superset/handlers/main.yml | 11 +- roles/superset/tasks/main.yml | 17 +- roles/superset/tasks/superset.yml | 10 +- roles/superset/tasks/superset_build.yml | 15 +- roles/synapse/defaults/main.yml | 5 +- roles/synapse/meta/main.yml | 3 +- roles/synapse/tasks/main.yml | 7 +- roles/synapse/tasks/synapse.yml | 20 +- roles/systemd/tasks/main.yml | 5 +- roles/systemd/tasks/systemd.yml | 13 +- roles/ufw/defaults/main.yml | 53 +++-- roles/ufw/tasks/main.yml | 7 +- roles/ufw/tasks/ufw.yml | 21 +- roles/update/defaults/main.yml | 3 +- roles/update/tasks/main.yml | 19 +- roles/update/tasks/update_apt.yml | 13 +- roles/update/tasks/update_dnf.yml | 13 +- roles/update/tasks/update_yum.yml | 17 +- roles/update/tasks/update_zypper.yml | 12 +- roles/vercel/defaults/main.yml | 3 +- roles/vercel/tasks/main.yml | 11 +- roles/vercel/tasks/vercel_dns.yml | 41 ++-- roles/vercel/tasks/vercel_scripts.yml | 15 +- roles/wordpress/defaults/main.yml | 3 +- roles/wordpress/handlers/main.yml | 11 +- roles/wordpress/meta/main.yml | 1 + roles/wordpress/tasks/main.yml | 17 +- roles/wordpress/tasks/wordpress.yml | 11 +- roles/wordpress/tasks/wordpress_build.yml | 13 +- task | 2 +- 452 files changed, 2794 insertions(+), 2385 deletions(-) diff --git a/.ansible-lint b/.ansible-lint index beefbbd2..ac8bba40 100644 --- a/.ansible-lint +++ b/.ansible-lint @@ -1,3 +1,12 @@ skip_list: - - experimental # all rules tagged as experimental - - role-name # Role name {0} does not match ``^[a-z][a-z0-9_]+$`` pattern + - outdated-tag + - role-name + - "fqcn[action-core]" + - line-length + - yaml[line-length] + - "name[template]" + - risky-file-permissions + - "jinja[spacing]" + - ignore-errors + - no-changed-when + - var-naming[no-role-prefix] \ No newline at end of file diff --git a/play_clean.yml b/play_clean.yml index c7e1901d..cd2a040c 100644 --- a/play_clean.yml +++ b/play_clean.yml @@ -1,6 +1,7 @@ +--- - hosts: all become: true roles: - - role: clean - tags: - - always \ No newline at end of file + - role: clean + tags: + - always diff --git a/play_localhost.yml b/play_localhost.yml index 0c7a37a5..133337f7 100644 --- a/play_localhost.yml +++ b/play_localhost.yml @@ -1,22 +1,23 @@ +--- - hosts: localhost become: true connection: local roles: - - role: odoo_scripts - tags: odoo_scripts - - role: odoo_apps - tags: odoo_apps - - role: docker_compose - tags: docker_compose - - role: clean - tags: clean - - role: package - tags: package - - role: cargo - tags: cargo - - role: innernet_client - tags: innernet_client - - role: maintenance - tags: maintenance - - role: rabbitmq - tags: rabbitmq + - role: odoo_scripts + tags: odoo_scripts + - role: odoo_apps + tags: odoo_apps + - role: docker_compose + tags: docker_compose + - role: clean + tags: clean + - role: package + tags: package + - role: cargo + tags: cargo + - role: innernet_client + tags: innernet_client + - role: maintenance + tags: maintenance + - role: rabbitmq + tags: rabbitmq diff --git a/play_nextcloud.yml b/play_nextcloud.yml index d34776fd..83090c1c 100644 --- a/play_nextcloud.yml +++ b/play_nextcloud.yml @@ -1,17 +1,18 @@ +--- - hosts: all become: true roles: - - role: redis - tags: redis - - role: nextcloud - tags: nextcloud - - role: nextcloud_apps - tags: nextcloud_apps - - role: onlyoffice_documentserver - tags: onlyoffice_documentserver - - role: nextcloud_exporter - tags: nextcloud_exporter - - role: elasticsearch - tags: elasticsearch - - role: collabora_code - tags: collabora_code \ No newline at end of file + - role: redis + tags: redis + - role: nextcloud + tags: nextcloud + - role: nextcloud_apps + tags: nextcloud_apps + - role: onlyoffice_documentserver + tags: onlyoffice_documentserver + - role: nextcloud_exporter + tags: nextcloud_exporter + - role: elasticsearch + tags: elasticsearch + - role: collabora_code + tags: collabora_code diff --git a/play_odoo.yml b/play_odoo.yml index 55f1f858..fc953389 100644 --- a/play_odoo.yml +++ b/play_odoo.yml @@ -1,3 +1,4 @@ +--- - hosts: all become: true roles: diff --git a/play_proxy.yml b/play_proxy.yml index a2d5c210..7ed97e1d 100644 --- a/play_proxy.yml +++ b/play_proxy.yml @@ -1,33 +1,34 @@ +--- - hosts: all become: true roles: - - role: cadvisor - tags: cadvisor - - role: node_exporter - tags: node_exporter - - role: restic_server - tags: restic_server - - role: bigbluebutton_exporter - tags: bigbluebutton_exporter - - role: grafana - tags: grafana - - role: postgres_exporter - tags: postgres_exporter - - role: blackbox_exporter - tags: blackbox_exporter - - role: prometheus - tags: prometheus - - role: loki - tags: loki - - role: promtail - tags: promtail - - role: nginx - tags: nginx - - role: nginx_waf - tags: nginx_waf - - role: simple_mail_forwarder - tags: simple_mail_forwarder - - role: keycloak_client - tags: keycloak_client - - role: htpasswd - tags: htpasswd \ No newline at end of file + - role: cadvisor + tags: cadvisor + - role: node_exporter + tags: node_exporter + - role: restic_server + tags: restic_server + - role: bigbluebutton_exporter + tags: bigbluebutton_exporter + - role: grafana + tags: grafana + - role: postgres_exporter + tags: postgres_exporter + - role: blackbox_exporter + tags: blackbox_exporter + - role: prometheus + tags: prometheus + - role: loki + tags: loki + - role: promtail + tags: promtail + - role: nginx + tags: nginx + - role: nginx_waf + tags: nginx_waf + - role: simple_mail_forwarder + tags: simple_mail_forwarder + - role: keycloak_client + tags: keycloak_client + - role: htpasswd + tags: htpasswd diff --git a/play_setup.yml b/play_setup.yml index 799bf27c..47c3e8c3 100644 --- a/play_setup.yml +++ b/play_setup.yml @@ -1,115 +1,116 @@ +--- - hosts: all become: true roles: - - role: resolv - tags: resolv - - role: package - tags: package - - role: cargo - tags: cargo - - role: docker_swarm - tags: docker_swarm - - role: fstab - tags: fstab - - role: locale - tags: locale - - role: iam - tags: iam - - role: update - tags: - - update - - never - - role: maintenance - tags: maintenance - - role: ufw - tags: ufw - - role: fail2ban - tags: fail2ban - - role: restic_server - tags: restic_server - - role: restic_client - tags: restic_client - - role: s3cmd - tags: s3cmd - - role: docker_compose - tags: docker_compose - - role: innernet_server - tags: innernet_server - - role: innernet_client - tags: innernet_client - - role: systemd - tags: systemd - - role: rclone - tags: rclone - - role: cron - tags: cron - - role: docker_hosts - tags: docker_hosts - - role: jenkins - tags: jenkins - - role: dind - tags: dind - - role: debug - tags: debug - - role: postgres - tags: postgres - - role: mysql - tags: mysql - - role: bookstack - tags: bookstack - - role: nextcloud - tags: nextcloud - - role: matomo - tags: matomo - - role: fathom - tags: fathom - - role: keycloak - tags: keycloak - - role: wordpress - tags: wordpress - - role: pgadmin - tags: pgadmin - - role: moodle - tags: moodle - - role: vercel - tags: vercel - - role: synapse - tags: synapse - - role: birt - tags: birt - - role: gitea - tags: gitea - - role: remark42 - tags: remark42 - - role: mailhog - tags: mailhog - - role: dozzle - tags: dozzle - - role: superset - tags: superset - - role: simple_mail_forwarder - tags: simple_mail_forwarder - - role: postfix - tags: postfix - - role: dribdat - tags: dribdat - - role: keycloak - tags: keycloak - - role: pgadmin - tags: pgadmin - - role: bigbluebutton - tags: # FIXME Filtering by tag does not work - - ubuntu1804 - - ubuntu1604 - - greenlight - - letsencrypt - - role: coturn - tags: coturn - - role: git - tags: git - - role: docker_network - tags: docker_network - - role: docker_hosts - tags: docker_hosts - - role: php_fpm - tags: php_fpm \ No newline at end of file + - role: resolv + tags: resolv + - role: package + tags: package + - role: cargo + tags: cargo + - role: docker_swarm + tags: docker_swarm + - role: fstab + tags: fstab + - role: locale + tags: locale + - role: iam + tags: iam + - role: update + tags: + - update + - never + - role: maintenance + tags: maintenance + - role: ufw + tags: ufw + - role: fail2ban + tags: fail2ban + - role: restic_server + tags: restic_server + - role: restic_client + tags: restic_client + - role: s3cmd + tags: s3cmd + - role: docker_compose + tags: docker_compose + - role: innernet_server + tags: innernet_server + - role: innernet_client + tags: innernet_client + - role: systemd + tags: systemd + - role: rclone + tags: rclone + - role: cron + tags: cron + - role: docker_hosts + tags: docker_hosts + - role: jenkins + tags: jenkins + - role: dind + tags: dind + - role: debug + tags: debug + - role: postgres + tags: postgres + - role: mysql + tags: mysql + - role: bookstack + tags: bookstack + - role: nextcloud + tags: nextcloud + - role: matomo + tags: matomo + - role: fathom + tags: fathom + - role: keycloak + tags: keycloak + - role: wordpress + tags: wordpress + - role: pgadmin + tags: pgadmin + - role: moodle + tags: moodle + - role: vercel + tags: vercel + - role: synapse + tags: synapse + - role: birt + tags: birt + - role: gitea + tags: gitea + - role: remark42 + tags: remark42 + - role: mailhog + tags: mailhog + - role: dozzle + tags: dozzle + - role: superset + tags: superset + - role: simple_mail_forwarder + tags: simple_mail_forwarder + - role: postfix + tags: postfix + - role: dribdat + tags: dribdat + - role: keycloak + tags: keycloak + - role: pgadmin + tags: pgadmin + - role: bigbluebutton + tags: # FIXME Filtering by tag does not work + - ubuntu1804 + - ubuntu1604 + - greenlight + - letsencrypt + - role: coturn + tags: coturn + - role: git + tags: git + - role: docker_network + tags: docker_network + - role: docker_hosts + tags: docker_hosts + - role: php_fpm + tags: php_fpm diff --git a/roles/bigbluebutton/defaults/main.yml b/roles/bigbluebutton/defaults/main.yml index 7f22b932..df49b445 100644 --- a/roles/bigbluebutton/defaults/main.yml +++ b/roles/bigbluebutton/defaults/main.yml @@ -1,3 +1,4 @@ +--- greenlight_port: 127.0.0.1:5000 greenlight_description: Greenlight greenlight_safe_hosts: "{{ bigbluebutton_hostname }}" @@ -6,4 +7,4 @@ greenlight_db_port: "5432" greenlight_default_registration: open greenlight_allow_greenlight_accounts: "true" greenlight_room_features: mute-on-join,require-moderator-approval,anyone-can-start,all-join-moderator -greenlight_allow_mail_notifications: "true" \ No newline at end of file +greenlight_allow_mail_notifications: "true" diff --git a/roles/bigbluebutton/handlers/main.yml b/roles/bigbluebutton/handlers/main.yml index 8284c2a2..e6a2655e 100644 --- a/roles/bigbluebutton/handlers/main.yml +++ b/roles/bigbluebutton/handlers/main.yml @@ -1,14 +1,15 @@ +--- - name: Restart BigBlueButton services - command: bbb-conf --restart + ansible.builtin.command: bbb-conf --restart notify: Check BigBlueButton services - name: Check BigBlueButton services - command: bbb-conf --status | grep inactive + ansible.builtin.command: bbb-conf --status | grep inactive register: bigbluebutton_status failed_when: bigbluebutton_status.rc != 0 changed_when: false - name: Restart Nginx service - service: + ansible.builtin.service: name: nginx - state: restarted \ No newline at end of file + state: restarted diff --git a/roles/bigbluebutton/meta/main.yml b/roles/bigbluebutton/meta/main.yml index 9334cd27..80d1be24 100644 --- a/roles/bigbluebutton/meta/main.yml +++ b/roles/bigbluebutton/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: postgres tags: diff --git a/roles/bigbluebutton/tasks/bigbluebutton_coturn.yml b/roles/bigbluebutton/tasks/bigbluebutton_coturn.yml index e863216c..9f867428 100644 --- a/roles/bigbluebutton/tasks/bigbluebutton_coturn.yml +++ b/roles/bigbluebutton/tasks/bigbluebutton_coturn.yml @@ -1,7 +1,8 @@ +--- # https://github.com/bigbluebutton/bbb-install/blob/5575cd87afc2b24b48d0ad26f18d2c542003fffe/bbb-install.sh#L988 - name: Copy bigbluebutton turn stun servers conf - template: + ansible.builtin.template: src: turn-stun-servers.xml dest: /usr/share/bbb-web/WEB-INF/classes/spring/turn-stun-servers.xml - notify: Restart BigBlueButton services \ No newline at end of file + notify: Restart BigBlueButton services diff --git a/roles/bigbluebutton/tasks/bigbluebutton_greenlight.yml b/roles/bigbluebutton/tasks/bigbluebutton_greenlight.yml index 5a79dce2..bb7b0b4b 100644 --- a/roles/bigbluebutton/tasks/bigbluebutton_greenlight.yml +++ b/roles/bigbluebutton/tasks/bigbluebutton_greenlight.yml @@ -1,12 +1,13 @@ +--- # https://github.com/bigbluebutton/bbb-install/blob/5575cd87afc2b24b48d0ad26f18d2c542003fffe/bbb-install.sh#L717 - name: Get BigBlueButton API secret # noqa 306 - shell: "bbb-conf --secret | grep 'Secret: ' | sed 's/^ *Secret:\\s//g'" + ansible.builtin.shell: "bbb-conf --secret | grep 'Secret: ' | sed 's/^ *Secret:\\s//g'" register: bigbluebutton_api_secret changed_when: false -- name: "Start greenlight container {{ greenlight_hostname }}" - docker_container: +- name: Start greenlight container {{ greenlight_hostname }} + community.docker.docker_container: name: "{{ greenlight_hostname }}" labels: description: "{{ greenlight_description }}" @@ -47,18 +48,18 @@ register: start_greenlight_contaner - name: Copy greenlight nginx conf - copy: + ansible.builtin.copy: src: greenlight.nginx dest: /etc/bigbluebutton/nginx/greenlight.nginx notify: Restart BigBlueButton services - name: Wait for greenlight container # noqa 503 - pause: + ansible.builtin.pause: seconds: "5" when: start_greenlight_contaner.changed - name: Create greenlight admin user - command: docker exec "{{ greenlight_hostname }}" \ - bundle exec rake user:create["admin","{{ greenlight_admin_email }}","{{ greenlight_admin_password }}","admin"] + ansible.builtin.command: docker exec "{{ greenlight_hostname }}" \ bundle exec rake user:create["admin","{{ greenlight_admin_email }}","{{ greenlight_admin_password + }}","admin"] register: greenlight_admin changed_when: "'Account with that email already exists' not in greenlight_admin.stdout" diff --git a/roles/bigbluebutton/tasks/bigbluebutton_html5.yml b/roles/bigbluebutton/tasks/bigbluebutton_html5.yml index cc01f917..b5f79b44 100644 --- a/roles/bigbluebutton/tasks/bigbluebutton_html5.yml +++ b/roles/bigbluebutton/tasks/bigbluebutton_html5.yml @@ -1,22 +1,23 @@ +--- # https://github.com/bigbluebutton/bbb-install/blob/5575cd87afc2b24b48d0ad26f18d2c542003fffe/bbb-install.sh#L699 - name: Make the HTML5 client default for attendees join - replace: - path: "/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties" - regexp: 'attendeesJoinViaHTML5Client=false' - replace: 'attendeesJoinViaHTML5Client=true' + ansible.builtin.replace: + path: /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties + regexp: attendeesJoinViaHTML5Client=false + replace: attendeesJoinViaHTML5Client=true backup: true - name: Make the HTML5 client default for moderators join - replace: - path: "/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties" - regexp: 'moderatorsJoinViaHTML5Client=false' - replace: 'moderatorsJoinViaHTML5Client=true' + ansible.builtin.replace: + path: /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties + regexp: moderatorsJoinViaHTML5Client=false + replace: moderatorsJoinViaHTML5Client=true backup: true - name: Disable swf slides - replace: - path: "/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties" - regexp: 'swfSlidesRequired=true' - replace: 'swfSlidesRequired=false' - backup: true \ No newline at end of file + ansible.builtin.replace: + path: /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties + regexp: swfSlidesRequired=true + replace: swfSlidesRequired=false + backup: true diff --git a/roles/bigbluebutton/tasks/bigbluebutton_https.yml b/roles/bigbluebutton/tasks/bigbluebutton_https.yml index 191b9731..f2e62ff1 100644 --- a/roles/bigbluebutton/tasks/bigbluebutton_https.yml +++ b/roles/bigbluebutton/tasks/bigbluebutton_https.yml @@ -1,35 +1,36 @@ +--- # https://github.com/bigbluebutton/bbb-install/blob/5575cd87afc2b24b48d0ad26f18d2c542003fffe/bbb-install.sh#L875 - name: Copy bigbluebutton nginx conf - template: + ansible.builtin.template: src: bigbluebutton.nginx dest: /etc/nginx/sites-available/bigbluebutton notify: Restart Nginx service - name: Update http for https on BigBlueButton webapp - replace: - path: "/usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties" - regexp: 'bigbluebutton.web.serverURL=http:' - replace: 'bigbluebutton.web.serverURL=https:' + ansible.builtin.replace: + path: /usr/share/bbb-web/WEB-INF/classes/bigbluebutton.properties + regexp: "bigbluebutton.web.serverURL=http:" + replace: "bigbluebutton.web.serverURL=https:" notify: Restart BigBlueButton services - name: Update ws for wss on kurento media server - replace: + ansible.builtin.replace: path: /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml - regexp: 'ws://' - replace: 'wss://' + regexp: ws:// + replace: wss:// notify: Restart BigBlueButton services - name: Update http for https on kurento media server - replace: + ansible.builtin.replace: path: /usr/share/meteor/bundle/programs/server/assets/app/config/settings.yml - regexp: 'http://' - replace: 'https://' + regexp: http:// + replace: https:// notify: Restart BigBlueButton services - name: Update http for https on BigBlueButton client config - replace: + ansible.builtin.replace: path: /usr/local/bigbluebutton/core/scripts/bigbluebutton.yml - regexp: 'playback_protocol: http$' - replace: 'playback_protocol: https' + regexp: "playback_protocol: http$" + replace: "playback_protocol: https" notify: Restart BigBlueButton services diff --git a/roles/bigbluebutton/tasks/bigbluebutton_letsencrypt.yml b/roles/bigbluebutton/tasks/bigbluebutton_letsencrypt.yml index 85ed890f..9e995004 100644 --- a/roles/bigbluebutton/tasks/bigbluebutton_letsencrypt.yml +++ b/roles/bigbluebutton/tasks/bigbluebutton_letsencrypt.yml @@ -1,34 +1,36 @@ +--- # https://github.com/bigbluebutton/bbb-install/blob/5575cd87afc2b24b48d0ad26f18d2c542003fffe/bbb-install.sh#L817 - name: Create nginx SSL certificates directory - file: + ansible.builtin.file: state: directory path: /etc/nginx/ssl owner: root group: root - name: Create dhparam SSL file - command: openssl dhparam -dsaparam -out /etc/nginx/ssl/dhp-4096.pem 4096 + ansible.builtin.command: openssl dhparam -dsaparam -out /etc/nginx/ssl/dhp-4096.pem 4096 args: creates: /etc/nginx/ssl/dhp-4096.pem - name: Create letsencrypt certificates with certbot - command: "certbot --webroot --email {{ bigbluebutton_certbot_email }} --agree-tos -w /var/www/bigbluebutton-default/ -d {{ bigbluebutton_hostname }} certonly" + ansible.builtin.command: certbot --webroot --email {{ bigbluebutton_certbot_email }} --agree-tos -w /var/www/bigbluebutton-default/ -d {{ bigbluebutton_hostname + }} certonly args: - creates: "/etc/letsencrypt/live/{{ bigbluebutton_hostname }}/fullchain.pem" + creates: /etc/letsencrypt/live/{{ bigbluebutton_hostname }}/fullchain.pem - name: Cron job to renew letsencrypt certficiates - cron: - name: "Renew letsencrypt certificates" + ansible.builtin.cron: + name: Renew letsencrypt certificates minute: "30" hour: "2" weekday: "1" - job: 'certbot renew --standalone --pre-hook "service nginx stop" --post-hook "service nginx start" >> /var/log/le-renew.log' + job: certbot renew --standalone --pre-hook "service nginx stop" --post-hook "service nginx start" >> /var/log/le-renew.log - name: Cron job to restart nginx - cron: - name: "Restart nginx" + ansible.builtin.cron: + name: Restart nginx minute: "35" hour: "2" weekday: "1" - job: "/bin/systemctl reload nginx" + job: /bin/systemctl reload nginx diff --git a/roles/bigbluebutton/tasks/bigbluebutton_ubuntu1804.yml b/roles/bigbluebutton/tasks/bigbluebutton_ubuntu1804.yml index ccc17c55..d9ee7ed4 100644 --- a/roles/bigbluebutton/tasks/bigbluebutton_ubuntu1804.yml +++ b/roles/bigbluebutton/tasks/bigbluebutton_ubuntu1804.yml @@ -1,86 +1,86 @@ - +--- # https://docs.bigbluebutton.org/2.3/install.html#install - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto - name: Run inital installation with script as root - fail: - msg: "wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | - bash -s -- -v bionic-230 -s {{ bigbluebutton_hostname }} -e {{ bigbluebutton_certbot_email }} -a -w" + ansible.builtin.fail: + msg: wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v bionic-230 -s {{ bigbluebutton_hostname }} -e {{ bigbluebutton_certbot_email }} -a + -w when: "'bigbluebutton' not in ansible_facts.packages" # https://github.com/bigbluebutton/bbb-install/blob/5575cd87afc2b24b48d0ad26f18d2c542003fffe/bbb-install.sh#L267 - name: Update locale (ensure LANG=en_US.UTF-8) - lineinfile: + ansible.builtin.lineinfile: dest: /etc/default/locale regexp: ^LANG - line: 'LANG=en_US.UTF-8' + line: LANG=en_US.UTF-8 - name: Check multiverse apt repositories are present - apt_repository: + ansible.builtin.apt_repository: repo: "{{ item }}" state: present loop: - - "deb http://archive.ubuntu.com/ubuntu bionic multiverse" - - "deb http://archive.ubuntu.com/ubuntu bionic-security multiverse" - - "deb http://archive.ubuntu.com/ubuntu bionic-updates multiverse" - - "deb http://archive.ubuntu.com/ubuntu bionic universe" - - "deb http://archive.ubuntu.com/ubuntu bionic-security universe" - - "deb http://archive.ubuntu.com/ubuntu bionic-updates universe" + - deb http://archive.ubuntu.com/ubuntu bionic multiverse + - deb http://archive.ubuntu.com/ubuntu bionic-security multiverse + - deb http://archive.ubuntu.com/ubuntu bionic-updates multiverse + - deb http://archive.ubuntu.com/ubuntu bionic universe + - deb http://archive.ubuntu.com/ubuntu bionic-security universe + - deb http://archive.ubuntu.com/ubuntu bionic-updates universe - name: Check supplemental PPA repos are present - apt_repository: + ansible.builtin.apt_repository: repo: "{{ item }}" state: present loop: - - 'ppa:bigbluebutton/support' - - 'ppa:rmescandon/yq' - - 'ppa:libreoffice/ppa' + - ppa:bigbluebutton/support + - ppa:rmescandon/yq + - ppa:libreoffice/ppa - name: Add Nodesource apt key - apt_key: + ansible.builtin.apt_key: url: https://keyserver.ubuntu.com/pks/lookup?op=get&fingerprint=on&search=0x1655A0AB68576280 id: "68576280" state: present - name: Check Nodesource repo is present - apt_repository: - repo: "deb https://deb.nodesource.com/node_12.x {{ ansible_distribution_release }} main" + ansible.builtin.apt_repository: + repo: deb https://deb.nodesource.com/node_12.x {{ ansible_distribution_release }} main state: present - name: Add MongoDB apt key - apt_key: - url: "https://www.mongodb.org/static/pgp/server-4.2.asc" + ansible.builtin.apt_key: + url: https://www.mongodb.org/static/pgp/server-4.2.asc state: present - name: Check MongoDB repo is present - apt_repository: - repo: "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" + ansible.builtin.apt_repository: + repo: deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse state: present - name: Add BigBlueButton apt key - apt_key: + ansible.builtin.apt_key: url: https://ubuntu.bigbluebutton.org/repo/bigbluebutton.asc state: present - name: Check BigBlueButton repo is present - apt_repository: - repo: "deb {{ bigbluebutton_apt_repo_url }} bigbluebutton-bionic main" + ansible.builtin.apt_repository: + repo: deb {{ bigbluebutton_apt_repo_url }} bigbluebutton-bionic main state: present register: bigbluebutton_repo_is_present - name: Update apt-get repo and cache # noqa 503 - apt: + ansible.builtin.apt: update_cache: true force_apt_get: true cache_valid_time: 3600 when: bigbluebutton_repo_is_present.changed - name: Install dependencies - apt: + ansible.builtin.apt: name: - nodejs - mongodb-org @@ -93,24 +93,24 @@ state: present - name: Install bigbluebutton - apt: + ansible.builtin.apt: name: - bigbluebutton state: present - name: Install bbb-html5 - apt: + ansible.builtin.apt: name: - bbb-html5 state: present - name: Get BigBlueButton API url # noqa 306 - shell: "bbb-conf --secret | grep {{ bigbluebutton_hostname }}" + ansible.builtin.shell: bbb-conf --secret | grep {{ bigbluebutton_hostname }} register: bigbluebutton_api_status ignore_errors: true changed_when: false - name: Set BigBlueButton server name - command: bbb-conf --setip "{{ bigbluebutton_hostname }}" + ansible.builtin.command: bbb-conf --setip "{{ bigbluebutton_hostname }}" when: bigbluebutton_api_status.rc != 0 notify: Restart BigBlueButton services diff --git a/roles/bigbluebutton/tasks/main.yml b/roles/bigbluebutton/tasks/main.yml index f491950e..9d57cc9e 100644 --- a/roles/bigbluebutton/tasks/main.yml +++ b/roles/bigbluebutton/tasks/main.yml @@ -1,40 +1,35 @@ +--- - name: Show applied tags - debug: + ansible.builtin.debug: var: ansible_run_tags tags: - always - name: Check OS and Version - fail: + ansible.builtin.fail: msg: This is not Ubuntu 1804 when: ansible_distribution != "Ubuntu" and ansible_distribution_major_version != '18.04' -- name: "Include {{ role_name }} ubuntu1804 tasks" - include: "{{ role_name }}_ubuntu1804.yml" - when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined - and ('"all" in ansible_run_tags' or '"ubuntu1804" in ansible_run_tags') +- name: Include {{ role_name }} ubuntu1804 tasks + ansible.builtin._include: "{{ role_name }}_ubuntu1804.yml" + when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined and ('"all" in ansible_run_tags' or '"ubuntu1804" in ansible_run_tags') -- name: "Include {{ role_name }} html5 tasks" - include: "{{ role_name }}_html5.yml" - when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined - and ('"all" in ansible_run_tags' or '"html5" in ansible_run_tags') +- name: Include {{ role_name }} html5 tasks + ansible.builtin._include: "{{ role_name }}_html5.yml" + when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined and ('"all" in ansible_run_tags' or '"html5" in ansible_run_tags') -- name: "Include {{ role_name }} letsencrypt tasks" - include: "{{ role_name }}_letsencrypt.yml" - when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined - and ('"all" in ansible_run_tags' or '"letsencrypt" in ansible_run_tags') +- name: Include {{ role_name }} letsencrypt tasks + ansible.builtin._include: "{{ role_name }}_letsencrypt.yml" + when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined and ('"all" in ansible_run_tags' or '"letsencrypt" in ansible_run_tags') -- name: "Include {{ role_name }} https tasks" - include: "{{ role_name }}_https.yml" - when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined - and ('"all" in ansible_run_tags' or '"https" in ansible_run_tags') +- name: Include {{ role_name }} https tasks + ansible.builtin._include: "{{ role_name }}_https.yml" + when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined and ('"all" in ansible_run_tags' or '"https" in ansible_run_tags') -- name: "Include {{ role_name }} greenlight tasks" - include: "{{ role_name }}_greenlight.yml" - when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined - and ('"all" in ansible_run_tags' or '"greenlight" in ansible_run_tags') +- name: Include {{ role_name }} greenlight tasks + ansible.builtin._include: "{{ role_name }}_greenlight.yml" + when: ansible_distribution == "Ubuntu" and bigbluebutton_apt_repo_url is defined and ('"all" in ansible_run_tags' or '"greenlight" in ansible_run_tags') -- name: "Include {{ role_name }} coturn tasks" - include: "{{ role_name }}_coturn.yml" - when: ansible_distribution == "Ubuntu" and bigbluebutton_coturn_domain is defined - and ('"all" in ansible_run_tags' or '"coturn" in ansible_run_tags') +- name: Include {{ role_name }} coturn tasks + ansible.builtin._include: "{{ role_name }}_coturn.yml" + when: ansible_distribution == "Ubuntu" and bigbluebutton_coturn_domain is defined and ('"all" in ansible_run_tags' or '"coturn" in ansible_run_tags') diff --git a/roles/bigbluebutton_exporter/defaults/main.yml b/roles/bigbluebutton_exporter/defaults/main.yml index f1584efd..af000c8c 100644 --- a/roles/bigbluebutton_exporter/defaults/main.yml +++ b/roles/bigbluebutton_exporter/defaults/main.yml @@ -1,4 +1,5 @@ +--- bigbluebutton_exporter_requires_package: python3-passlib bigbluebutton_exporter_description: BigBlueButton exporter bigbluebutton_exporter_proxy_basic_auth_username: bigbluebutton-exporter -bigbluebutton_exporter_nginx_data_dir: "{{ nginx_data_dir }}/proxies" \ No newline at end of file +bigbluebutton_exporter_nginx_data_dir: "{{ nginx_data_dir }}/proxies" diff --git a/roles/bigbluebutton_exporter/meta/main.yml b/roles/bigbluebutton_exporter/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/bigbluebutton_exporter/meta/main.yml +++ b/roles/bigbluebutton_exporter/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter.yml b/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter.yml index 38362f35..86e876eb 100644 --- a/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter.yml +++ b/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter.yml @@ -1,15 +1,16 @@ +--- - name: Get BigBlueButton API secret # noqa 306 - shell: "bbb-conf --secret | grep 'Secret: ' | sed 's/^ *Secret:\\s//g'" + ansible.builtin.shell: "bbb-conf --secret | grep 'Secret: ' | sed 's/^ *Secret:\\s//g'" register: bigbluebutton_api_secret changed_when: false - name: Get BigBlueButton API url # noqa 306 - shell: "bbb-conf --secret | grep 'URL: ' | sed 's/^ *URL:\\s//g'" + ansible.builtin.shell: "bbb-conf --secret | grep 'URL: ' | sed 's/^ *URL:\\s//g'" register: bigbluebutton_api_url changed_when: false -- name: "Start {{ role_name }} container {{ bigbluebutton_exporter_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ bigbluebutton_exporter_hostname }} + community.docker.docker_container: name: "{{ bigbluebutton_exporter_hostname }}" labels: description: "{{ bigbluebutton_exporter_description }}" @@ -21,11 +22,11 @@ API_SECRET: "{{ bigbluebutton_api_secret.stdout }}" RECORDINGS_METRICS_READ_FROM_DISK: "true" volumes: - - "/var/bigbluebutton:/var/bigbluebutton:ro" + - /var/bigbluebutton:/var/bigbluebutton:ro networks: - name: "{{ docker_network_name }}" log_driver: "{{ docker_log_driver }}" log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ bigbluebutton_exporter_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ bigbluebutton_exporter_hostname }}|{{ role_name }}" diff --git a/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter_nginx_config.yml b/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter_nginx_config.yml index a84e1db4..caa913db 100644 --- a/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter_nginx_config.yml +++ b/roles/bigbluebutton_exporter/tasks/bigbluebutton_exporter_nginx_config.yml @@ -1,24 +1,25 @@ +--- - name: Ensure nginx data dir exists - file: + ansible.builtin.file: path: "{{ bigbluebutton_exporter_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ bigbluebutton_exporter_requires_package }} is not installed" - fail: - msg: "Package {{ bigbluebutton_exporter_requires_package }} is not installed!" +- name: Fail if package {{ bigbluebutton_exporter_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ bigbluebutton_exporter_requires_package }} is not installed! when: bigbluebutton_exporter_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ bigbluebutton_exporter_nginx_data_dir }}/bigbluebutton-exporter.htpasswd" name: "{{ bigbluebutton_exporter_proxy_basic_auth_username }}" password: "{{ bigbluebutton_exporter_proxy_basic_auth_password }}" -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: bigbluebutton-exporter.nginx - dest: "{{ bigbluebutton_exporter_nginx_data_dir }}/bigbluebutton-exporter.nginx" \ No newline at end of file + dest: "{{ bigbluebutton_exporter_nginx_data_dir }}/bigbluebutton-exporter.nginx" diff --git a/roles/bigbluebutton_exporter/tasks/main.yml b/roles/bigbluebutton_exporter/tasks/main.yml index 7badca58..d83f0082 100644 --- a/roles/bigbluebutton_exporter/tasks/main.yml +++ b/roles/bigbluebutton_exporter/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: bigbluebutton_exporter_image is defined tags: - bigbluebutton_exporter -- name: "Include {{ role_name }} nginx config tasks" - include_tasks: "{{ role_name }}_nginx_config.yml" +- name: Include {{ role_name }} nginx config tasks + ansible.builtin.include_tasks: "{{ role_name }}_nginx_config.yml" when: bigbluebutton_exporter_image is defined tags: - bigbluebutton_exporter - - bigbluebutton_exporter_nginx_config \ No newline at end of file + - bigbluebutton_exporter_nginx_config diff --git a/roles/birt/defaults/main.yml b/roles/birt/defaults/main.yml index b7483d3c..a7e18251 100644 --- a/roles/birt/defaults/main.yml +++ b/roles/birt/defaults/main.yml @@ -1,2 +1,3 @@ +--- birt_description: BIRT -birt_data_dir: "/usr/share/{{ birt_hostname }}" \ No newline at end of file +birt_data_dir: /usr/share/{{ birt_hostname }} diff --git a/roles/birt/handlers/main.yml b/roles/birt/handlers/main.yml index 76314e9e..52f8e84b 100644 --- a/roles/birt/handlers/main.yml +++ b/roles/birt/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ birt_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: birt:custom build: path: "{{ docker_build_dir }}/{{ birt_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/birt/tasks/birt.yml b/roles/birt/tasks/birt.yml index 51a0b04c..d2f27ca3 100644 --- a/roles/birt/tasks/birt.yml +++ b/roles/birt/tasks/birt.yml @@ -1,15 +1,16 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ birt_data_dir }}" state: directory -- name: "Ensure {{ role_name }} build dir exists" - file: +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ birt_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ birt_hostname }}/{{ item }}" mode: +x @@ -20,19 +21,18 @@ - run_jetty - test.rptdesign - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Run get dependencies script - script: "get_dependencies" + ansible.builtin.script: get_dependencies args: chdir: "{{ docker_build_dir }}/{{ birt_hostname }}" creates: "{{ docker_build_dir }}/{{ birt_hostname }}/birt-runtime-4.5.0.war" - name: Flush handlers - meta: flush_handlers - -- name: "Start {{ role_name }} container {{ birt_hostname }}" - docker_container: + ansible.builtin.meta: flush_handlers +- name: Start {{ role_name }} container {{ birt_hostname }} + community.docker.docker_container: name: "{{ birt_hostname }}" labels: description: "{{ birt_description }}" @@ -47,4 +47,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ birt_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ birt_hostname }}|{{ role_name }}" diff --git a/roles/birt/tasks/main.yml b/roles/birt/tasks/main.yml index 0842a589..d5b9cb66 100644 --- a/roles/birt/tasks/main.yml +++ b/roles/birt/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: birt_image is defined tags: - - birt \ No newline at end of file + - birt diff --git a/roles/blackbox_exporter/defaults/main.yml b/roles/blackbox_exporter/defaults/main.yml index d0732312..e24486aa 100644 --- a/roles/blackbox_exporter/defaults/main.yml +++ b/roles/blackbox_exporter/defaults/main.yml @@ -1,2 +1,3 @@ +--- blackbox_exporter_description: Blackbox exporter -blackbox_exporter_data_dir: "/usr/share/{{ blackbox_exporter_hostname }}" \ No newline at end of file +blackbox_exporter_data_dir: /usr/share/{{ blackbox_exporter_hostname }} diff --git a/roles/blackbox_exporter/files/config.yml b/roles/blackbox_exporter/files/config.yml index 2956198c..0e90e4e1 100644 --- a/roles/blackbox_exporter/files/config.yml +++ b/roles/blackbox_exporter/files/config.yml @@ -1,3 +1,4 @@ +--- modules: http_2xx: prober: http @@ -11,7 +12,7 @@ modules: prober: tcp tcp: query_response: - - expect: "^+OK" + - expect: ^+OK tls: true tls_config: insecure_skip_verify: false @@ -19,20 +20,20 @@ modules: prober: tcp tcp: query_response: - - expect: "^SSH-2.0-" - - send: "SSH-2.0-blackbox-ssh-check" + - expect: ^SSH-2.0- + - send: SSH-2.0-blackbox-ssh-check irc_banner: prober: tcp tcp: query_response: - - send: "NICK prober" - - send: "USER prober prober prober :prober" - - expect: "PING :([^ ]+)" - send: "PONG ${1}" - - expect: "^:[^ ]+ 001" + - send: NICK prober + - send: USER prober prober prober :prober + - expect: PING :([^ ]+) + send: PONG ${1} + - expect: ^:[^ ]+ 001 icmp: prober: icmp http_401_unauth: prober: http http: - valid_status_codes: [403,401,200] \ No newline at end of file + valid_status_codes: [403, 401, 200] diff --git a/roles/blackbox_exporter/meta/main.yml b/roles/blackbox_exporter/meta/main.yml index 5750ccfd..cb2f3f53 100644 --- a/roles/blackbox_exporter/meta/main.yml +++ b/roles/blackbox_exporter/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: prometheus tags: - prometheus - - depends \ No newline at end of file + - depends diff --git a/roles/blackbox_exporter/tasks/blackbox_exporter.yml b/roles/blackbox_exporter/tasks/blackbox_exporter.yml index 0548c143..192c798f 100644 --- a/roles/blackbox_exporter/tasks/blackbox_exporter.yml +++ b/roles/blackbox_exporter/tasks/blackbox_exporter.yml @@ -1,17 +1,18 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ blackbox_exporter_data_dir }}" state: directory - name: Copy {{ role_name }} conf files - copy: + ansible.builtin.copy: src: "{{ item }}" dest: "{{ blackbox_exporter_data_dir }}/" loop: - files/config.yml -- name: "Start {{ role_name }} container {{ blackbox_exporter_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ blackbox_exporter_hostname }} + community.docker.docker_container: name: "{{ blackbox_exporter_hostname }}" labels: description: "{{ blackbox_exporter_description }}" @@ -26,4 +27,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ blackbox_exporter_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ blackbox_exporter_hostname }}|{{ role_name }}" diff --git a/roles/blackbox_exporter/tasks/main.yml b/roles/blackbox_exporter/tasks/main.yml index 683bfbe6..ff790082 100644 --- a/roles/blackbox_exporter/tasks/main.yml +++ b/roles/blackbox_exporter/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: blackbox_exporter_image is defined tags: - - blackbox_exporter \ No newline at end of file + - blackbox_exporter diff --git a/roles/bookstack/defaults/main.yml b/roles/bookstack/defaults/main.yml index 039e38ba..c35c2e4a 100644 --- a/roles/bookstack/defaults/main.yml +++ b/roles/bookstack/defaults/main.yml @@ -1,2 +1,3 @@ +--- bookstack_description: BookStack -bookstack_data_dir: "/usr/share/{{ bookstack_hostname }}" \ No newline at end of file +bookstack_data_dir: /usr/share/{{ bookstack_hostname }} diff --git a/roles/bookstack/meta/main.yml b/roles/bookstack/meta/main.yml index 4c38bd83..e51b9404 100644 --- a/roles/bookstack/meta/main.yml +++ b/roles/bookstack/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: mysql tags: - mysql - - depends \ No newline at end of file + - depends diff --git a/roles/bookstack/tasks/bookstack.yml b/roles/bookstack/tasks/bookstack.yml index 4aa19ab8..3d110d78 100644 --- a/roles/bookstack/tasks/bookstack.yml +++ b/roles/bookstack/tasks/bookstack.yml @@ -1,10 +1,11 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ bookstack_data_dir }}" state: directory -- name: "Start {{ role_name }} container {{ bookstack_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ bookstack_hostname }} + community.docker.docker_container: name: "{{ bookstack_hostname }}" labels: description: "{{ bookstack_description }}" @@ -32,4 +33,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ bookstack_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ bookstack_hostname }}|{{ role_name }}" diff --git a/roles/bookstack/tasks/main.yml b/roles/bookstack/tasks/main.yml index d661130d..e786dffe 100644 --- a/roles/bookstack/tasks/main.yml +++ b/roles/bookstack/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: bookstack_image is defined tags: - - bookstack \ No newline at end of file + - bookstack diff --git a/roles/cadvisor/defaults/main.yml b/roles/cadvisor/defaults/main.yml index 1eca5954..4933ad58 100644 --- a/roles/cadvisor/defaults/main.yml +++ b/roles/cadvisor/defaults/main.yml @@ -1,4 +1,5 @@ +--- cadvisor_requires_package: python3-passlib -cadvisor_description: "cAdvisor {{ inventory_hostname_short }}" +cadvisor_description: cAdvisor {{ inventory_hostname_short }} cadvisor_proxy_basic_auth_username: cadvisor cadvisor_nginx_data_dir: "{{ nginx_data_dir }}/proxies" diff --git a/roles/cadvisor/meta/main.yml b/roles/cadvisor/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/cadvisor/meta/main.yml +++ b/roles/cadvisor/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/cadvisor/tasks/cadvisor.yml b/roles/cadvisor/tasks/cadvisor.yml index 28f23588..4adbb3ab 100644 --- a/roles/cadvisor/tasks/cadvisor.yml +++ b/roles/cadvisor/tasks/cadvisor.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ cadvisor_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ cadvisor_hostname }} + community.docker.docker_container: name: "{{ cadvisor_hostname }}" labels: description: "{{ cadvisor_description }}" @@ -15,11 +16,11 @@ - /dev/disk/:/dev/disk:ro devices: - /dev/kmsg:/dev/kmsg - command: "--housekeeping_interval=30s --docker_only=true" + command: --housekeeping_interval=30s --docker_only=true networks: - name: "{{ docker_network_name }}" log_driver: "{{ docker_log_driver }}" log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ cadvisor_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ cadvisor_hostname }}|{{ role_name }}" diff --git a/roles/cadvisor/tasks/cadvisor_nginx_config.yml b/roles/cadvisor/tasks/cadvisor_nginx_config.yml index 71bf3972..f652aa49 100644 --- a/roles/cadvisor/tasks/cadvisor_nginx_config.yml +++ b/roles/cadvisor/tasks/cadvisor_nginx_config.yml @@ -1,24 +1,25 @@ +--- - name: Ensure nginx data dir exists - file: + ansible.builtin.file: path: "{{ cadvisor_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ cadvisor_requires_package }} is not installed" - fail: - msg: "Package {{ cadvisor_requires_package }} is not installed!" +- name: Fail if package {{ cadvisor_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ cadvisor_requires_package }} is not installed! when: cadvisor_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ cadvisor_nginx_data_dir }}/cadvisor.htpasswd" name: "{{ cadvisor_proxy_basic_auth_username }}" password: "{{ cadvisor_proxy_basic_auth_password }}" -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: cadvisor.nginx - dest: "{{ cadvisor_nginx_data_dir }}/cadvisor.nginx" \ No newline at end of file + dest: "{{ cadvisor_nginx_data_dir }}/cadvisor.nginx" diff --git a/roles/cadvisor/tasks/main.yml b/roles/cadvisor/tasks/main.yml index da68c3bb..d74db8b0 100644 --- a/roles/cadvisor/tasks/main.yml +++ b/roles/cadvisor/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: cadvisor_image is defined tags: - cadvisor -- name: "Include {{ role_name }} nginx config tasks" - include_tasks: "{{ role_name }}_nginx_config.yml" +- name: Include {{ role_name }} nginx config tasks + ansible.builtin.include_tasks: "{{ role_name }}_nginx_config.yml" when: cadvisor_image is defined tags: - cadvisor - - cadvisor_nginx_config \ No newline at end of file + - cadvisor_nginx_config diff --git a/roles/cargo/defaults/main.yml b/roles/cargo/defaults/main.yml index 9a6e9190..ac217fd6 100644 --- a/roles/cargo/defaults/main.yml +++ b/roles/cargo/defaults/main.yml @@ -1 +1,2 @@ -cargo_enabled: false \ No newline at end of file +--- +cargo_enabled: false diff --git a/roles/cargo/tasks/cargo.yml b/roles/cargo/tasks/cargo.yml index 64171f28..64400f3d 100644 --- a/roles/cargo/tasks/cargo.yml +++ b/roles/cargo/tasks/cargo.yml @@ -1,24 +1,25 @@ +--- - name: Download installer rustup - get_url: + ansible.builtin.get_url: url: https://static.rust-lang.org/rustup.sh - dest: "~/rustup.sh" + dest: ~/rustup.sh mode: "0750" - name: Run installer rustup - command: + ansible.builtin.command: cmd: ./rustup.sh -y chdir: "~" - creates: "/usr/local/bin/cargo" + creates: /usr/local/bin/cargo environment: - CARGO_HOME: "/usr/local" + CARGO_HOME: /usr/local - name: Register installed cargo crates - command: "cargo install --list" + ansible.builtin.command: cargo install --list register: installed_cargo_crates changed_when: false - name: Install cargo packages - command: - cmd: "cargo install --git {{ item.git }} --tag {{ item.tag }} {{ item.name }}" + ansible.builtin.command: + cmd: cargo install --git {{ item.git }} --tag {{ item.tag }} {{ item.name }} when: item.name not in installed_cargo_crates.stdout loop: "{{ cargo_packages }}" diff --git a/roles/cargo/tasks/main.yml b/roles/cargo/tasks/main.yml index d85a8c5e..ac985555 100644 --- a/roles/cargo/tasks/main.yml +++ b/roles/cargo/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: cargo_enabled tags: - - cargo \ No newline at end of file + - cargo diff --git a/roles/certbot/defaults/main.yml b/roles/certbot/defaults/main.yml index f751e045..9e379d4c 100644 --- a/roles/certbot/defaults/main.yml +++ b/roles/certbot/defaults/main.yml @@ -1,4 +1,5 @@ +--- certbot_build_image: false certbot_preferred_challenges: http -certbot_data_dir: "/usr/share/{{ certbot_hostname }}" -nginx_data_dir: "/usr/share/{{ nginx_hostname }}" +certbot_data_dir: /usr/share/{{ certbot_hostname }} +nginx_data_dir: /usr/share/{{ nginx_hostname }} diff --git a/roles/certbot/handlers/main.yml b/roles/certbot/handlers/main.yml index 7cb8a572..4b08d44f 100644 --- a/roles/certbot/handlers/main.yml +++ b/roles/certbot/handlers/main.yml @@ -1,5 +1,6 @@ -- name: "Build {{ role_name }} custom image" - docker_image: +--- +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ certbot_image }}" build: path: "{{ docker_build_dir }}/{{ certbot_hostname }}" @@ -7,4 +8,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/certbot/meta/main.yml b/roles/certbot/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/certbot/meta/main.yml +++ b/roles/certbot/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/certbot/tasks/certbot.yml b/roles/certbot/tasks/certbot.yml index 44d12b0e..2c9d8b3a 100644 --- a/roles/certbot/tasks/certbot.yml +++ b/roles/certbot/tasks/certbot.yml @@ -1,50 +1,51 @@ -- name: "Ensure nginx data dir exists" - file: +--- +- name: Ensure nginx data dir exists + ansible.builtin.file: path: "{{ nginx_data_dir }}/proxies" state: directory -- name: "Copy {{ role_name }} templated scripts" - template: +- name: Copy {{ role_name }} templated scripts + ansible.builtin.template: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-certbot-renew - docker-certbot-list -- name: "Copy {{ role_name }} scripts" - copy: +- name: Copy {{ role_name }} scripts + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-certbot-delete - docker-certbot-create -- name: "Get list of nginx certs" - stat: +- name: Get list of nginx certs + ansible.builtin.stat: path: "{{ certbot_data_dir }}/live/{{ item.src_hostname | replace('*.', '') }}" loop: "{{ nginx_proxies }}" register: certbot_certs when: item.ssl is defined and item.ssl -- name: "Create list of missing certs" - set_fact: +- name: Create list of missing certs + ansible.builtin.set_fact: certbot_missing_certs: "{{ certbot_certs | json_query('results[*] | [?stat.exists==`false`].item.src_hostname') | list }}" when: nginx_proxies is defined -- name: "Log missing certificates" - debug: +- name: Log missing certificates + ansible.builtin.debug: var: certbot_missing_certs -- name: "Copy nginx default conf" - copy: +- name: Copy nginx default conf + ansible.builtin.copy: src: default.conf dest: "{{ nginx_data_dir }}/default.conf" force: false -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: nginx-certbot.conf dest: "{{ nginx_data_dir }}/proxies/{{ item }}.conf" vars: @@ -52,20 +53,20 @@ loop: "{{ certbot_missing_certs }}" when: certbot_missing_certs is defined -- name: "Get infos on container {{ nginx_hostname }}" - docker_container_info: +- name: Get infos on container {{ nginx_hostname }} + community.docker.docker_container_info: name: "{{ nginx_hostname }}" register: nginx_container -- name: "Restart container {{ nginx_hostname }}" - docker_container: +- name: Restart container {{ nginx_hostname }} + community.docker.docker_container: name: "{{ nginx_hostname }}" restart: true state: started when: nginx_container.exists and certbot_missing_certs -- name: "Start proxy container {{ nginx_hostname }}" - docker_container: +- name: Start proxy container {{ nginx_hostname }} + community.docker.docker_container: name: "{{ nginx_hostname }}" labels: description: "{{ nginx_description }}" @@ -86,13 +87,13 @@ tag: "{{ nginx_hostname }}|{{ role_name }}" when: not nginx_container.exists and certbot_missing_certs is defined -- name: "Wait for proxy container" - pause: +- name: Wait for proxy container + ansible.builtin.pause: seconds: "2" when: certbot_missing_certs is defined -- name: "Issue certificate with {{ role_name }}" - command: >- +- name: Issue certificate with {{ role_name }} + ansible.builtin.command: >- docker run --rm --name {{ item }} -v {{ certbot_data_dir }}/:/etc/letsencrypt/ -v {{ certbot_data_dir }}/www/:/var/www/certbot/ {{ certbot_image }} @@ -103,8 +104,8 @@ failed_when: result.stdout is search('Some challenges have failed.') or result.failed changed_when: result.stdout is search('Congratulations!') or not result.failed -- name: "Issue certificate with dns-freends authenticator" - command: >- +- name: Issue certificate with dns-freends authenticator + ansible.builtin.command: >- docker run --rm --name {{ item }} -v {{ certbot_data_dir }}/:/etc/letsencrypt/ -v {{ certbot_data_dir }}/www/:/var/www/certbot/ {{ certbot_image }} certonly diff --git a/roles/certbot/tasks/certbot_build.yml b/roles/certbot/tasks/certbot_build.yml index fc347695..02ed907d 100644 --- a/roles/certbot/tasks/certbot_build.yml +++ b/roles/certbot/tasks/certbot_build.yml @@ -1,16 +1,17 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ certbot_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ certbot_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/roles/certbot/tasks/certbot_check.yml b/roles/certbot/tasks/certbot_check.yml index c5626c10..a2a224c9 100644 --- a/roles/certbot/tasks/certbot_check.yml +++ b/roles/certbot/tasks/certbot_check.yml @@ -1,5 +1,6 @@ -- name: "Dig src DNS record" - debug: +--- +- name: Dig src DNS record + ansible.builtin.debug: msg: "{{ lookup('dig', item.src_hostname) }}" loop: "{{ nginx_proxies }}" when: item.ssl is defined and item.ssl @@ -7,14 +8,14 @@ tags: - check -- name: "Dig host DNS record" - debug: +- name: Dig host DNS record + ansible.builtin.debug: msg: "{{ lookup('dig', ansible_host) }}" register: dig_host -- name: "Fail if src IP is not resolved correctly" - fail: - msg: "DNS record for {{ item.item.src_hostname }} does not point to proxy host." +- name: Fail if src IP is not resolved correctly + ansible.builtin.fail: + msg: DNS record for {{ item.item.src_hostname }} does not point to proxy host. when: item.msg is defined and item.msg != dig_host.msg and item.msg != 'NXDOMAIN' loop: "{{ dig_src.results }}" tags: diff --git a/roles/certbot/tasks/certbot_cleanup.yml b/roles/certbot/tasks/certbot_cleanup.yml index 762b1f57..94491b89 100644 --- a/roles/certbot/tasks/certbot_cleanup.yml +++ b/roles/certbot/tasks/certbot_cleanup.yml @@ -1,16 +1,17 @@ -- name: "Register existing {{ role_name }} certificates" # noqa 306 - shell: "ls -1 -d {{ certbot_data_dir }}/live/*/ | xargs -n 1 basename" +--- +- name: Register existing {{ role_name }} certificates # noqa 306 + ansible.builtin.shell: ls -1 -d {{ certbot_data_dir }}/live/*/ | xargs -n 1 basename changed_when: false ignore_errors: true register: certbot_managed_certs -- name: "Create managed certificate list from proxy list" - set_fact: +- name: Create managed certificate list from proxy list + ansible.builtin.set_fact: managed_certs: "{{ nginx_proxies | selectattr('ssl', 'defined') | map(attribute='src_hostname') | map('replace', '*.', '') | list }}" when: nginx_proxies is defined -- name: "Remove unmanaged certificate with {{ role_name }}" - docker_container: +- name: Remove unmanaged certificate with {{ role_name }} + community.docker.docker_container: name: "{{ item | replace('*.', 'wildcard') }}" image: "{{ certbot_image }}" volumes: @@ -23,15 +24,15 @@ loop_control: pause: 5 -- name: "Remove unmanaged certificate live folder" - file: +- name: Remove unmanaged certificate live folder + ansible.builtin.file: path: "{{ certbot_data_dir }}/live/{{ item }}" state: absent loop: "{{ certbot_managed_certs.stdout_lines }}" when: item not in managed_certs -- name: "Copy nginx ssl conf files" - copy: +- name: Copy nginx ssl conf files + ansible.builtin.copy: src: "{{ item }}" dest: "{{ certbot_data_dir }}/" loop: diff --git a/roles/certbot/tasks/certbot_renew.yml b/roles/certbot/tasks/certbot_renew.yml index cee588f7..3124bc31 100644 --- a/roles/certbot/tasks/certbot_renew.yml +++ b/roles/certbot/tasks/certbot_renew.yml @@ -1,7 +1,8 @@ -- name: "Register renew certs job" - cron: - name: "Renew certs for {{ nginx_hostname }}" +--- +- name: Register renew certs job + ansible.builtin.cron: + name: Renew certs for {{ nginx_hostname }} minute: "{{ 59 |random(seed=nginx_hostname) }}" hour: "0" weekday: "0" - job: "docker-certbot-renew && docker restart {{ nginx_hostname }}; write-node-exporter-metric -c 'Renew certs for {{ nginx_hostname }}' -v $?" + job: docker-certbot-renew && docker restart {{ nginx_hostname }}; write-node-exporter-metric -c 'Renew certs for {{ nginx_hostname }}' -v $? diff --git a/roles/certbot/tasks/certbot_secrets.yml b/roles/certbot/tasks/certbot_secrets.yml index 6a1f282c..65c491ba 100644 --- a/roles/certbot/tasks/certbot_secrets.yml +++ b/roles/certbot/tasks/certbot_secrets.yml @@ -1,11 +1,12 @@ -- name: "Ensure {{ certbot_data_dir }} data dir exists" - file: +--- +- name: Ensure {{ certbot_data_dir }} data dir exists + ansible.builtin.file: path: "{{ certbot_data_dir }}/.secrets" state: directory -- name: "Copy secrets files" - copy: +- name: Copy secrets files + ansible.builtin.copy: content: "{{ item.content }}" dest: "{{ certbot_data_dir }}/.secrets/{{ item.file }}" mode: "0600" - loop: "{{ certbot_secrets }}" \ No newline at end of file + loop: "{{ certbot_secrets }}" diff --git a/roles/certbot/tasks/certbot_wildcard.yml b/roles/certbot/tasks/certbot_wildcard.yml index e4ee4ba3..3bab9dd0 100644 --- a/roles/certbot/tasks/certbot_wildcard.yml +++ b/roles/certbot/tasks/certbot_wildcard.yml @@ -1,14 +1,15 @@ -- name: "Create list of wildcard certs" - set_fact: +--- +- name: Create list of wildcard certs + ansible.builtin.set_fact: certbot_wildcard_certs: "{{ nginx_proxies | json_query('[?contains(src_hostname, `*`)].src_hostname') | list }}" when: nginx_proxies is defined -- name: "Log wildcard certificates" - debug: +- name: Log wildcard certificates + ansible.builtin.debug: var: certbot_wildcard_certs -- name: "Copy {{ role_name }} vercel scripts" - template: +- name: Copy {{ role_name }} vercel scripts + ansible.builtin.template: src: "{{ item }}" dest: "{{ certbot_data_dir }}/{{ item }}" mode: +x @@ -22,7 +23,7 @@ # docker run --rm --name {{ item | replace('*.', 'wildcard') }} # -v {{ certbot_data_dir }}/:/etc/letsencrypt/ # -v {{ certbot_data_dir }}/www/:/var/www/certbot/ {{ certbot_image }} certonly -# --manual --preferred-challenges=dns +# --manual --preferred-challenges=dns # --manual-auth-hook /etc/letsencrypt/vercel-pre-hook # --manual-cleanup-hook /etc/letsencrypt/vercel-post-hook # --email {{ certbot_email }} --agree-tos -d {{ item }} @@ -32,8 +33,8 @@ # failed_when: result.stdout is search('Some challenges have failed.') or result.failed # changed_when: result.stdout is search('Congratulations!') or not result.failed -- name: "Issue certificate with {{ role_name }} manually" - fail: +- name: Issue certificate with {{ role_name }} manually + ansible.builtin.fail: msg: >- Run this command manually: docker run -it --rm --name {{ item | replace('*.', 'wildcard') }} diff --git a/roles/certbot/tasks/main.yml b/roles/certbot/tasks/main.yml index ee7a6d7e..7ab3a01d 100644 --- a/roles/certbot/tasks/main.yml +++ b/roles/certbot/tasks/main.yml @@ -1,49 +1,50 @@ -- name: "On build set new image tag {{ role_name }}:{{ certbot_hostname }}" - set_fact: - certbot_image: "certbot:{{ certbot_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ certbot_hostname }} + ansible.builtin.set_fact: + certbot_image: certbot:{{ certbot_hostname }} certbot_build_image: "{{ certbot_image }}" when: certbot_build_image and certbot_build_image != certbot_image tags: - certbot -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: certbot_build_image and certbot_build_image != certbot_image tags: - certbot -- name: "Include {{ role_name }} secrets tasks" - include_tasks: "{{ role_name }}_secrets.yml" +- name: Include {{ role_name }} secrets tasks + ansible.builtin.include_tasks: "{{ role_name }}_secrets.yml" when: certbot_secrets is defined tags: - certbot -- name: "Include {{ role_name }} check tasks" - include_tasks: "{{ role_name }}_check.yml" +- name: Include {{ role_name }} check tasks + ansible.builtin.include_tasks: "{{ role_name }}_check.yml" when: certbot_image is defined tags: - certbot -- name: "Include {{ role_name }} wildcard tasks" - include_tasks: "{{ role_name }}_wildcard.yml" +- name: Include {{ role_name }} wildcard tasks + ansible.builtin.include_tasks: "{{ role_name }}_wildcard.yml" when: certbot_authenticator is defined and certbot_authenticator == 'vercel' tags: - certbot -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: certbot_image is defined tags: - certbot -- name: "Include {{ role_name }} renew tasks" - include_tasks: "{{ role_name }}_renew.yml" +- name: Include {{ role_name }} renew tasks + ansible.builtin.include_tasks: "{{ role_name }}_renew.yml" when: certbot_image is defined tags: - certbot -- name: "Include {{ role_name }} cleanup tasks" - include_tasks: "{{ role_name }}_cleanup.yml" +- name: Include {{ role_name }} cleanup tasks + ansible.builtin.include_tasks: "{{ role_name }}_cleanup.yml" when: certbot_image is defined tags: - - certbot \ No newline at end of file + - certbot diff --git a/roles/clean/defaults/main.yml b/roles/clean/defaults/main.yml index bb66ed5e..4da9353f 100644 --- a/roles/clean/defaults/main.yml +++ b/roles/clean/defaults/main.yml @@ -1,6 +1,7 @@ +--- elasticsearch_data_dir: "{{ elasticsearch_hostname }}" elasticsearch_volume_name: "{{ elasticsearch_hostname }}" moodle_volume_name: "{{ moodle_hostname }}" -odoo_data_dir: "/usr/share/{{ odoo_hostname }}" +odoo_data_dir: /usr/share/{{ odoo_hostname }} odoo_volume_name: "{{ odoo_hostname }}" -postgres_volume_name: "{{ postgres_hostname }}" \ No newline at end of file +postgres_volume_name: "{{ postgres_hostname }}" diff --git a/roles/clean/tasks/bigbluebutton.yml b/roles/clean/tasks/bigbluebutton.yml index e869d62b..a267e3a2 100644 --- a/roles/clean/tasks/bigbluebutton.yml +++ b/roles/clean/tasks/bigbluebutton.yml @@ -1,34 +1,35 @@ -- name: "Remove greenlight container {{ greenlight_hostname }}" - docker_container: +--- +- name: Remove greenlight container {{ greenlight_hostname }} + community.docker.docker_container: name: "{{ greenlight_hostname }}" state: absent -- name: "Register bigbluebutton packages" # noqa 306 - shell: "dpkg -l | grep bbb | cut -d' ' -f3" +- name: Register bigbluebutton packages # noqa 306 + ansible.builtin.shell: dpkg -l | grep bbb | cut -d' ' -f3 changed_when: false register: bbb_packages - name: Uninstall bigbluebutton - apt: + ansible.builtin.apt: name: "{{ item }}" state: absent loop: "{{ bbb_packages.stdout_lines }}" - name: Uninstall bigbluebutton dependencies - apt: + ansible.builtin.apt: name: "{{ item }}" state: absent loop: - nginx - name: Remove dependencies that are no longer required - apt: + ansible.builtin.apt: autoremove: true -- name: "Remove bigbluebutton files and folders" - file: +- name: Remove bigbluebutton files and folders + ansible.builtin.file: path: "{{ item }}" - state: "absent" + state: absent loop: - /etc/bigbluebutton/ # bigbluebutton - /usr/local/bigbluebutton @@ -54,11 +55,11 @@ - /usr/share/meteor # meteor - name: Remove cron job to renew letsencrypt certficiates - cron: - name: "Renew letsencrypt certificates" - state: "absent" + ansible.builtin.cron: + name: Renew letsencrypt certificates + state: absent - name: Remove cron job to restart nginx - cron: - name: "Restart nginx" - state: "absent" + ansible.builtin.cron: + name: Restart nginx + state: absent diff --git a/roles/clean/tasks/bookstack.yml b/roles/clean/tasks/bookstack.yml index 5decd5ee..15c5362c 100644 --- a/roles/clean/tasks/bookstack.yml +++ b/roles/clean/tasks/bookstack.yml @@ -1,10 +1,11 @@ -- name: "Remove bookstack container {{ bookstack_hostname }}" - docker_container: +--- +- name: Remove bookstack container {{ bookstack_hostname }} + community.docker.docker_container: name: "{{ bookstack_hostname }}" state: absent - name: Remove bookstack data dir - file: + ansible.builtin.file: path: "{{ bookstack_data_dir }}" state: absent - when: '"bookstack_data" in ansible_run_tags' \ No newline at end of file + when: '"bookstack_data" in ansible_run_tags' diff --git a/roles/clean/tasks/cadvisor.yml b/roles/clean/tasks/cadvisor.yml index 53bb56d0..27cf4941 100644 --- a/roles/clean/tasks/cadvisor.yml +++ b/roles/clean/tasks/cadvisor.yml @@ -1,10 +1,11 @@ -- name: "Remove cadvisor container {{ cadvisor_hostname }}" - docker_container: +--- +- name: Remove cadvisor container {{ cadvisor_hostname }} + community.docker.docker_container: name: "{{ cadvisor_hostname }}" state: absent - name: Remove cadvisor data dir - file: + ansible.builtin.file: path: "{{ cadvisor_data_dir }}" state: absent - when: '"cadvisor_data" in ansible_run_tags' \ No newline at end of file + when: '"cadvisor_data" in ansible_run_tags' diff --git a/roles/clean/tasks/certbot.yml b/roles/clean/tasks/certbot.yml index 4397b287..40ab2418 100644 --- a/roles/clean/tasks/certbot.yml +++ b/roles/clean/tasks/certbot.yml @@ -1,6 +1,7 @@ -- name: "Remove certbot container {{ certbot_hostname }}" - docker_container: +--- +- name: Remove certbot container {{ certbot_hostname }} + community.docker.docker_container: name: "{{ certbot_hostname }}" state: absent -# Do not remove certbot data dir \ No newline at end of file +# Do not remove certbot data dir diff --git a/roles/clean/tasks/collabora_code.yml b/roles/clean/tasks/collabora_code.yml index 1e447bea..a460de6a 100644 --- a/roles/clean/tasks/collabora_code.yml +++ b/roles/clean/tasks/collabora_code.yml @@ -1,4 +1,5 @@ -- name: "Remove collabora_code container {{ collabora_code_hostname }}" - docker_container: +--- +- name: Remove collabora_code container {{ collabora_code_hostname }} + community.docker.docker_container: name: "{{ collabora_code_hostname }}" - state: absent \ No newline at end of file + state: absent diff --git a/roles/clean/tasks/commento.yml b/roles/clean/tasks/commento.yml index a932772e..2d841597 100644 --- a/roles/clean/tasks/commento.yml +++ b/roles/clean/tasks/commento.yml @@ -1,4 +1,5 @@ -- name: "Remove commento container {{ commento_hostname }}" - docker_container: +--- +- name: Remove commento container {{ commento_hostname }} + community.docker.docker_container: name: "{{ commento_hostname }}" - state: absent \ No newline at end of file + state: absent diff --git a/roles/clean/tasks/docker_compose.yml b/roles/clean/tasks/docker_compose.yml index 56388519..3469b530 100644 --- a/roles/clean/tasks/docker_compose.yml +++ b/roles/clean/tasks/docker_compose.yml @@ -1,18 +1,19 @@ -- name: "Remove docker_compose project" - command: "docker-compose -p {{ docker_compose_project_name }} down -v" +--- +- name: Remove docker_compose project + ansible.builtin.command: docker-compose -p {{ docker_compose_project_name }} down -v args: chdir: "{{ docker_compose_data_dir }}" register: result changed_when: true - name: Remove docker_compose data dir - file: + ansible.builtin.file: path: "{{ docker_compose_data_dir }}" state: absent when: '"docker_compose_data" in ansible_run_tags' - name: Remove docker_compose - file: - path: "/usr/local/bin/docker-compose" + ansible.builtin.file: + path: /usr/local/bin/docker-compose state: absent - when: '"docker_compose_data" in ansible_run_tags' \ No newline at end of file + when: '"docker_compose_data" in ansible_run_tags' diff --git a/roles/clean/tasks/docker_network.yml b/roles/clean/tasks/docker_network.yml index 23f9fca7..431e33bf 100644 --- a/roles/clean/tasks/docker_network.yml +++ b/roles/clean/tasks/docker_network.yml @@ -1,5 +1,6 @@ +--- - name: Remove docker network - docker_network: + community.docker.docker_network: name: "{{ docker_network_name }}" state: absent - when: docker_network_name is defined \ No newline at end of file + when: docker_network_name is defined diff --git a/roles/clean/tasks/docker_swarm.yml b/roles/clean/tasks/docker_swarm.yml index 9c27bb6c..106069c1 100644 --- a/roles/clean/tasks/docker_swarm.yml +++ b/roles/clean/tasks/docker_swarm.yml @@ -1,4 +1,5 @@ +--- - name: Init a new swarm with default parameters - docker_swarm: + community.docker.docker_swarm: state: absent - force: true \ No newline at end of file + force: true diff --git a/roles/clean/tasks/elasticsearch.yml b/roles/clean/tasks/elasticsearch.yml index da3d78bc..4bde3a89 100644 --- a/roles/clean/tasks/elasticsearch.yml +++ b/roles/clean/tasks/elasticsearch.yml @@ -1,16 +1,17 @@ -- name: "Remove elasticsearch container {{ elasticsearch_hostname }}" - docker_container: +--- +- name: Remove elasticsearch container {{ elasticsearch_hostname }} + community.docker.docker_container: name: "{{ elasticsearch_hostname }}" state: absent -- name: "Remove elasticsearch volume {{ elasticsearch_volume_name }}" - docker_volume: +- name: Remove elasticsearch volume {{ elasticsearch_volume_name }} + community.docker.docker_volume: name: "{{ elasticsearch_volume_name }}" state: absent when: ("elasticsearch_volume" in ansible_run_tags) -- name: "Remove elasticsearch data dir {{ elasticsearch_data_dir }}" - file: +- name: Remove elasticsearch data dir {{ elasticsearch_data_dir }} + ansible.builtin.file: path: "{{ elasticsearch_data_dir }}" state: absent when: ("elasticsearch_data" in ansible_run_tags) diff --git a/roles/clean/tasks/elasticsearch_cluster.yml b/roles/clean/tasks/elasticsearch_cluster.yml index 3de60d03..79356507 100644 --- a/roles/clean/tasks/elasticsearch_cluster.yml +++ b/roles/clean/tasks/elasticsearch_cluster.yml @@ -1,18 +1,19 @@ -- name: "Remove elasticsearch container {{ item.hostname }}" - docker_container: +--- +- name: Remove elasticsearch container {{ item.hostname }} + community.docker.docker_container: name: "{{ item.hostname }}" state: absent loop: "{{ elasticsearch_nodes }}" -- name: "Remove elasticsearch volume {{ item.volume_name }}" - docker_volume: +- name: Remove elasticsearch volume {{ item.volume_name }} + community.docker.docker_volume: name: "{{ item.volume_name }}" state: absent loop: "{{ elasticsearch_nodes }}" when: ("elasticsearch_volume" in ansible_run_tags) -- name: "Remove elasticsearch data dir {{ item.data_dir }}" - file: +- name: Remove elasticsearch data dir {{ item.data_dir }} + ansible.builtin.file: path: "{{ item.data_dir }}" state: absent loop: "{{ elasticsearch_nodes }}" diff --git a/roles/clean/tasks/fathom.yml b/roles/clean/tasks/fathom.yml index 19c0dbb0..d02c1cb3 100644 --- a/roles/clean/tasks/fathom.yml +++ b/roles/clean/tasks/fathom.yml @@ -1,4 +1,5 @@ -- name: "Remove fathom container {{ fathom_hostname }}" - docker_container: +--- +- name: Remove fathom container {{ fathom_hostname }} + community.docker.docker_container: name: "{{ fathom_hostname }}" - state: absent \ No newline at end of file + state: absent diff --git a/roles/clean/tasks/grafana.yml b/roles/clean/tasks/grafana.yml index 2ad9dba8..649d2b11 100644 --- a/roles/clean/tasks/grafana.yml +++ b/roles/clean/tasks/grafana.yml @@ -1,16 +1,17 @@ -- name: "Remove grafana container {{ grafana_hostname }}" - docker_container: +--- +- name: Remove grafana container {{ grafana_hostname }} + community.docker.docker_container: name: "{{ grafana_hostname }}" state: absent - name: Remove grafana data dir - file: + ansible.builtin.file: path: "{{ grafana_data_dir }}" state: absent when: '"grafana_data" in ansible_run_tags' - name: Remove grafana volume - docker_volume: + community.docker.docker_volume: name: "{{ grafana_volume_name }}" state: absent when: '"grafana_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/innernet_client.yml b/roles/clean/tasks/innernet_client.yml index 218c815d..b333d538 100644 --- a/roles/clean/tasks/innernet_client.yml +++ b/roles/clean/tasks/innernet_client.yml @@ -1,16 +1,17 @@ -- name: "Remove invitation file" - file: - path: "/var/tmp/{{ innernet_client_peer_name }}.yml" +--- +- name: Remove invitation file + ansible.builtin.file: + path: /var/tmp/{{ innernet_client_peer_name }}.yml state: absent - name: Disable innernet service - systemd: + ansible.builtin.systemd: name: innernet@{{ innernet_client_network_name }}" state: stopped enabled: false # FIXME cannot confirm deletion - name: Remove innernet client network - command: - cmd: "innernet uninstall {{ innernet_client_network_name }}" - removes: "/var/lib/innernet/{{ innernet_client_network_name }}.json" \ No newline at end of file + ansible.builtin.command: + cmd: innernet uninstall {{ innernet_client_network_name }} + removes: /var/lib/innernet/{{ innernet_client_network_name }}.json diff --git a/roles/clean/tasks/innernet_server.yml b/roles/clean/tasks/innernet_server.yml index 3d1bf609..22dfb1d0 100644 --- a/roles/clean/tasks/innernet_server.yml +++ b/roles/clean/tasks/innernet_server.yml @@ -1,17 +1,18 @@ +--- - name: Remove peer invitation files - file: - path: "/var/tmp/{{ item.name }}.yml" + ansible.builtin.file: + path: /var/tmp/{{ item.name }}.yml state: absent loop: "{{ innernet_server_peers }}" - name: Disable innernet server service - systemd: + ansible.builtin.systemd: name: innernet-server@{{ innernet_server_network_name }}" state: stopped enabled: false # FIXME cannot confirm deletion - name: Remove innernet server network - command: - cmd: "innernet-server uninstall {{ innernet_server_network_name }}" - removes: "/var/lib/innernet-server/{{ innernet_server_network_name }}.db" \ No newline at end of file + ansible.builtin.command: + cmd: innernet-server uninstall {{ innernet_server_network_name }} + removes: /var/lib/innernet-server/{{ innernet_server_network_name }}.db diff --git a/roles/clean/tasks/keycloak.yml b/roles/clean/tasks/keycloak.yml index 68a22cfd..ff3e2080 100644 --- a/roles/clean/tasks/keycloak.yml +++ b/roles/clean/tasks/keycloak.yml @@ -1,4 +1,5 @@ -- name: "Remove keycloak container {{ keycloak_hostname }}" - docker_container: +--- +- name: Remove keycloak container {{ keycloak_hostname }} + community.docker.docker_container: name: "{{ keycloak_hostname }}" - state: absent \ No newline at end of file + state: absent diff --git a/roles/clean/tasks/kibana.yml b/roles/clean/tasks/kibana.yml index f6957cba..73a08d6b 100644 --- a/roles/clean/tasks/kibana.yml +++ b/roles/clean/tasks/kibana.yml @@ -1,4 +1,5 @@ -- name: "Remove kibana container {{ kibana_hostname }}" - docker_container: +--- +- name: Remove kibana container {{ kibana_hostname }} + community.docker.docker_container: name: "{{ kibana_hostname }}" - state: absent \ No newline at end of file + state: absent diff --git a/roles/clean/tasks/logstash.yml b/roles/clean/tasks/logstash.yml index fbc5e86a..1f45b509 100644 --- a/roles/clean/tasks/logstash.yml +++ b/roles/clean/tasks/logstash.yml @@ -1,10 +1,11 @@ -- name: "Remove logstash container {{ logstash_hostname }}" - docker_container: +--- +- name: Remove logstash container {{ logstash_hostname }} + community.docker.docker_container: name: "{{ logstash_hostname }}" state: absent - name: Remove logstash data dir - file: + ansible.builtin.file: path: "{{ logstash_data_dir }}" state: absent - when: '"logstash_data" in ansible_run_tags' \ No newline at end of file + when: '"logstash_data" in ansible_run_tags' diff --git a/roles/clean/tasks/mailhog.yml b/roles/clean/tasks/mailhog.yml index 9dd91e7a..9c488679 100644 --- a/roles/clean/tasks/mailhog.yml +++ b/roles/clean/tasks/mailhog.yml @@ -1,4 +1,5 @@ -- name: "Remove MailHog container {{ mailhog_hostname }}" - docker_container: +--- +- name: Remove MailHog container {{ mailhog_hostname }} + community.docker.docker_container: name: "{{ mailhog_hostname }}" state: absent diff --git a/roles/clean/tasks/main.yml b/roles/clean/tasks/main.yml index 90a0e37f..f65de716 100644 --- a/roles/clean/tasks/main.yml +++ b/roles/clean/tasks/main.yml @@ -1,5 +1,6 @@ +--- - name: Include cleanup tasks - include_tasks: "{{ item }}.yml" + ansible.builtin.include_tasks: "{{ item }}.yml" when: item in tasks loop: "{{ ansible_run_tags }}" vars: @@ -39,4 +40,4 @@ - innernet_server - moodle - redis - - mailhog \ No newline at end of file + - mailhog diff --git a/roles/clean/tasks/metricbeat.yml b/roles/clean/tasks/metricbeat.yml index ab7e5b14..3982ac95 100644 --- a/roles/clean/tasks/metricbeat.yml +++ b/roles/clean/tasks/metricbeat.yml @@ -1,10 +1,11 @@ -- name: "Remove metricbeat container {{ metricbeat_hostname }}" - docker_container: +--- +- name: Remove metricbeat container {{ metricbeat_hostname }} + community.docker.docker_container: name: "{{ metricbeat_hostname }}" state: absent - name: Remove metricbeat data dir - file: + ansible.builtin.file: path: "{{ metricbeat_data_dir }}" state: absent - when: '"metricbeat_data" in ansible_run_tags' \ No newline at end of file + when: '"metricbeat_data" in ansible_run_tags' diff --git a/roles/clean/tasks/modsecurity.yml b/roles/clean/tasks/modsecurity.yml index a61cbf69..07340208 100644 --- a/roles/clean/tasks/modsecurity.yml +++ b/roles/clean/tasks/modsecurity.yml @@ -1,5 +1,6 @@ +--- - name: Remove modsecurity data dir - file: + ansible.builtin.file: path: "{{ modsecurity_data_dir }}" state: absent - when: '"modsecurity_data" in ansible_run_tags' \ No newline at end of file + when: '"modsecurity_data" in ansible_run_tags' diff --git a/roles/clean/tasks/moodle.yml b/roles/clean/tasks/moodle.yml index 258df3cb..698ee160 100644 --- a/roles/clean/tasks/moodle.yml +++ b/roles/clean/tasks/moodle.yml @@ -1,10 +1,11 @@ -- name: "Remove moodle container {{ moodle_hostname }}" - docker_container: +--- +- name: Remove moodle container {{ moodle_hostname }} + community.docker.docker_container: name: "{{ moodle_hostname }}" state: absent - name: Remove moodle volume - docker_volume: + community.docker.docker_volume: name: "{{ moodle_volume_name }}" state: absent when: '"moodle_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/mysql.yml b/roles/clean/tasks/mysql.yml index 8cde6c18..9457fc69 100644 --- a/roles/clean/tasks/mysql.yml +++ b/roles/clean/tasks/mysql.yml @@ -1,10 +1,11 @@ -- name: "Remove mysql container {{ mysql_hostname }}" - docker_container: +--- +- name: Remove mysql container {{ mysql_hostname }} + community.docker.docker_container: name: "{{ mysql_hostname }}" state: absent -- name: "Remove mysql volume {{ mysql_volume_name }}" - docker_volume: +- name: Remove mysql volume {{ mysql_volume_name }} + community.docker.docker_volume: name: "{{ mysql_volume_name }}" state: absent when: '"mysql_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/nextcloud.yml b/roles/clean/tasks/nextcloud.yml index f9bf6f53..cb19f29c 100644 --- a/roles/clean/tasks/nextcloud.yml +++ b/roles/clean/tasks/nextcloud.yml @@ -1,10 +1,11 @@ -- name: "Remove nextcloud container {{ nextcloud_hostname }}" - docker_container: +--- +- name: Remove nextcloud container {{ nextcloud_hostname }} + community.docker.docker_container: name: "{{ nextcloud_hostname }}" state: absent - name: Remove nextcloud volume - docker_volume: + community.docker.docker_volume: name: "{{ nextcloud_volume_name }}" state: absent - when: '"nextcloud_volume" in ansible_run_tags' \ No newline at end of file + when: '"nextcloud_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/nginx.yml b/roles/clean/tasks/nginx.yml index 552bc129..b2ed5d20 100644 --- a/roles/clean/tasks/nginx.yml +++ b/roles/clean/tasks/nginx.yml @@ -1,11 +1,11 @@ -- name: "Remove nginx container {{ nginx_hostname }}" - docker_container: +--- +- name: Remove nginx container {{ nginx_hostname }} + community.docker.docker_container: name: "{{ nginx_hostname }}" state: absent - name: Remove nginx data dir - file: + ansible.builtin.file: path: "{{ nginx_data_dir }}" state: absent when: '"nginx_data" in ansible_run_tags' - diff --git a/roles/clean/tasks/node_exporter.yml b/roles/clean/tasks/node_exporter.yml index cf5f743c..3b3bd009 100644 --- a/roles/clean/tasks/node_exporter.yml +++ b/roles/clean/tasks/node_exporter.yml @@ -1,10 +1,11 @@ -- name: "Remove node_exporter container {{ node_exporter_hostname }}" - docker_container: +--- +- name: Remove node_exporter container {{ node_exporter_hostname }} + community.docker.docker_container: name: "{{ node_exporter_hostname }}" state: absent - name: Remove node_exporter data dir - file: + ansible.builtin.file: path: "{{ node_exporter_data_dir }}" state: absent - when: '"node_exporter_data" in ansible_run_tags' \ No newline at end of file + when: '"node_exporter_data" in ansible_run_tags' diff --git a/roles/clean/tasks/odoo.yml b/roles/clean/tasks/odoo.yml index affd8962..46e758ba 100644 --- a/roles/clean/tasks/odoo.yml +++ b/roles/clean/tasks/odoo.yml @@ -1,16 +1,17 @@ -- name: "Remove odoo container {{ odoo_hostname }}" - docker_container: +--- +- name: Remove odoo container {{ odoo_hostname }} + community.docker.docker_container: name: "{{ odoo_hostname }}" state: absent -- name: "Remove odoo volume {{ odoo_volume_name }}" - docker_volume: +- name: Remove odoo volume {{ odoo_volume_name }} + community.docker.docker_volume: name: "{{ odoo_volume_name }}" state: absent when: '"odoo_volume" in ansible_run_tags' -- name: "Remove odoo data dir {{ odoo_data_dir }}" - file: +- name: Remove odoo data dir {{ odoo_data_dir }} + ansible.builtin.file: path: "{{ odoo_data_dir }}" state: absent when: '"odoo_data" in ansible_run_tags' diff --git a/roles/clean/tasks/odoo_scripts.yml b/roles/clean/tasks/odoo_scripts.yml index d61e1652..d951bc1b 100644 --- a/roles/clean/tasks/odoo_scripts.yml +++ b/roles/clean/tasks/odoo_scripts.yml @@ -1,8 +1,9 @@ +--- - name: Remove odoo scripts - file: - path: "/usr/local/bin/{{ item }}" + ansible.builtin.file: + path: /usr/local/bin/{{ item }} state: absent loop: - odoo-backup - odoo-restore - - docker-odoo-install \ No newline at end of file + - docker-odoo-install diff --git a/roles/clean/tasks/openldap.yml b/roles/clean/tasks/openldap.yml index 9bf19685..548d43dc 100644 --- a/roles/clean/tasks/openldap.yml +++ b/roles/clean/tasks/openldap.yml @@ -1,4 +1,5 @@ -- name: "Remove openldap container {{ openldap_hostname }}" - docker_container: +--- +- name: Remove openldap container {{ openldap_hostname }} + community.docker.docker_container: name: "{{ openldap_hostname }}" state: absent diff --git a/roles/clean/tasks/pgadmin.yml b/roles/clean/tasks/pgadmin.yml index 1201c4be..c063ee23 100644 --- a/roles/clean/tasks/pgadmin.yml +++ b/roles/clean/tasks/pgadmin.yml @@ -1,10 +1,11 @@ -- name: "Remove pgadmin container {{ pgadmin_hostname }}" - docker_container: +--- +- name: Remove pgadmin container {{ pgadmin_hostname }} + community.docker.docker_container: name: "{{ pgadmin_hostname }}" state: absent - name: Remove pgadmin volume - docker_volume: + community.docker.docker_volume: name: "{{ pgadmin_volume_name }}" state: absent - when: '"pgadmin_volume" in ansible_run_tags' \ No newline at end of file + when: '"pgadmin_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/postgres.yml b/roles/clean/tasks/postgres.yml index 3556f0f5..670c52e5 100644 --- a/roles/clean/tasks/postgres.yml +++ b/roles/clean/tasks/postgres.yml @@ -1,10 +1,11 @@ -- name: "Remove postgres container {{ postgres_hostname }}" - docker_container: +--- +- name: Remove postgres container {{ postgres_hostname }} + community.docker.docker_container: name: "{{ postgres_hostname }}" state: absent -- name: "Remove postgres volume {{ postgres_volume_name }}" - docker_volume: +- name: Remove postgres volume {{ postgres_volume_name }} + community.docker.docker_volume: name: "{{ postgres_volume_name }}" state: absent - when: '"postgres_volume" in ansible_run_tags' \ No newline at end of file + when: '"postgres_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/prometheus.yml b/roles/clean/tasks/prometheus.yml index 81420e08..74a5556a 100644 --- a/roles/clean/tasks/prometheus.yml +++ b/roles/clean/tasks/prometheus.yml @@ -1,16 +1,17 @@ -- name: "Remove prometheus container {{ prometheus_hostname }}" - docker_container: +--- +- name: Remove prometheus container {{ prometheus_hostname }} + community.docker.docker_container: name: "{{ prometheus_hostname }}" state: absent - name: Remove prometheus data dir - file: + ansible.builtin.file: path: "{{ prometheus_data_dir }}" state: absent when: '"prometheus_data" in ansible_run_tags' - name: Remove prometheus volume - docker_volume: + community.docker.docker_volume: name: "{{ prometheus_volume_name }}" state: absent when: '"prometheus_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/redis.yml b/roles/clean/tasks/redis.yml index 853b5280..557dfffe 100644 --- a/roles/clean/tasks/redis.yml +++ b/roles/clean/tasks/redis.yml @@ -1,10 +1,11 @@ -- name: "Remove redis container {{ redis_hostname }}" - docker_container: +--- +- name: Remove redis container {{ redis_hostname }} + community.docker.docker_container: name: "{{ redis_hostname }}" state: absent -- name: "Remove redis volume {{ redis_volume_name }}" - docker_volume: +- name: Remove redis volume {{ redis_volume_name }} + community.docker.docker_volume: name: "{{ redis_volume_name }}" state: absent - when: '"redis_volume" in ansible_run_tags' \ No newline at end of file + when: '"redis_volume" in ansible_run_tags' diff --git a/roles/clean/tasks/restic_client.yml b/roles/clean/tasks/restic_client.yml index fe427333..bb383073 100644 --- a/roles/clean/tasks/restic_client.yml +++ b/roles/clean/tasks/restic_client.yml @@ -1,12 +1,13 @@ +--- - name: Remove restic backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" state: absent loop: "{{ restic_backup_set }}" when: restic_backup_set is defined - name: Remove postgres backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" state: absent loop: "{{ postgres_backup_set }}" diff --git a/roles/clean/tasks/wordpress.yml b/roles/clean/tasks/wordpress.yml index a5387112..eb972f74 100644 --- a/roles/clean/tasks/wordpress.yml +++ b/roles/clean/tasks/wordpress.yml @@ -1,10 +1,11 @@ -- name: "Remove wordpress container {{ wordpress_hostname }}" - docker_container: +--- +- name: Remove wordpress container {{ wordpress_hostname }} + community.docker.docker_container: name: "{{ wordpress_hostname }}" state: absent -- name: "Remove wordpress volume {{ wordpress_volume_name }}" - docker_volume: +- name: Remove wordpress volume {{ wordpress_volume_name }} + community.docker.docker_volume: name: "{{ wordpress_volume_name }}" state: absent when: '"wordpress_volume" in ansible_run_tags' diff --git a/roles/collabora_code/defaults/main.yml b/roles/collabora_code/defaults/main.yml index 0c1faf51..65d55d5e 100644 --- a/roles/collabora_code/defaults/main.yml +++ b/roles/collabora_code/defaults/main.yml @@ -1,6 +1,7 @@ +--- collabora_code_port: 9980 collabora_code_description: Collabora Code collabora_code_username: admin collabora_code_password: "{{ vault_collabora_code_password }}" collabora_code_aliasgroup1: "" -collabora_code_ssl_enable: true \ No newline at end of file +collabora_code_ssl_enable: true diff --git a/roles/collabora_code/meta/main.yml b/roles/collabora_code/meta/main.yml index 9f1a9c7a..f678629c 100644 --- a/roles/collabora_code/meta/main.yml +++ b/roles/collabora_code/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: nextcloud tags: diff --git a/roles/collabora_code/tasks/collabora_code.yml b/roles/collabora_code/tasks/collabora_code.yml index 5d71d724..0373c7b9 100644 --- a/roles/collabora_code/tasks/collabora_code.yml +++ b/roles/collabora_code/tasks/collabora_code.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ collabora_code_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ collabora_code_hostname }} + community.docker.docker_container: name: "{{ collabora_code_hostname }}" labels: description: "{{ collabora_code_description }}" @@ -10,7 +11,7 @@ password: "{{ collabora_code_password }}" server_name: "{{ collabora_code_server_name}}" aliasgroup1: "{{ collabora_code_aliasgroup1 }}" - extra_params: "--o:ssl.enable={{ collabora_code_ssl_enable }}" + extra_params: --o:ssl.enable={{ collabora_code_ssl_enable }} ports: - "{{ collabora_code_port }}:9980" networks: @@ -19,4 +20,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ collabora_code_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ collabora_code_hostname }}|{{ role_name }}" diff --git a/roles/collabora_code/tasks/main.yml b/roles/collabora_code/tasks/main.yml index 365a5d2e..f910b332 100644 --- a/roles/collabora_code/tasks/main.yml +++ b/roles/collabora_code/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: collabora_code_image is defined tags: - - collabora_code \ No newline at end of file + - collabora_code diff --git a/roles/commento/defaults/main.yml b/roles/commento/defaults/main.yml index e02f570e..2af3a5f2 100644 --- a/roles/commento/defaults/main.yml +++ b/roles/commento/defaults/main.yml @@ -1,2 +1,3 @@ -commento_description: "Commento" -commento_deny_signups: "false" \ No newline at end of file +--- +commento_description: Commento +commento_deny_signups: "false" diff --git a/roles/commento/meta/main.yml b/roles/commento/meta/main.yml index 048ff76e..80d1be24 100644 --- a/roles/commento/meta/main.yml +++ b/roles/commento/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: postgres tags: - postgres - - depends \ No newline at end of file + - depends diff --git a/roles/commento/tasks/commento.yml b/roles/commento/tasks/commento.yml index f311c09c..628ee8ac 100644 --- a/roles/commento/tasks/commento.yml +++ b/roles/commento/tasks/commento.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ commento_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ commento_hostname }} + community.docker.docker_container: name: "{{ commento_hostname }}" labels: description: "{{ commento_description }}" @@ -8,7 +9,7 @@ recreate: false env: COMMENTO_ORIGIN: "{{ commento_host }}" - COMMENTO_POSTGRES: "postgres://{{ commento_db_user }}:{{ commento_db_password }}@{{ commento_db_hostname }}:5432/commento?sslmode=disable" + COMMENTO_POSTGRES: postgres://{{ commento_db_user }}:{{ commento_db_password }}@{{ commento_db_hostname }}:5432/commento?sslmode=disable COMMENTO_SMTP_HOST: "{{ commento_smtp_host }}" COMMENTO_SMTP_PORT: "{{ commento_smtp_port }}" COMMENTO_SMTP_USERNAME: "{{ commento_smtp_username }}" @@ -23,4 +24,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ commento_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ commento_hostname }}|{{ role_name }}" diff --git a/roles/commento/tasks/main.yml b/roles/commento/tasks/main.yml index 7e61cc90..5c82cebf 100644 --- a/roles/commento/tasks/main.yml +++ b/roles/commento/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: commento_image is defined tags: - - commento \ No newline at end of file + - commento diff --git a/roles/coturn/defaults/main.yml b/roles/coturn/defaults/main.yml index 743f9737..f404e3c8 100644 --- a/roles/coturn/defaults/main.yml +++ b/roles/coturn/defaults/main.yml @@ -1,2 +1,3 @@ +--- coturn_description: Coturn -coturn_data_dir: "/usr/share/{{ coturn_hostname }}" \ No newline at end of file +coturn_data_dir: /usr/share/{{ coturn_hostname }} diff --git a/roles/coturn/handlers/main.yml b/roles/coturn/handlers/main.yml index 044be995..22b31722 100644 --- a/roles/coturn/handlers/main.yml +++ b/roles/coturn/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ coturn_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/coturn/meta/main.yml b/roles/coturn/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/coturn/meta/main.yml +++ b/roles/coturn/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/coturn/tasks/coturn.yml b/roles/coturn/tasks/coturn.yml index 72dd29a2..24b3cf2d 100644 --- a/roles/coturn/tasks/coturn.yml +++ b/roles/coturn/tasks/coturn.yml @@ -1,18 +1,19 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ coturn_data_dir }}" state: directory -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: "{{ item }}" dest: "{{ coturn_data_dir }}/{{ item }}" loop: - turnserver.conf - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Start {{ role_name }} container {{ coturn_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ coturn_hostname }} + community.docker.docker_container: name: "{{ coturn_hostname }}" labels: description: "{{ coturn_description }}" @@ -29,4 +30,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ coturn_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ coturn_hostname }}|{{ role_name }}" diff --git a/roles/coturn/tasks/main.yml b/roles/coturn/tasks/main.yml index 9d7ec543..5f2f9c84 100644 --- a/roles/coturn/tasks/main.yml +++ b/roles/coturn/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: coturn_image is defined tags: - - coturn \ No newline at end of file + - coturn diff --git a/roles/cron/defaults/main.yml b/roles/cron/defaults/main.yml index 7ba19b07..5536120b 100644 --- a/roles/cron/defaults/main.yml +++ b/roles/cron/defaults/main.yml @@ -1 +1,2 @@ -cron_data_dir: "/usr/share/{{ role_name }}" \ No newline at end of file +--- +cron_data_dir: /usr/share/{{ role_name }} diff --git a/roles/cron/handlers/main.yml b/roles/cron/handlers/main.yml index feda7611..e493fe29 100644 --- a/roles/cron/handlers/main.yml +++ b/roles/cron/handlers/main.yml @@ -1,4 +1,5 @@ +--- - name: Restart rsyslog service - service: + ansible.builtin.service: name: rsyslog - state: restarted \ No newline at end of file + state: restarted diff --git a/roles/cron/tasks/cron-log.yml b/roles/cron/tasks/cron-log.yml index c7537b7e..1cc9de7b 100644 --- a/roles/cron/tasks/cron-log.yml +++ b/roles/cron/tasks/cron-log.yml @@ -1,12 +1,13 @@ -- name: "Create {{ role_name }} log file" - copy: +--- +- name: Create {{ role_name }} log file + ansible.builtin.copy: content: "" - dest: "/var/log/cron.log" + dest: /var/log/cron.log force: false -- name: "Ensure rsysyslog {{ role_name }} is enabled" - lineinfile: - path: "/etc/rsyslog.d/50-default.conf" - regexp: "cron.*" +- name: Ensure rsysyslog {{ role_name }} is enabled + ansible.builtin.lineinfile: + path: /etc/rsyslog.d/50-default.conf + regexp: cron.* insertafter: "#cron.*" - line: "cron.* /var/log/cron.log" - notify: "Restart rsyslog service" \ No newline at end of file + line: cron.* /var/log/cron.log + notify: Restart rsyslog service diff --git a/roles/cron/tasks/cron.yml b/roles/cron/tasks/cron.yml index 92ecac7a..caf076fe 100644 --- a/roles/cron/tasks/cron.yml +++ b/roles/cron/tasks/cron.yml @@ -1,18 +1,19 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ cron_data_dir }}" state: directory -- name: "Copy {{ role_name }} scripts" - copy: +- name: Copy {{ role_name }} scripts + ansible.builtin.copy: content: "{{ item.script }}" dest: "{{ cron_data_dir }}/{{ item.script_name }}" mode: +x loop: "{{ cron_jobs }}" when: item.command == "script" -- name: "Setup {{ role_name }} script jobs" - cron: +- name: Setup {{ role_name }} script jobs + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour | default('*') }}" minute: "{{ item.minute | default('*') }}" @@ -21,9 +22,9 @@ state: "{{ item.state | default('present') }}" loop: "{{ cron_jobs }}" when: item.command == "script" - -- name: "Setup {{ role_name }} command jobs" - cron: + +- name: Setup {{ role_name }} command jobs + ansible.builtin.cron: name: "{{ item.name }}" hour: "{{ item.hour | default('*') }}" minute: "{{ item.minute | default('*') }}" diff --git a/roles/cron/tasks/main.yml b/roles/cron/tasks/main.yml index 66868c52..dc12a9aa 100644 --- a/roles/cron/tasks/main.yml +++ b/roles/cron/tasks/main.yml @@ -1,11 +1,12 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: cron_jobs is defined tags: - cron -- name: "Include {{ role_name }} log tasks" - include_tasks: "{{ role_name }}-log.yml" +- name: Include {{ role_name }} log tasks + ansible.builtin.include_tasks: "{{ role_name }}-log.yml" when: cron_jobs is defined tags: - cron diff --git a/roles/debug/tasks/debug.yml b/roles/debug/tasks/debug.yml index bd8f36ab..ffdb6521 100644 --- a/roles/debug/tasks/debug.yml +++ b/roles/debug/tasks/debug.yml @@ -11,7 +11,6 @@ # msg: "{{ item.0.name }}, {{ item.1.name }}" # loop: "{{ revoke_tables }}" - # - name: "Grant privilieges to users." # debug: # var: "{{ item.0.name }}, {{ item.1 }}" @@ -55,7 +54,7 @@ # debug: # msg: "{{ dig_host.msg }}" -# - name: Fail if src IP is not resolved correctly +# - name: Fail if src IP is not resolved correctly # fail: # msg: "DNS record for {{ item.item.src_hostname }} does not point to proxy host." # when: item.msg != dig_host.msg @@ -82,48 +81,48 @@ # - name: cadvisor https # debug: # msg: "{{ groups['all'] | map('extract', hostvars) | -# json_query('[? cadvisor_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | +# json_query('[? cadvisor_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" # - name: cadvisor http # debug: -# msg: "{{ groups['all'] | map('extract', hostvars) | -# json_query('[? cadvisor_hostname && prometheus_target_scheme==`http`].[ansible_host,prometheus_target_port]') | +# msg: "{{ groups['all'] | map('extract', hostvars) | +# json_query('[? cadvisor_hostname && prometheus_target_scheme==`http`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" # - name: node_exporter https # debug: -# msg: "{{ groups['all'] | map('extract', hostvars) | -# json_query('[? node_exporter_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | +# msg: "{{ groups['all'] | map('extract', hostvars) | +# json_query('[? node_exporter_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" # - name: node_exporter http # debug: -# msg: "{{ groups['all'] | map('extract', hostvars) | -# json_query('[? node_exporter_hostname && prometheus_target_scheme==`http`].[ansible_host,prometheus_target_port]') | +# msg: "{{ groups['all'] | map('extract', hostvars) | +# json_query('[? node_exporter_hostname && prometheus_target_scheme==`http`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" # - name: nextcloud-exporter https # debug: -# msg: "{{ groups['all'] | map('extract', hostvars) | -# json_query('[? nextcloud_exporter_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | +# msg: "{{ groups['all'] | map('extract', hostvars) | +# json_query('[? nextcloud_exporter_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" # - name: bigbluebutton_exporter http # debug: -# msg: "{{ groups['all'] | map('extract', hostvars) | -# json_query('[? bigbluebutton_exporter_hostname && prometheus_target_scheme==`http`].[ansible_host,prometheus_target_port]') | +# msg: "{{ groups['all'] | map('extract', hostvars) | +# json_query('[? bigbluebutton_exporter_hostname && prometheus_target_scheme==`http`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" # - name: postgres_exporter https # debug: -# msg: "{{ groups['all'] | map('extract', hostvars) | -# json_query('[? postgres_exporter_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | +# msg: "{{ groups['all'] | map('extract', hostvars) | +# json_query('[? postgres_exporter_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" # - name: restic_server https # debug: -# msg: "{{ groups['all'] | map('extract', hostvars) | +# msg: "{{ groups['all'] | map('extract', hostvars) | # json_query('[? restic_server_hostname && prometheus_target_scheme==`https`].[ansible_host,prometheus_target_port]') | # map('join', ':') | list }}" @@ -212,10 +211,10 @@ # - name: Tag odoo image # command: "docker tag {{ odoo_image[7:19] }} odoo:{{ odoo_image[7:19] }}" -# when: pull_odoo_image.image.RepoTags | length == 0 +# when: pull_odoo_image.image.RepoTags | length == 0 # - name: Dig DNS CNAME record -# debug: +# debug: # msg: "{{ lookup('dig', item.src_hostname, 'qtype=CNAME') }}" # register: dig # loop: "{{ nginx_proxies }}" @@ -258,7 +257,7 @@ # var: managed_files # - name: Remove unmanaged nginx conf files -# file: +# file: # path: "{{ nginx_data_dir }}/{{ item }}" # state: absent # loop: "{{ nginx_proxy_conf_files.stdout_lines }}" @@ -302,4 +301,4 @@ # - name: debug # debug: -# msg: "{{ vercel_domains.json | json_query('domains[*].{name: name, id: id}') }}" \ No newline at end of file +# msg: "{{ vercel_domains.json | json_query('domains[*].{name: name, id: id}') }}" diff --git a/roles/debug/tasks/main.yml b/roles/debug/tasks/main.yml index 2c021b1e..ca9e89fa 100644 --- a/roles/debug/tasks/main.yml +++ b/roles/debug/tasks/main.yml @@ -1,4 +1,5 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" tags: - - debug \ No newline at end of file + - debug diff --git a/roles/dind/defaults/main.yml b/roles/dind/defaults/main.yml index ce2af82e..ed5ebb4c 100644 --- a/roles/dind/defaults/main.yml +++ b/roles/dind/defaults/main.yml @@ -1 +1,2 @@ +--- dind_description: Docker in Docker diff --git a/roles/dind/meta/main.yml b/roles/dind/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/dind/meta/main.yml +++ b/roles/dind/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/dind/tasks/dind.yml b/roles/dind/tasks/dind.yml index 547afba3..b61ddf80 100644 --- a/roles/dind/tasks/dind.yml +++ b/roles/dind/tasks/dind.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ dind_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ dind_hostname }} + community.docker.docker_container: name: "{{ dind_hostname }}" labels: description: "{{ dind_description }}" @@ -15,4 +16,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ dind_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ dind_hostname }}|{{ role_name }}" diff --git a/roles/dind/tasks/main.yml b/roles/dind/tasks/main.yml index a722c2ba..e713ff87 100644 --- a/roles/dind/tasks/main.yml +++ b/roles/dind/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: dind_image is defined tags: - - dind \ No newline at end of file + - dind diff --git a/roles/docker/defaults/main.yml b/roles/docker/defaults/main.yml index f5098feb..406a5d33 100644 --- a/roles/docker/defaults/main.yml +++ b/roles/docker/defaults/main.yml @@ -1,7 +1,8 @@ -docker_data_dir: "/var/lib/docker" -docker_build_dir: "/srv/build" -docker_log_driver: "json-file" -docker_log_max_size: "10m" +--- +docker_data_dir: /var/lib/docker +docker_build_dir: /srv/build +docker_log_driver: json-file +docker_log_max_size: 10m docker_log_max_file: "3" docker_login_users: - - root \ No newline at end of file + - root diff --git a/roles/docker/handlers/main.yml b/roles/docker/handlers/main.yml index 3a186401..7f9f6234 100644 --- a/roles/docker/handlers/main.yml +++ b/roles/docker/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} service" - service: +--- +- name: Restart {{ role_name }} service + ansible.builtin.service: name: docker - state: restarted \ No newline at end of file + state: restarted diff --git a/roles/docker/tasks/docker-centos.yml b/roles/docker/tasks/docker-centos.yml index c99ac038..9788db24 100644 --- a/roles/docker/tasks/docker-centos.yml +++ b/roles/docker/tasks/docker-centos.yml @@ -1,18 +1,19 @@ -- name: "Add {{ role_name }} repo" - get_url: +--- +- name: Add {{ role_name }} repo + ansible.builtin.get_url: url: "{{ docker_yum_url }}" dest: /etc/yum.repos.d/docker-ce.repo -- name: "Enable {{ role_name }} {{ docker_yum_repo }} repo" - ini_file: +- name: Enable {{ role_name }} {{ docker_yum_repo }} repo + community.general.ini_file: dest: /etc/yum.repos.d/docker-ce.repo section: "{{ docker_yum_repo }}" option: enabled value: "0" -- name: "Install required {{ role_name }} packages" - include_role: +- name: Install required {{ role_name }} packages + ansible.builtin.include_role: name: package vars: packages: "{{ docker_packages }}" - when: docker_packages is defined \ No newline at end of file + when: docker_packages is defined diff --git a/roles/docker/tasks/docker-debian.yml b/roles/docker/tasks/docker-debian.yml index 0bacc706..ff637305 100644 --- a/roles/docker/tasks/docker-debian.yml +++ b/roles/docker/tasks/docker-debian.yml @@ -1,15 +1,16 @@ -- name: "Add {{ role_name }} gpg apt key" - apt_key: +--- +- name: Add {{ role_name }} gpg apt key + ansible.builtin.apt_key: url: "{{ docker_apt_url }}" state: present -- name: "Add {{ role_name }} repo" - apt_repository: +- name: Add {{ role_name }} repo + ansible.builtin.apt_repository: repo: "{{ docker_apt_repo }}" state: present -- name: "Install required {{ role_name }} packages" - include_role: +- name: Install required {{ role_name }} packages + ansible.builtin.include_role: name: package vars: packages: "{{ docker_packages }}" diff --git a/roles/docker/tasks/docker-login.yml b/roles/docker/tasks/docker-login.yml index 1114e64c..c7fca67a 100644 --- a/roles/docker/tasks/docker-login.yml +++ b/roles/docker/tasks/docker-login.yml @@ -1,7 +1,8 @@ -- name: "Log into Docker Hub" - docker_login: +--- +- name: Log into Docker Hub + community.docker.docker_login: username: "{{ docker_login_username }}" password: "{{ docker_login_password }}" become: true become_user: "{{ item }}" - loop: "{{ docker_login_users }}" \ No newline at end of file + loop: "{{ docker_login_users }}" diff --git a/roles/docker/tasks/docker-rocky.yml b/roles/docker/tasks/docker-rocky.yml index c99ac038..9788db24 100644 --- a/roles/docker/tasks/docker-rocky.yml +++ b/roles/docker/tasks/docker-rocky.yml @@ -1,18 +1,19 @@ -- name: "Add {{ role_name }} repo" - get_url: +--- +- name: Add {{ role_name }} repo + ansible.builtin.get_url: url: "{{ docker_yum_url }}" dest: /etc/yum.repos.d/docker-ce.repo -- name: "Enable {{ role_name }} {{ docker_yum_repo }} repo" - ini_file: +- name: Enable {{ role_name }} {{ docker_yum_repo }} repo + community.general.ini_file: dest: /etc/yum.repos.d/docker-ce.repo section: "{{ docker_yum_repo }}" option: enabled value: "0" -- name: "Install required {{ role_name }} packages" - include_role: +- name: Install required {{ role_name }} packages + ansible.builtin.include_role: name: package vars: packages: "{{ docker_packages }}" - when: docker_packages is defined \ No newline at end of file + when: docker_packages is defined diff --git a/roles/docker/tasks/docker-ubuntu.yml b/roles/docker/tasks/docker-ubuntu.yml index b9538bbc..ff637305 100644 --- a/roles/docker/tasks/docker-ubuntu.yml +++ b/roles/docker/tasks/docker-ubuntu.yml @@ -1,16 +1,17 @@ -- name: "Add {{ role_name }} gpg apt key" - apt_key: +--- +- name: Add {{ role_name }} gpg apt key + ansible.builtin.apt_key: url: "{{ docker_apt_url }}" state: present -- name: "Add {{ role_name }} repo" - apt_repository: +- name: Add {{ role_name }} repo + ansible.builtin.apt_repository: repo: "{{ docker_apt_repo }}" state: present -- name: "Install required {{ role_name }} packages" - include_role: +- name: Install required {{ role_name }} packages + ansible.builtin.include_role: name: package vars: packages: "{{ docker_packages }}" - when: docker_packages is defined \ No newline at end of file + when: docker_packages is defined diff --git a/roles/docker/tasks/docker.yml b/roles/docker/tasks/docker.yml index cf260587..8773c0e6 100644 --- a/roles/docker/tasks/docker.yml +++ b/roles/docker/tasks/docker.yml @@ -1,21 +1,22 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ docker_data_dir }}" state: directory -- name: "Ensure {{ role_name }} config dir exists" - file: - path: "/etc/docker/" +- name: Ensure {{ role_name }} config dir exists + ansible.builtin.file: + path: /etc/docker/ state: directory -- name: "Copy {{ role_name }} deamon conf" - template: - src: "deamon.json" - dest: "/etc/docker/daemon.json" - notify: "Restart {{ role_name }} service" +- name: Copy {{ role_name }} deamon conf + ansible.builtin.template: + src: deamon.json + dest: /etc/docker/daemon.json + notify: Restart {{ role_name }} service -- name: "Ensure {{ role_name }} deamon is running" - service: +- name: Ensure {{ role_name }} deamon is running + ansible.builtin.service: name: docker state: started - enabled: true \ No newline at end of file + enabled: true diff --git a/roles/docker/tasks/main.yml b/roles/docker/tasks/main.yml index 74f3f311..e81e9215 100644 --- a/roles/docker/tasks/main.yml +++ b/roles/docker/tasks/main.yml @@ -1,43 +1,44 @@ +--- - name: Show distribution - debug: + ansible.builtin.debug: msg: "Distribution: {{ ansible_distribution }}\nMajor Version: {{ ansible_distribution_major_version }}" -- name: "Include {{ role_name }} ubuntu tasks" - include_tasks: "{{ role_name }}-ubuntu.yml" +- name: Include {{ role_name }} ubuntu tasks + ansible.builtin.include_tasks: "{{ role_name }}-ubuntu.yml" when: docker_packages is defined and (ansible_distribution == 'Ubuntu') tags: - docker - docker-ubuntu -- name: "Include {{ role_name }} centos tasks" - include_tasks: "{{ role_name }}-centos.yml" +- name: Include {{ role_name }} centos tasks + ansible.builtin.include_tasks: "{{ role_name }}-centos.yml" when: docker_packages is defined and (ansible_distribution == 'CentOS') tags: - docker - docker-centos -- name: "Include {{ role_name }} debian tasks" - include_tasks: "{{ role_name }}-debian.yml" +- name: Include {{ role_name }} debian tasks + ansible.builtin.include_tasks: "{{ role_name }}-debian.yml" when: docker_packages is defined and (ansible_distribution == 'Debian') tags: - docker - docker-debian -- name: "Include {{ role_name }} debian tasks" - include_tasks: "{{ role_name }}-rocky.yml" +- name: Include {{ role_name }} debian tasks + ansible.builtin.include_tasks: "{{ role_name }}-rocky.yml" when: docker_packages is defined and (ansible_distribution == 'Rocky') tags: - docker - docker-rocky -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: docker_packages is defined tags: - docker -- name: "Include {{ role_name }} login tasks" - include_tasks: "{{ role_name }}-login.yml" +- name: Include {{ role_name }} login tasks + ansible.builtin.include_tasks: "{{ role_name }}-login.yml" when: docker_login_username is defined tags: - docker diff --git a/roles/docker_compose/defaults/main.yml b/roles/docker_compose/defaults/main.yml index b578cf84..c7c76a05 100644 --- a/roles/docker_compose/defaults/main.yml +++ b/roles/docker_compose/defaults/main.yml @@ -1,2 +1,3 @@ -docker_compose_data_dir: "/usr/share/{{ docker_compose_project_name }}" -docker_compose_version: "2.24.1" \ No newline at end of file +--- +docker_compose_data_dir: /usr/share/{{ docker_compose_project_name }} +docker_compose_version: 2.24.1 diff --git a/roles/docker_compose/handlers/main.yml b/roles/docker_compose/handlers/main.yml index ac58366d..6599330a 100644 --- a/roles/docker_compose/handlers/main.yml +++ b/roles/docker_compose/handlers/main.yml @@ -1,5 +1,6 @@ -- name: "Restart {{ role_name }} project" - command: "/usr/local/bin/docker-compose -p {{ docker_compose_project_name }} restart" +--- +- name: Restart {{ role_name }} project + ansible.builtin.command: /usr/local/bin/docker-compose -p {{ docker_compose_project_name }} restart args: chdir: "{{ docker_compose_data_dir }}" changed_when: true diff --git a/roles/docker_compose/meta/main.yml b/roles/docker_compose/meta/main.yml index e2ac83e0..f2cd0804 100644 --- a/roles/docker_compose/meta/main.yml +++ b/roles/docker_compose/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: docker_network tags: @@ -6,4 +7,4 @@ dependencies: # noqa 701 - role: docker_volume tags: - docker_volume - - depends \ No newline at end of file + - depends diff --git a/roles/docker_compose/tasks/docker_compose.yml b/roles/docker_compose/tasks/docker_compose.yml index bc065c92..e809207d 100644 --- a/roles/docker_compose/tasks/docker_compose.yml +++ b/roles/docker_compose/tasks/docker_compose.yml @@ -1,56 +1,57 @@ -- name: "Check current {{ role_name }} version" - command: /usr/local/bin/docker-compose --version +--- +- name: Check current {{ role_name }} version + ansible.builtin.command: /usr/local/bin/docker-compose --version register: docker_compose_vsn changed_when: false failed_when: false -- name: "Set current {{ role_name }} version" - set_fact: +- name: Set current {{ role_name }} version + ansible.builtin.set_fact: docker_compose_current_version: "{{ docker_compose_vsn.stdout | regex_search('(\\d+(\\.\\d+)+)') }}" when: docker_compose_vsn.stdout | regex_search("version") -- name: "Install {{ role_name }} {{ docker_compose_version }}" - get_url: - url : "https://github.com/docker/compose/releases/download/v{{ docker_compose_version }}/docker-compose-Linux-x86_64" +- name: Install {{ role_name }} {{ docker_compose_version }} + ansible.builtin.get_url: + url: https://github.com/docker/compose/releases/download/v{{ docker_compose_version }}/docker-compose-Linux-x86_64 dest: /usr/local/bin/docker-compose force: true - mode: "u+rx,g+rx" + mode: u+rx,g+rx when: docker_compose_current_version is not defined or docker_compose_current_version != docker_compose_version -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ docker_compose_data_dir }}" state: directory -- name: "Copy {{ role_name }} dotenv" - template: +- name: Copy {{ role_name }} dotenv + ansible.builtin.template: src: dotenv dest: "{{ docker_compose_data_dir }}/.env" notify: Restart {{ role_name }} project -- name: "Copy {{ role_name }} config" - template: +- name: Copy {{ role_name }} config + ansible.builtin.template: src: docker-compose.yml dest: "{{ docker_compose_data_dir }}/docker-compose.yml" notify: Restart {{ role_name }} project when: docker_compose_definition is defined -- name: "Include docker volume role" - include_role: +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volumes: "{{ docker_compose_volumes }}" when: docker_compose_volumes is defined - name: Include restic client role for docker compose backup - include_role: + ansible.builtin.include_role: name: restic_client vars: restic_backup_set: "{{ docker_compose_backup_set }}" when: docker_compose_backup_set is defined -- name: "Start {{ role_name }} project" - command: "/usr/local/bin/docker-compose -p {{ docker_compose_project_name }} up -d" +- name: Start {{ role_name }} project + ansible.builtin.command: /usr/local/bin/docker-compose -p {{ docker_compose_project_name }} up -d args: chdir: "{{ docker_compose_data_dir }}" register: result diff --git a/roles/docker_compose/tasks/main.yml b/roles/docker_compose/tasks/main.yml index db2b87e7..5fcab799 100644 --- a/roles/docker_compose/tasks/main.yml +++ b/roles/docker_compose/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: docker_compose_project_name is defined tags: - - docker_compose \ No newline at end of file + - docker_compose diff --git a/roles/docker_hosts/defaults/main.yml b/roles/docker_hosts/defaults/main.yml index d3689d73..dbb8a055 100644 --- a/roles/docker_hosts/defaults/main.yml +++ b/roles/docker_hosts/defaults/main.yml @@ -1 +1,2 @@ +--- docker_hosts_enable: true diff --git a/roles/docker_hosts/meta/main.yml b/roles/docker_hosts/meta/main.yml index fbc1390f..c2e3bea6 100644 --- a/roles/docker_hosts/meta/main.yml +++ b/roles/docker_hosts/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker tags: - docker - - depends \ No newline at end of file + - depends diff --git a/roles/docker_hosts/tasks/docker_hosts.yml b/roles/docker_hosts/tasks/docker_hosts.yml index 537a89a7..37f88ac9 100644 --- a/roles/docker_hosts/tasks/docker_hosts.yml +++ b/roles/docker_hosts/tasks/docker_hosts.yml @@ -1,30 +1,31 @@ +--- - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto - name: Fail if package jq is not installed - fail: - msg: "Package jq not installed" + ansible.builtin.fail: + msg: Package jq not installed when: "'jq' not in ansible_facts.packages" -- name: "Copy {{ role_name }} scripts" - copy: +- name: Copy {{ role_name }} scripts + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-update-hosts -- name: "Copy {{ role_name }} service" - copy: +- name: Copy {{ role_name }} service + ansible.builtin.copy: src: "{{ item }}" - dest: "/etc/systemd/system/{{ item }}" + dest: /etc/systemd/system/{{ item }} mode: +x loop: - docker-update-hosts.service -- name: "Start {{ role_name }} service" - service: +- name: Start {{ role_name }} service + ansible.builtin.service: name: docker-update-hosts state: started - enabled: true \ No newline at end of file + enabled: true diff --git a/roles/docker_hosts/tasks/main.yml b/roles/docker_hosts/tasks/main.yml index 83fb0e28..8d3606cd 100644 --- a/roles/docker_hosts/tasks/main.yml +++ b/roles/docker_hosts/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: docker_hosts_enable tags: - docker_hosts diff --git a/roles/docker_network/defaults/main.yml b/roles/docker_network/defaults/main.yml index 2ddd49a4..59ce3132 100644 --- a/roles/docker_network/defaults/main.yml +++ b/roles/docker_network/defaults/main.yml @@ -1 +1,2 @@ -docker_network_driver: bridge \ No newline at end of file +--- +docker_network_driver: bridge diff --git a/roles/docker_network/meta/main.yml b/roles/docker_network/meta/main.yml index fbc1390f..c2e3bea6 100644 --- a/roles/docker_network/meta/main.yml +++ b/roles/docker_network/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker tags: - docker - - depends \ No newline at end of file + - depends diff --git a/roles/docker_network/tasks/docker_network.yml b/roles/docker_network/tasks/docker_network.yml index b04342d7..327af84e 100644 --- a/roles/docker_network/tasks/docker_network.yml +++ b/roles/docker_network/tasks/docker_network.yml @@ -1,12 +1,13 @@ +--- - name: Create docker network - docker_network: + community.docker.docker_network: name: "{{ docker_network_name }}" driver: "{{ docker_network_driver }}" - name: Set docker network subnet - docker_network: + community.docker.docker_network: name: "{{ docker_network_name }}" driver: "{{ docker_network_driver }}" ipam_config: - - subnet: "{{ docker_network_subnet }}" - when: docker_network_subnet is defined \ No newline at end of file + - subnet: "{{ docker_network_subnet }}" + when: docker_network_subnet is defined diff --git a/roles/docker_network/tasks/main.yml b/roles/docker_network/tasks/main.yml index f997a3ba..517e4d6c 100644 --- a/roles/docker_network/tasks/main.yml +++ b/roles/docker_network/tasks/main.yml @@ -1,5 +1,6 @@ +--- - name: Include {{ role_name }} tasks - include_tasks: "{{ role_name }}.yml" + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: docker_network_name is defined tags: - docker_network diff --git a/roles/docker_swarm/defaults/main.yml b/roles/docker_swarm/defaults/main.yml index 900e2767..d89757e2 100644 --- a/roles/docker_swarm/defaults/main.yml +++ b/roles/docker_swarm/defaults/main.yml @@ -1 +1,2 @@ -docker_swarm_enable: false \ No newline at end of file +--- +docker_swarm_enable: false diff --git a/roles/docker_swarm/meta/main.yml b/roles/docker_swarm/meta/main.yml index fbc1390f..c2e3bea6 100644 --- a/roles/docker_swarm/meta/main.yml +++ b/roles/docker_swarm/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker tags: - docker - - depends \ No newline at end of file + - depends diff --git a/roles/docker_swarm/tasks/docker_swarm.yml b/roles/docker_swarm/tasks/docker_swarm.yml index 60d18634..d6d3df6b 100644 --- a/roles/docker_swarm/tasks/docker_swarm.yml +++ b/roles/docker_swarm/tasks/docker_swarm.yml @@ -1,3 +1,4 @@ +--- - name: Init a new swarm with default parameters - docker_swarm: - state: present \ No newline at end of file + community.docker.docker_swarm: + state: present diff --git a/roles/docker_swarm/tasks/main.yml b/roles/docker_swarm/tasks/main.yml index 049a8729..cec9dc5a 100644 --- a/roles/docker_swarm/tasks/main.yml +++ b/roles/docker_swarm/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: docker_swarm_enable tags: - - docker_swarm \ No newline at end of file + - docker_swarm diff --git a/roles/docker_volume/meta/main.yml b/roles/docker_volume/meta/main.yml index fbc1390f..c2e3bea6 100644 --- a/roles/docker_volume/meta/main.yml +++ b/roles/docker_volume/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker tags: - docker - - depends \ No newline at end of file + - depends diff --git a/roles/docker_volume/tasks/docker_volume.yml b/roles/docker_volume/tasks/docker_volume.yml index e000d1a6..5638b433 100644 --- a/roles/docker_volume/tasks/docker_volume.yml +++ b/roles/docker_volume/tasks/docker_volume.yml @@ -1,10 +1,11 @@ +--- - name: Create docker volume - docker_volume: + community.docker.docker_volume: name: "{{ docker_volume_name }}" when: docker_volume_name is defined - name: Create docker volume - docker_volume: + community.docker.docker_volume: name: "{{ item.name }}" loop: "{{ docker_volumes }}" when: docker_volumes is defined diff --git a/roles/docker_volume/tasks/docker_volume_backup.yml b/roles/docker_volume/tasks/docker_volume_backup.yml index fada1973..f5bf5608 100644 --- a/roles/docker_volume/tasks/docker_volume_backup.yml +++ b/roles/docker_volume/tasks/docker_volume_backup.yml @@ -1,6 +1,7 @@ +--- - name: Include docker volume backup from restic client role - include_role: + ansible.builtin.include_role: name: restic_client vars: restic_backup_set: "{{ docker_volume_backup_set }}" - when: docker_volume_backup_set is defined \ No newline at end of file + when: docker_volume_backup_set is defined diff --git a/roles/docker_volume/tasks/docker_volume_scripts.yml b/roles/docker_volume/tasks/docker_volume_scripts.yml index 9e05c8c7..1ab7e1fb 100644 --- a/roles/docker_volume/tasks/docker_volume_scripts.yml +++ b/roles/docker_volume/tasks/docker_volume_scripts.yml @@ -1,9 +1,10 @@ +--- - name: Copy backup scripts - copy: + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-volume-backup - docker-volume-restore - - docker-volume-copy \ No newline at end of file + - docker-volume-copy diff --git a/roles/docker_volume/tasks/main.yml b/roles/docker_volume/tasks/main.yml index 7140764d..28e11f66 100644 --- a/roles/docker_volume/tasks/main.yml +++ b/roles/docker_volume/tasks/main.yml @@ -1,16 +1,17 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: docker_volume_name is defined or docker_volumes is defined tags: - docker_volume -- name: "Include {{ role_name }} backup tasks" - include_tasks: "{{ role_name }}_backup.yml" +- name: Include {{ role_name }} backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_backup.yml" when: docker_volume_backup_set is defined tags: - docker_volume -- name: "Include {{ role_name }} scripts tasks" - include_tasks: "{{ role_name }}_scripts.yml" +- name: Include {{ role_name }} scripts tasks + ansible.builtin.include_tasks: "{{ role_name }}_scripts.yml" tags: - - docker_volume \ No newline at end of file + - docker_volume diff --git a/roles/dozzle/defaults/main.yml b/roles/dozzle/defaults/main.yml index 4f869fba..e0f37c6f 100644 --- a/roles/dozzle/defaults/main.yml +++ b/roles/dozzle/defaults/main.yml @@ -1,5 +1,6 @@ +--- dozzle_description: Dozzle dozzle_username: dozzle dozzle_password: "{{ vault_dozzle_password }}" dozzle_base: / -dozzle_filter: "" \ No newline at end of file +dozzle_filter: "" diff --git a/roles/dozzle/tasks/dozzle.yml b/roles/dozzle/tasks/dozzle.yml index cf7903de..751d2daf 100644 --- a/roles/dozzle/tasks/dozzle.yml +++ b/roles/dozzle/tasks/dozzle.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ dozzle_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ dozzle_hostname }} + community.docker.docker_container: name: "{{ dozzle_hostname }}" labels: description: "{{ dozzle_description }}" @@ -13,11 +14,11 @@ DOZZLE_FILTER: "{{ dozzle_filter }}" ports: "{{ dozzle_ports | default([]) }}" volumes: - - "/var/run/docker.sock:/var/run/docker.sock:ro" + - /var/run/docker.sock:/var/run/docker.sock:ro networks: - name: "{{ docker_network_name }}" log_driver: "{{ docker_log_driver }}" log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ dozzle_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ dozzle_hostname }}|{{ role_name }}" diff --git a/roles/dozzle/tasks/main.yml b/roles/dozzle/tasks/main.yml index ea48b961..337078e7 100644 --- a/roles/dozzle/tasks/main.yml +++ b/roles/dozzle/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: dozzle_image is defined tags: - - dozzle \ No newline at end of file + - dozzle diff --git a/roles/dribdat/defaults/main.yml b/roles/dribdat/defaults/main.yml index 0d648bea..59a0e005 100644 --- a/roles/dribdat/defaults/main.yml +++ b/roles/dribdat/defaults/main.yml @@ -1,3 +1,4 @@ +--- dribdat_volume_name: "{{ dribdat_hostname }}" dribdat_description: dribdat dribdat_secret: "{{ vault_dribdat_secret }}" @@ -9,4 +10,4 @@ dribdat_mail_password: "{{ vault_dribdat_mail_password }}" dribdat_mail_use_tls: "false" dribdat_mail_use_ssl: "false" dribdat_oauth_secret: "{{ vault_dribdat_oauth_secret }}" -dribdat_s3_secret: "{{ vault_dribdat_s3_secret }}" \ No newline at end of file +dribdat_s3_secret: "{{ vault_dribdat_s3_secret }}" diff --git a/roles/dribdat/meta/main.yml b/roles/dribdat/meta/main.yml index 048ff76e..80d1be24 100644 --- a/roles/dribdat/meta/main.yml +++ b/roles/dribdat/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: postgres tags: - postgres - - depends \ No newline at end of file + - depends diff --git a/roles/dribdat/tasks/dribdat.yml b/roles/dribdat/tasks/dribdat.yml index a5054df4..0bb5ccb6 100644 --- a/roles/dribdat/tasks/dribdat.yml +++ b/roles/dribdat/tasks/dribdat.yml @@ -1,24 +1,25 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ dribdat_volume_name }}" docker_volume_backup_set: "{{ dribdat_volume_backup_set | default([]) }}" when: dribdat_volume_name is defined -- name: "Init {{ role_name }} env" - set_fact: +- name: Init {{ role_name }} env + ansible.builtin.set_fact: dribdat_env: - DRIBDAT_ENV: "prod" - TIME_ZONE: "Europe/Zurich" + DRIBDAT_ENV: prod + TIME_ZONE: Europe/Zurich SERVER_SSL: "false" SERVER_URL: "{{ dribdat_server_name }}" DRIBDAT_SECRET: "{{ dribdat_secret }}" - DATABASE_URL: "postgresql://{{ dribdat_postgres_user }}:{{ dribdat_postgres_password }}@{{ dribdat_postgres_hostname }}/{{ dribdat_postgres_database }}" + DATABASE_URL: postgresql://{{ dribdat_postgres_user }}:{{ dribdat_postgres_password }}@{{ dribdat_postgres_hostname }}/{{ dribdat_postgres_database }} DRIBDAT_NOT_REGISTER: "{{ dribdat_not_register }}" -- name: "Append mail config to {{ role_name }} env" - set_fact: +- name: Append mail config to {{ role_name }} env + ansible.builtin.set_fact: dribdat_env: "{{ dribdat_env | combine(item) }}" with_items: - MAIL_SERVER: "{{ dribdat_mail_server }}" @@ -30,8 +31,8 @@ - MAIL_USE_SSL: "{{ dribdat_mail_use_ssl }}" when: dribdat_mail_server is defined -- name: "Append S3 config to {{ role_name }} env" - set_fact: +- name: Append S3 config to {{ role_name }} env + ansible.builtin.set_fact: dribdat_env: "{{ dribdat_env | combine(item) }}" with_items: - S3_KEY: "{{ dribdat_s3_key }}" @@ -43,8 +44,8 @@ - MAX_CONTENT_LENGTH: "3000000" when: dribdat_s3_key is defined -- name: "Append OAuth config to {{ role_name }} env" - set_fact: +- name: Append OAuth config to {{ role_name }} env + ansible.builtin.set_fact: dribdat_env: "{{ dribdat_env | combine(item) }}" with_items: - OAUTH_TYPE: "{{ dribdat_oauth_type }}" @@ -52,8 +53,8 @@ - OAUTH_SECRET: "{{ dribdat_oauth_secret }}" when: dribdat_oauth_type is defined -- name: "Start {{ role_name }} container {{ dribdat_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ dribdat_hostname }} + community.docker.docker_container: name: "{{ dribdat_hostname }}" labels: description: "{{ dribdat_description }}" @@ -69,4 +70,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ dribdat_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ dribdat_hostname }}|{{ role_name }}" diff --git a/roles/dribdat/tasks/main.yml b/roles/dribdat/tasks/main.yml index e3a6875d..1299c827 100644 --- a/roles/dribdat/tasks/main.yml +++ b/roles/dribdat/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: dribdat_image is defined tags: - - dribdat \ No newline at end of file + - dribdat diff --git a/roles/elasticsearch/defaults/main.yml b/roles/elasticsearch/defaults/main.yml index be68b6e1..c0245afd 100644 --- a/roles/elasticsearch/defaults/main.yml +++ b/roles/elasticsearch/defaults/main.yml @@ -1,3 +1,4 @@ +--- elasticsearch_data_dir: "{{ elasticsearch_hostname }}" elasticsearch_volume_name: "{{ elasticsearch_hostname }}" -elasticsearch_description: Elasticsearch \ No newline at end of file +elasticsearch_description: Elasticsearch diff --git a/roles/elasticsearch/handlers/main.yml b/roles/elasticsearch/handlers/main.yml index 13fb5e10..b181067f 100644 --- a/roles/elasticsearch/handlers/main.yml +++ b/roles/elasticsearch/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ elasticsearch_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: elasticsearch:custom build: path: "{{ docker_build_dir }}/{{ elasticsearch_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/elasticsearch/meta/main.yml b/roles/elasticsearch/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/elasticsearch/meta/main.yml +++ b/roles/elasticsearch/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/elasticsearch/tasks/elasticsearch-cluster.yml b/roles/elasticsearch/tasks/elasticsearch-cluster.yml index c4f83a1f..ae6afd75 100644 --- a/roles/elasticsearch/tasks/elasticsearch-cluster.yml +++ b/roles/elasticsearch/tasks/elasticsearch-cluster.yml @@ -1,35 +1,36 @@ +--- - name: Set max map count - sysctl: + ansible.posix.sysctl: name: vm.max_map_count value: "262144" state: present -- name: "Create {{ role_name }} node volume" - docker_volume: +- name: Create {{ role_name }} node volume + community.docker.docker_volume: name: "{{ item.volume_name }}" when: item.volume_name is defined loop: "{{ elasticsearch_nodes }}" -- name: "Ensure {{ role_name }} node data dir exists" - file: +- name: Ensure {{ role_name }} node data dir exists + ansible.builtin.file: path: "{{ item.data_dir }}" state: directory loop: "{{ elasticsearch_nodes }}" - name: Copy ca keystore - copy: + ansible.builtin.copy: src: elastic-stack-ca.p12 dest: "{{ item.data_dir }}/certs/" loop: "{{ elasticsearch_nodes }}" - name: Copy node keystore - copy: + ansible.builtin.copy: src: elastic-certificates.p12 dest: "{{ item.data_dir }}/certs/" loop: "{{ elasticsearch_nodes }}" -- name: "Start {{ role_name }} container {{ item.hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ item.hostname }} + community.docker.docker_container: name: "{{ item.hostname }}" labels: description: "{{ item.description }}" @@ -42,7 +43,7 @@ discovery.seed_hosts: "{{ item.seed_hosts }}" cluster.initial_master_nodes: "{{ elasticsearch_masternodes }}" bootstrap.memory_lock: "true" - ES_JAVA_OPTS: "-Xms512m -Xmx512m" + ES_JAVA_OPTS: -Xms512m -Xmx512m ELASTIC_PASSWORD: "{{ elasticsearch_password }}" xpack.security.enabled: "true" xpack.security.transport.ssl.enabled: "true" @@ -69,8 +70,8 @@ when: item.primary register: start_elasticsearch_primary_node -- name: "Start {{ role_name }} container {{ item.hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ item.hostname }} + community.docker.docker_container: name: "{{ item.hostname }}" labels: description: "{{ item.description }}" @@ -83,7 +84,7 @@ discovery.seed_hosts: "{{ item.seed_hosts }}" cluster.initial_master_nodes: "{{ elasticsearch_masternodes }}" bootstrap.memory_lock: "true" - ES_JAVA_OPTS: "-Xms512m -Xmx512m" + ES_JAVA_OPTS: -Xms512m -Xmx512m ELASTIC_PASSWORD: "{{ elasticsearch_password }}" xpack.security.enabled: "true" xpack.security.transport.ssl.enabled: "true" @@ -106,7 +107,7 @@ loop: "{{ elasticsearch_nodes }}" when: not item.primary -- name: "Wait for {{ role_name }} primary node container to boot" # noqa 503 - pause: +- name: Wait for {{ role_name }} primary node container to boot # noqa 503 + ansible.builtin.pause: seconds: "60" when: start_elasticsearch_primary_node.changed diff --git a/roles/elasticsearch/tasks/elasticsearch-users.yml b/roles/elasticsearch/tasks/elasticsearch-users.yml index db8c4d64..b9c6cabe 100644 --- a/roles/elasticsearch/tasks/elasticsearch-users.yml +++ b/roles/elasticsearch/tasks/elasticsearch-users.yml @@ -1,6 +1,6 @@ - +--- - name: Test password for builtin users - uri: + ansible.builtin.uri: url: http://localhost:9200/_xpack?pretty user: "{{ item.name }}" password: "{{ item.password }}" @@ -10,12 +10,12 @@ register: request - name: Set password if authentication failed - uri: - url: "http://localhost:9200/_security/user/{{ item.item.name }}/_password" + ansible.builtin.uri: + url: http://localhost:9200/_security/user/{{ item.item.name }}/_password user: elastic password: "{{ elasticsearch_password }}" method: POST body_format: json - body: "{ \"password\": \"{{ item.item.password }}\" }" + body: '{ "password": "{{ item.item.password }}" }' loop: "{{ request.results }}" - when: item.failed \ No newline at end of file + when: item.failed diff --git a/roles/elasticsearch/tasks/elasticsearch.yml b/roles/elasticsearch/tasks/elasticsearch.yml index 761ffb88..88012a16 100644 --- a/roles/elasticsearch/tasks/elasticsearch.yml +++ b/roles/elasticsearch/tasks/elasticsearch.yml @@ -1,37 +1,37 @@ +--- - name: Set max map count - sysctl: + ansible.posix.sysctl: name: vm.max_map_count value: "262144" state: present -- name: "Create {{ role_name }} volume" - docker_volume: +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ elasticsearch_volume_name }}" -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ elasticsearch_data_dir }}" state: directory -- name: "Ensure {{ role_name }} build dir exists" - file: +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ elasticsearch_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ elasticsearch_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers - -- name: "Start {{ role_name }} container" - docker_container: + ansible.builtin.meta: flush_handlers +- name: Start {{ role_name }} container + community.docker.docker_container: name: "{{ elasticsearch_hostname }}" labels: description: "{{ elasticsearch_description }}" @@ -39,12 +39,12 @@ restart_policy: unless-stopped recreate: false ports: - - "127.0.0.1:9200:9200" - - "127.0.0.1:9300:9300" + - 127.0.0.1:9200:9200 + - 127.0.0.1:9300:9300 env: ES_SETTING_NODE_NAME: "{{ elasticsearch_hostname }}" - ES_SETTING_DISCOVERY_TYPE: "single-node" - ES_JAVA_OPTS: "-Xms512m -Xmx512m" + ES_SETTING_DISCOVERY_TYPE: single-node + ES_JAVA_OPTS: -Xms512m -Xmx512m ELASTIC_PASSWORD: "{{ elasticsearch_password }}" volumes: - "{{ elasticsearch_volume_name }}:/usr/share/elasticsearch/data" @@ -62,7 +62,7 @@ register: start_elasticsearch_single_node # FIXME: Check in docker logs -- name: "Wait for {{ role_name }} container to boot" # noqa 503 - pause: +- name: Wait for {{ role_name }} container to boot # noqa 503 + ansible.builtin.pause: seconds: "60" when: start_elasticsearch_single_node.changed diff --git a/roles/elasticsearch/tasks/main.yml b/roles/elasticsearch/tasks/main.yml index 5162ee68..8b016bb2 100644 --- a/roles/elasticsearch/tasks/main.yml +++ b/roles/elasticsearch/tasks/main.yml @@ -1,17 +1,18 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: elasticsearch_image is defined tags: - - elasticsearch + - elasticsearch -- name: "Include {{ role_name }} cluster tasks" - include_tasks: "{{ role_name }}-cluster.yml" +- name: Include {{ role_name }} cluster tasks + ansible.builtin.include_tasks: "{{ role_name }}-cluster.yml" when: elasticsearch_cluster_name is defined tags: - - elasticsearch + - elasticsearch -- name: "Include {{ role_name }} users tasks" - include_tasks: "{{ role_name }}-users.yml" +- name: Include {{ role_name }} users tasks + ansible.builtin.include_tasks: "{{ role_name }}-users.yml" when: elasticsearch_users is defined tags: - - elasticsearch \ No newline at end of file + - elasticsearch diff --git a/roles/fail2ban/defaults/main.yml b/roles/fail2ban/defaults/main.yml index b7d1fb9e..96eff095 100644 --- a/roles/fail2ban/defaults/main.yml +++ b/roles/fail2ban/defaults/main.yml @@ -1,5 +1,6 @@ +--- fail2ban_packages: - name: fail2ban fail2ban_enabled: false fail2ban_sshd_enabled: "true" -fail2ban_bantime: "1d" \ No newline at end of file +fail2ban_bantime: 1d diff --git a/roles/fail2ban/handlers/main.yml b/roles/fail2ban/handlers/main.yml index 0c01d435..0159ff10 100644 --- a/roles/fail2ban/handlers/main.yml +++ b/roles/fail2ban/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} service" - service: +--- +- name: Restart {{ role_name }} service + ansible.builtin.service: name: fail2ban - state: restarted \ No newline at end of file + state: restarted diff --git a/roles/fail2ban/tasks/fail2ban.yml b/roles/fail2ban/tasks/fail2ban.yml index ff542fb6..49b71d3e 100644 --- a/roles/fail2ban/tasks/fail2ban.yml +++ b/roles/fail2ban/tasks/fail2ban.yml @@ -1,17 +1,18 @@ -- name: "Install required {{ role_name }} packages" - include_role: +--- +- name: Install required {{ role_name }} packages + ansible.builtin.include_role: name: package vars: packages: "{{ fail2ban_packages }}" -- name: "Ensure {{ role_name }} deamon is running" - service: +- name: Ensure {{ role_name }} deamon is running + ansible.builtin.service: name: fail2ban state: started enabled: true -- name: "Set {{ role_name }} local config" - template: +- name: Set {{ role_name }} local config + ansible.builtin.template: src: jail.local dest: /etc/fail2ban/jail.local - notify: "Restart {{ role_name }} service" \ No newline at end of file + notify: Restart {{ role_name }} service diff --git a/roles/fail2ban/tasks/main.yml b/roles/fail2ban/tasks/main.yml index 486b3438..be5b90bf 100644 --- a/roles/fail2ban/tasks/main.yml +++ b/roles/fail2ban/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: fail2ban_enabled tags: - - fail2ban_enabled \ No newline at end of file + - fail2ban_enabled diff --git a/roles/fathom/defaults/main.yml b/roles/fathom/defaults/main.yml index 7dc641c7..c63ab805 100644 --- a/roles/fathom/defaults/main.yml +++ b/roles/fathom/defaults/main.yml @@ -1 +1,2 @@ -fathom_descripotion: Fathom \ No newline at end of file +--- +fathom_descripotion: Fathom diff --git a/roles/fathom/meta/main.yml b/roles/fathom/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/fathom/meta/main.yml +++ b/roles/fathom/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/fathom/tasks/fathom.yml b/roles/fathom/tasks/fathom.yml index 0079451b..5f8a96f6 100644 --- a/roles/fathom/tasks/fathom.yml +++ b/roles/fathom/tasks/fathom.yml @@ -1,9 +1,10 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ fathom_volume_name }}" -- name: "Start {{ role_name }} container {{ fathom_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ fathom_hostname }} + community.docker.docker_container: name: "{{ fathom_hostname }}" labels: description: "{{ fathom_description }}" @@ -17,4 +18,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ fathom_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ fathom_hostname }}|{{ role_name }}" diff --git a/roles/fathom/tasks/main.yml b/roles/fathom/tasks/main.yml index 4c12cb31..e5146b29 100644 --- a/roles/fathom/tasks/main.yml +++ b/roles/fathom/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: fathom_image is defined tags: - - fathom \ No newline at end of file + - fathom diff --git a/roles/fstab/tasks/fstab.yml b/roles/fstab/tasks/fstab.yml index 3e9fac90..7b1badf4 100644 --- a/roles/fstab/tasks/fstab.yml +++ b/roles/fstab/tasks/fstab.yml @@ -1,11 +1,12 @@ +--- - name: Setup credentials - template: + ansible.builtin.template: src: credentials - dest: "/root/.credentials" - mode: 0600 + dest: /root/.credentials + mode: "0600" loop: "{{ fstab_credentials }}" when: fstab_credentials is defined - name: Mount and bind a volume - mount: "{{ item }}" - loop: "{{ fstab_mounts }}" \ No newline at end of file + ansible.posix.mount: "{{ item }}" + loop: "{{ fstab_mounts }}" diff --git a/roles/fstab/tasks/main.yml b/roles/fstab/tasks/main.yml index 2aeb4dcd..b1b9b063 100644 --- a/roles/fstab/tasks/main.yml +++ b/roles/fstab/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: fstab_mounts is defined tags: - fstab diff --git a/roles/git/tasks/git.yml b/roles/git/tasks/git.yml index 776dfe82..ba9b9b24 100644 --- a/roles/git/tasks/git.yml +++ b/roles/git/tasks/git.yml @@ -1,14 +1,15 @@ +--- - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto - name: Fail if package git is not installed - fail: - msg: "Package restic not installed" + ansible.builtin.fail: + msg: Package restic not installed when: "'git' not in ansible_facts.packages" - name: Git ssh checkout - git: + ansible.builtin.git: repo: "{{ item.repo }}" dest: "{{ item.dest }}" version: "{{ item.version }}" @@ -16,7 +17,7 @@ when: item.repo is regex('git:\/\/') - name: Git https checkout - git: + ansible.builtin.git: repo: "{{ item.repo }}" dest: "{{ item.dest }}" version: "{{ item.version }}" diff --git a/roles/git/tasks/main.yml b/roles/git/tasks/main.yml index c317342f..9934e4b1 100644 --- a/roles/git/tasks/main.yml +++ b/roles/git/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: git_repositories is defined tags: - - git \ No newline at end of file + - git diff --git a/roles/gitea/defaults/main.yml b/roles/gitea/defaults/main.yml index f591868c..a72a8b1f 100644 --- a/roles/gitea/defaults/main.yml +++ b/roles/gitea/defaults/main.yml @@ -1,3 +1,4 @@ +--- gitea_volume_name: "{{ gitea_hostname }}" gitea_description: Gitea gitea_user: git @@ -5,4 +6,4 @@ gitea_postgres_database: gitea gitea_postgres_user: gitea gitea_postgres_password: "{{ vault_gitea_postgres_password }}" gitea_ports: - - "222:22" \ No newline at end of file + - "222:22" diff --git a/roles/gitea/meta/main.yml b/roles/gitea/meta/main.yml index 048ff76e..80d1be24 100644 --- a/roles/gitea/meta/main.yml +++ b/roles/gitea/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: postgres tags: - postgres - - depends \ No newline at end of file + - depends diff --git a/roles/gitea/tasks/gitea.yml b/roles/gitea/tasks/gitea.yml index fec39fbb..730936f7 100644 --- a/roles/gitea/tasks/gitea.yml +++ b/roles/gitea/tasks/gitea.yml @@ -1,5 +1,6 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ gitea_volume_name }}" @@ -7,13 +8,13 @@ when: gitea_volume_name is defined - name: Init gitea env - set_fact: + ansible.builtin.set_fact: gitea_env: USER: "{{ gitea_user }}" LOCAL_ROOT_URL: "{{ gitea_root_url }}" - name: Append postgres config to gitea env - set_fact: + ansible.builtin.set_fact: gitea_env: "{{ dict | combine(item) }}" with_items: - GITEA__database__DB_TYPE: postgres @@ -23,8 +24,8 @@ - GITEA__database__PASSWD: "{{ gitea_postgres_password }}" when: gitea_postgres_hostname is defined -- name: "Start {{ role_name }} container {{ gitea_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ gitea_hostname }} + community.docker.docker_container: name: "{{ gitea_hostname }}" labels: description: "{{ gitea_description }}" @@ -35,12 +36,12 @@ ports: "{{ gitea_ports | default([]) }}" volumes: - "{{ gitea_volume_name }}:/data" - - "/etc/timezone:/etc/timezone:ro" - - "/etc/localtime:/etc/localtime:ro" + - /etc/timezone:/etc/timezone:ro + - /etc/localtime:/etc/localtime:ro networks: - name: "{{ docker_network_name }}" log_driver: "{{ docker_log_driver }}" log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ gitea_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ gitea_hostname }}|{{ role_name }}" diff --git a/roles/gitea/tasks/main.yml b/roles/gitea/tasks/main.yml index 1fbb2678..81677e51 100644 --- a/roles/gitea/tasks/main.yml +++ b/roles/gitea/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: gitea_image is defined tags: - - gitea \ No newline at end of file + - gitea diff --git a/roles/grafana/defaults/main.yml b/roles/grafana/defaults/main.yml index 46ed8bb6..ec87bf03 100644 --- a/roles/grafana/defaults/main.yml +++ b/roles/grafana/defaults/main.yml @@ -1,3 +1,4 @@ +--- grafana_description: Grafana -grafana_data_dir: "/usr/share/{{ grafana_hostname }}" -grafana_generic_oauth_scopes: "profile" \ No newline at end of file +grafana_data_dir: /usr/share/{{ grafana_hostname }} +grafana_generic_oauth_scopes: profile diff --git a/roles/grafana/handlers/main.yml b/roles/grafana/handlers/main.yml index 0fab4d09..92b651cc 100644 --- a/roles/grafana/handlers/main.yml +++ b/roles/grafana/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ grafana_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/grafana/meta/main.yml b/roles/grafana/meta/main.yml index 5750ccfd..cb2f3f53 100644 --- a/roles/grafana/meta/main.yml +++ b/roles/grafana/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: prometheus tags: - prometheus - - depends \ No newline at end of file + - depends diff --git a/roles/grafana/tasks/grafana.yml b/roles/grafana/tasks/grafana.yml index 15737325..7f2db6bf 100644 --- a/roles/grafana/tasks/grafana.yml +++ b/roles/grafana/tasks/grafana.yml @@ -1,31 +1,32 @@ -- name: "Copy {{ role_name }} scripts" - copy: +--- +- name: Copy {{ role_name }} scripts + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - grafana-backup -- name: "Create {{ role_name }} volume" - docker_volume: +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ grafana_volume_name }}" -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ grafana_data_dir }}" state: directory -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: "{{ item }}" dest: "{{ grafana_data_dir }}/{{ item }}" loop: - datasource.yml - dashboard.yml - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Start {{ role_name }} container {{ grafana_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ grafana_hostname }} + community.docker.docker_container: name: "{{ grafana_hostname }}" labels: description: "{{ grafana_description }}" @@ -53,7 +54,7 @@ GF_AUTH_GENERIC_OAUTH_AUTH_URL: "{{ grafana_generic_oauth_auth_url }}" GF_AUTH_GENERIC_OAUTH_TOKEN_URL: "{{ grafana_generic_oauth_token_url }}" GF_AUTH_GENERIC_OAUTH_API_URL: "{{ grafana_generic_oauth_api_url }}" - GF_AUTH_GENERIC_OAUTH_ROLE_ATTRIBUTE_PATH: "contains(roles[*], 'admin') && 'Admin' || contains(roles[*], 'editor') && 'Editor' || 'Viewer'" + GF_AUTH_GENERIC_OAUTH_ROLE_ATTRIBUTE_PATH: contains(roles[*], 'admin') && 'Admin' || contains(roles[*], 'editor') && 'Editor' || 'Viewer' volumes: - "{{ grafana_volume_name }}:/var/lib/grafana" - "{{ grafana_data_dir }}/datasource.yml:/etc/grafana/provisioning/datasources/datasource.yml" @@ -64,4 +65,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ grafana_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ grafana_hostname }}|{{ role_name }}" diff --git a/roles/grafana/tasks/main.yml b/roles/grafana/tasks/main.yml index c22a8a4e..06bed671 100644 --- a/roles/grafana/tasks/main.yml +++ b/roles/grafana/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: grafana_image is defined tags: - - grafana \ No newline at end of file + - grafana diff --git a/roles/htpasswd/defaults/main.yml b/roles/htpasswd/defaults/main.yml index ca0a1f40..5428604c 100644 --- a/roles/htpasswd/defaults/main.yml +++ b/roles/htpasswd/defaults/main.yml @@ -1,3 +1,4 @@ +--- htpasswd_nginx_data_dir: "{{ nginx_data_dir }}/proxies" htpasswd_requires_package: python3-passlib -htpasswd_name: "default" \ No newline at end of file +htpasswd_name: default diff --git a/roles/htpasswd/tasks/htpasswd.yml b/roles/htpasswd/tasks/htpasswd.yml index a08ed391..d89130b6 100644 --- a/roles/htpasswd/tasks/htpasswd.yml +++ b/roles/htpasswd/tasks/htpasswd.yml @@ -1,19 +1,20 @@ +--- - name: Ensure htpasswd data dir exists - file: + ansible.builtin.file: path: "{{ htpasswd_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ htpasswd_requires_package }} is not installed" - fail: - msg: "Package {{ htpasswd_requires_package }} is not installed!" +- name: Fail if package {{ htpasswd_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ htpasswd_requires_package }} is not installed! when: htpasswd_requires_package not in ansible_facts.packages -- name: "Add user to htpasswd file" - htpasswd: +- name: Add user to htpasswd file + community.general.htpasswd: path: "{{ htpasswd_nginx_data_dir }}/{{ htpasswd_name }}.htpasswd" name: "{{ item.username }}" password: "{{ item.password }}" diff --git a/roles/htpasswd/tasks/main.yml b/roles/htpasswd/tasks/main.yml index b8441ba5..e01add81 100644 --- a/roles/htpasswd/tasks/main.yml +++ b/roles/htpasswd/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: htpasswd_credentials is defined tags: - htpasswd diff --git a/roles/iam/defaults/main.yml b/roles/iam/defaults/main.yml index 7f5bcfa7..116cd013 100644 --- a/roles/iam/defaults/main.yml +++ b/roles/iam/defaults/main.yml @@ -1,2 +1,3 @@ +--- iam_disallow_ssh_root_access: true -iam_allow_ssh_password_authentication: false \ No newline at end of file +iam_allow_ssh_password_authentication: false diff --git a/roles/iam/handlers/main.yml b/roles/iam/handlers/main.yml index bbdb7143..f581ab94 100644 --- a/roles/iam/handlers/main.yml +++ b/roles/iam/handlers/main.yml @@ -1,4 +1,5 @@ +--- - name: Restart ssh service - service: + ansible.builtin.service: name: sshd - state: restarted \ No newline at end of file + state: restarted diff --git a/roles/iam/meta/main.yml b/roles/iam/meta/main.yml index fbc1390f..c2e3bea6 100644 --- a/roles/iam/meta/main.yml +++ b/roles/iam/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker tags: - docker - - depends \ No newline at end of file + - depends diff --git a/roles/iam/tasks/groups.yml b/roles/iam/tasks/groups.yml index 77367b26..65889efd 100644 --- a/roles/iam/tasks/groups.yml +++ b/roles/iam/tasks/groups.yml @@ -1,44 +1,45 @@ +--- - name: Add groups - group: + ansible.builtin.group: name: "{{ item.name }}" state: present loop: "{{ iam_groups }}" -- name: "Allow groups to have passwordless sudo" - lineinfile: +- name: Allow groups to have passwordless sudo + ansible.builtin.lineinfile: dest: /etc/sudoers state: present - regexp: "^%{{ item.name }}" + regexp: ^%{{ item.name }} line: "%{{ item.name }} ALL=(ALL) NOPASSWD: ALL" when: item.add_group_to_sudoers loop: "{{ iam_groups }}" - name: Disallow root ssh access - lineinfile: + ansible.builtin.lineinfile: dest: /etc/ssh/sshd_config - regexp: "^PermitRootLogin" - line: "PermitRootLogin no" + regexp: ^PermitRootLogin + line: PermitRootLogin no state: present - validate: "echo %s && /usr/sbin/sshd -t" + validate: echo %s && /usr/sbin/sshd -t notify: Restart ssh service when: iam_disallow_ssh_root_access - name: Enable ssh password authentication - lineinfile: + ansible.builtin.lineinfile: dest: /etc/ssh/sshd_config - regexp: "^PasswordAuthentication" - line: "PasswordAuthentication yes" + regexp: ^PasswordAuthentication + line: PasswordAuthentication yes state: present - validate: "echo %s && /usr/sbin/sshd -t" + validate: echo %s && /usr/sbin/sshd -t notify: Restart ssh service when: iam_allow_ssh_password_authentication - name: Disable ssh password authentication - lineinfile: + ansible.builtin.lineinfile: dest: /etc/ssh/sshd_config - regexp: "^PasswordAuthentication" - line: "PasswordAuthentication no" + regexp: ^PasswordAuthentication + line: PasswordAuthentication no state: present - validate: "echo %s && /usr/sbin/sshd -t" + validate: echo %s && /usr/sbin/sshd -t notify: Restart ssh service when: not iam_allow_ssh_password_authentication diff --git a/roles/iam/tasks/install-oh-my-zsh.yml b/roles/iam/tasks/install-oh-my-zsh.yml index b1827d5e..87d20519 100644 --- a/roles/iam/tasks/install-oh-my-zsh.yml +++ b/roles/iam/tasks/install-oh-my-zsh.yml @@ -1,5 +1,6 @@ +--- - name: Cloning oh-my-zsh for user - git: + ansible.builtin.git: repo: https://github.com/ohmyzsh/ohmyzsh dest: ~/.oh-my-zsh version: master @@ -9,17 +10,17 @@ loop: "{{ iam_users }}" - name: Install oh-my-zsh for user" - command: cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc + ansible.builtin.command: cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc args: - creates: "/home/{{ item.username }}/.zshrc" + creates: /home/{{ item.username }}/.zshrc become_user: "{{ item.username }}" become: true when: item.shell is defined and item.shell == '/bin/zsh' and inventory_hostname_short in item.hosts loop: "{{ iam_users }}" - name: Insert zsh runtime configuration. - blockinfile: - path: "/home/{{ item.username }}/.zshrc" + ansible.builtin.blockinfile: + path: /home/{{ item.username }}/.zshrc block: "{{ item.zshrc }}" when: item.shell is defined and item.shell == '/bin/zsh' and inventory_hostname_short in item.hosts and item.zshrc is defined - loop: "{{ iam_users }}" \ No newline at end of file + loop: "{{ iam_users }}" diff --git a/roles/iam/tasks/main.yml b/roles/iam/tasks/main.yml index 923cc90e..ee7b9c88 100644 --- a/roles/iam/tasks/main.yml +++ b/roles/iam/tasks/main.yml @@ -1,22 +1,23 @@ +--- - name: Include groups tasks - include_tasks: groups.yml + ansible.builtin.include_tasks: groups.yml when: iam_groups is defined tags: - iam - name: Combine group and host vars - set_fact: + ansible.builtin.set_fact: iam_users: "{{ iam_users + host_iam_users }}" when: host_iam_users is defined - name: Include users tasks - include_tasks: users.yml + ansible.builtin.include_tasks: users.yml when: iam_users is defined tags: - iam - name: Include install oh-my-zsh tasks - include_tasks: install-oh-my-zsh.yml + ansible.builtin.include_tasks: install-oh-my-zsh.yml when: iam_users is defined tags: - - iam \ No newline at end of file + - iam diff --git a/roles/iam/tasks/users.yml b/roles/iam/tasks/users.yml index f41a65ab..9e75ec8f 100644 --- a/roles/iam/tasks/users.yml +++ b/roles/iam/tasks/users.yml @@ -1,11 +1,12 @@ -- name: "Update root user's password" - user: +--- +- name: Update root user's password + ansible.builtin.user: name: root password: "{{ iam_root_password | password_hash('sha512') }}" when: iam_root_password is defined - name: Setup users - user: + ansible.builtin.user: name: "{{ item.username }}" shell: "{{ item.shell | default('/bin/bash') }}" groups: "{{ item.groups | default('') }}" @@ -16,14 +17,14 @@ # FIXME: Passwort does not work if not set manually - name: Set user passwords - user: + ansible.builtin.user: name: "{{ item.username }}" password: "{{ item.password | password_hash('sha512') }}" loop: "{{ iam_users }}" when: item.hosts is defined and inventory_hostname_short in item.hosts and item.password is defined - name: Set authorized key - authorized_key: + ansible.posix.authorized_key: user: "{{ item.username }}" state: "{{ item.state | default('present') }}" key: "{{ item.ssh_public_key }}" @@ -31,9 +32,9 @@ when: item.hosts is defined and inventory_hostname_short in item.hosts and item.ssh_public_key is defined - name: Copy ssh private key - copy: + ansible.builtin.copy: content: "{{ item.ssh_private_key }}" - dest: "/home/{{ item.username }}/.ssh/id_ed25519" + dest: /home/{{ item.username }}/.ssh/id_ed25519 owner: "{{ item.username }}" group: "{{ item.username }}" mode: "0700" @@ -41,9 +42,9 @@ when: item.hosts is defined and inventory_hostname_short in item.hosts and item.ssh_private_key is defined - name: Remove users - user: + ansible.builtin.user: user: "{{ item.username }}" - state: "absent" + state: absent remove: true loop: "{{ iam_users }}" when: item.hosts is defined and inventory_hostname_short in item.hosts and item.state is defined and item.state == 'absent' diff --git a/roles/innernet_client/tasks/innernet_client.yml b/roles/innernet_client/tasks/innernet_client.yml index 7ca86ab9..8877c419 100644 --- a/roles/innernet_client/tasks/innernet_client.yml +++ b/roles/innernet_client/tasks/innernet_client.yml @@ -1,29 +1,30 @@ -- name: "Gather package facts" - package_facts: +--- +- name: Gather package facts + ansible.builtin.package_facts: manager: auto -- name: "Fail if package is not installed" - fail: - msg: "Package {{ item }} is not installed!" +- name: Fail if package is not installed + ansible.builtin.fail: + msg: Package {{ item }} is not installed! when: item not in ansible_facts.packages loop: - innernet -- name: "Copy innernet client invitation file" - copy: +- name: Copy innernet client invitation file + ansible.builtin.copy: content: "{{ innernet_client_invitation_file }}" - dest: "/var/tmp/{{ innernet_client_peer_name }}.yml" + dest: /var/tmp/{{ innernet_client_peer_name }}.yml when: innernet_client_invitation_file is defined -- name: "Check if interface is up" - command: - cmd: "innernet show" +- name: Check if interface is up + ansible.builtin.command: + cmd: innernet show register: innernet_status changed_when: false -- name: "Install innernet client invitation file" - command: - cmd: "innernet install /var/tmp/{{ innernet_client_peer_name }}.yml --name {{ innernet_client_network_name }} --hosts-path /etc/hosts --delete-invite" +- name: Install innernet client invitation file + ansible.builtin.command: + cmd: innernet install /var/tmp/{{ innernet_client_peer_name }}.yml --name {{ innernet_client_network_name }} --hosts-path /etc/hosts --delete-invite ignore_errors: true # FIXME: Cannot check if interface is down when: innernet_client_invitation_file is defined and innernet_client_network_name not in innernet_status.stdout @@ -32,9 +33,9 @@ # name: innernet@{{ innernet_client_network_name }}" # state: stopped -- name: "Enable and (re)start innernet@{{ innernet_client_network_name }} service" - systemd: +- name: Enable and (re)start innernet@{{ innernet_client_network_name }} service + ansible.builtin.systemd: name: innernet@{{ innernet_client_network_name }}" daemon_reload: true enabled: true - state: "started" \ No newline at end of file + state: started diff --git a/roles/innernet_client/tasks/main.yml b/roles/innernet_client/tasks/main.yml index 183cc9c0..91088c8b 100644 --- a/roles/innernet_client/tasks/main.yml +++ b/roles/innernet_client/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: innernet_client_network_name is defined tags: - - innernet_client \ No newline at end of file + - innernet_client diff --git a/roles/innernet_server/tasks/innernet_server.yml b/roles/innernet_server/tasks/innernet_server.yml index fe5415b1..d0d33c7d 100644 --- a/roles/innernet_server/tasks/innernet_server.yml +++ b/roles/innernet_server/tasks/innernet_server.yml @@ -1,44 +1,45 @@ +--- - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package is not installed" - fail: - msg: "Package {{ item }} is not installed!" +- name: Fail if package is not installed + ansible.builtin.fail: + msg: Package {{ item }} is not installed! when: item not in ansible_facts.packages loop: - innernet - innernet-server - name: Setup innernet server - command: + ansible.builtin.command: cmd: >- innernet-server new --network-name {{ innernet_server_network_name }} --network-cidr {{ innernet_server_network_cidr }} --auto-external-endpoint --listen-port 51820 - creates: "/etc/innernet-server/{{ innernet_server_network_name }}.conf" + creates: /etc/innernet-server/{{ innernet_server_network_name }}.conf - name: Setup innernet server cidrs - command: - cmd: "innernet-server add-cidr --name {{ item.name }} --cidr {{ item.cidr }} --parent {{ item.parent }} --yes {{ innernet_server_network_name }}" + ansible.builtin.command: + cmd: innernet-server add-cidr --name {{ item.name }} --cidr {{ item.cidr }} --parent {{ item.parent }} --yes {{ innernet_server_network_name }} register: res changed_when: res.rc==0 ignore_errors: true # FIXME: Cannot check if command added cidr loop: "{{ innernet_server_cidrs }}" - name: Setup innernet server peers - command: + ansible.builtin.command: cmd: >- innernet-server add-peer --name {{ item.name }} --cidr {{ item.cidr }} --auto-ip --admin true --save-config /var/tmp/{{ item.name }}.yml --invite-expires 14d --yes {{ innernet_server_network_name }} - creates: "/var/tmp/{{ item.name }}.yml" + creates: /var/tmp/{{ item.name }}.yml loop: "{{ innernet_server_peers }}" - name: Show inviation file - debug: + ansible.builtin.debug: msg: "Run this command manually: ssh {{ ansible_host }} cat /var/tmp/{{ item.name }}.yml" loop: "{{ innernet_server_peers }}" - name: Enable innernet server service - systemd: + ansible.builtin.systemd: name: innernet-server@{{ innernet_server_network_name }}" - state: restarted \ No newline at end of file + state: restarted diff --git a/roles/innernet_server/tasks/main.yml b/roles/innernet_server/tasks/main.yml index 7bf921b1..a5931372 100644 --- a/roles/innernet_server/tasks/main.yml +++ b/roles/innernet_server/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: innernet_server_network_name is defined tags: - - innernet_server \ No newline at end of file + - innernet_server diff --git a/roles/jenkins/defaults/main.yml b/roles/jenkins/defaults/main.yml index c106d161..91bd3469 100644 --- a/roles/jenkins/defaults/main.yml +++ b/roles/jenkins/defaults/main.yml @@ -1,10 +1,11 @@ +--- jenkins_build_image: false jenkins_description: Jenkins -jenkins_data_dir: "/usr/share/{{ jenkins_hostname }}" +jenkins_data_dir: /usr/share/{{ jenkins_hostname }} jenkins_volume_name: "{{ jenkins_hostname }}" jenkins_password: "{{ vault_jenkins_password }}" -jenkins_docker_host: "unix:///var/run/docker.sock" -jenkins_casc: | +jenkins_docker_host: unix:///var/run/docker.sock +jenkins_casc: |- jenkins: securityRealm: local: @@ -25,4 +26,4 @@ jenkins_casc: | - "Overall/Administer" unclassified: location: - url: ${JENKINS_URL} \ No newline at end of file + url: ${JENKINS_URL} diff --git a/roles/jenkins/handlers/main.yml b/roles/jenkins/handlers/main.yml index d4afe9fd..7b126b5d 100644 --- a/roles/jenkins/handlers/main.yml +++ b/roles/jenkins/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ jenkins_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ jenkins_image }}" build: path: "{{ docker_build_dir }}/{{ jenkins_hostname }}" diff --git a/roles/jenkins/meta/main.yml b/roles/jenkins/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/jenkins/meta/main.yml +++ b/roles/jenkins/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/jenkins/tasks/jenkins.yml b/roles/jenkins/tasks/jenkins.yml index caa8b5aa..57328567 100644 --- a/roles/jenkins/tasks/jenkins.yml +++ b/roles/jenkins/tasks/jenkins.yml @@ -1,25 +1,26 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ jenkins_volume_name }}" when: jenkins_volume_name is defined -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ jenkins_data_dir }}" state: directory -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: "{{ item }}" dest: "{{ jenkins_data_dir }}/{{ item }}" loop: - jenkins.yml - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Start {{ role_name }} container {{ jenkins_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ jenkins_hostname }} + community.docker.docker_container: name: "{{ jenkins_hostname }}" labels: description: "{{ jenkins_description }}" diff --git a/roles/jenkins/tasks/jenkins_build.yml b/roles/jenkins/tasks/jenkins_build.yml index 9f8f9a4e..e8ea2aa2 100644 --- a/roles/jenkins/tasks/jenkins_build.yml +++ b/roles/jenkins/tasks/jenkins_build.yml @@ -1,17 +1,18 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: dest: "{{ docker_build_dir }}/{{ jenkins_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ jenkins_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - plugins.txt - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/roles/jenkins/tasks/main.yml b/roles/jenkins/tasks/main.yml index 81d2f808..ef2f6724 100644 --- a/roles/jenkins/tasks/main.yml +++ b/roles/jenkins/tasks/main.yml @@ -1,17 +1,18 @@ -- name: "On build set new image tag {{ role_name }}:{{ jenkins_hostname }}" - set_fact: - jenkins_image: "jenkins:{{ jenkins_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ jenkins_hostname }} + ansible.builtin.set_fact: + jenkins_image: jenkins:{{ jenkins_hostname }} jenkins_build_image: "{{ jenkins_image }}" when: jenkins_build_image and jenkins_build_image != jenkins_image tags: - jenkins -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: jenkins_build_image and jenkins_build_image != jenkins_image tags: - jenkins -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: jenkins_image is defined diff --git a/roles/keycloak/defaults/main.yml b/roles/keycloak/defaults/main.yml index 0d4bbf34..01d74c26 100644 --- a/roles/keycloak/defaults/main.yml +++ b/roles/keycloak/defaults/main.yml @@ -1,12 +1,13 @@ +--- keycloak_build_image: false keycloak_description: Keycloak keycloak_state: started -keycloak_data_dir: "/usr/share/{{ keycloak_hostname }}" +keycloak_data_dir: /usr/share/{{ keycloak_hostname }} keycloak_timezone: Europe/Berlin keycloak_password: "{{ vault_keycloak_password }}" -keycloak_db_type: "postgres" +keycloak_db_type: postgres keycloak_db_password: "{{ vault_keycloak_db_password }}" keycloak_admin_password: "{{ vault_keycloak_admin_password }}" keycloak_migrate: false -keycloak_db: "postgres" -keycloak_db_url_database: keycloak \ No newline at end of file +keycloak_db: postgres +keycloak_db_url_database: keycloak diff --git a/roles/keycloak/handlers/main.yml b/roles/keycloak/handlers/main.yml index 5460d15c..4959f923 100644 --- a/roles/keycloak/handlers/main.yml +++ b/roles/keycloak/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ keycloak_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ keycloak_image }}" build: path: "{{ docker_build_dir }}/{{ keycloak_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/keycloak/meta/main.yml b/roles/keycloak/meta/main.yml index 048ff76e..80d1be24 100644 --- a/roles/keycloak/meta/main.yml +++ b/roles/keycloak/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: postgres tags: - postgres - - depends \ No newline at end of file + - depends diff --git a/roles/keycloak/tasks/keycloak.yml b/roles/keycloak/tasks/keycloak.yml index 839ac9bb..ee68d5c2 100644 --- a/roles/keycloak/tasks/keycloak.yml +++ b/roles/keycloak/tasks/keycloak.yml @@ -1,10 +1,11 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ keycloak_data_dir }}/themes" state: directory -- name: "Start {{ role_name }} container {{ keycloak_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ keycloak_hostname }} + community.docker.docker_container: name: "{{ keycloak_hostname }}" labels: description: "{{ keycloak_description }}" @@ -21,7 +22,7 @@ DB_PASSWORD: "{{ keycloak_db_password }}" PROXY_ADDRESS_FORWARDING: "true" TZ: "{{ keycloak_timezone }}" - command: "-Dkeycloak.profile.feature.upload_scripts=enabled" + command: -Dkeycloak.profile.feature.upload_scripts=enabled networks: - name: "{{ docker_network_name }}" log_driver: "{{ docker_log_driver }}" @@ -31,8 +32,8 @@ tag: "{{ keycloak_hostname }}|{{ role_name }}" when: "'jboss/keycloak' in keycloak_image" -- name: "Start {{ role_name }} container {{ keycloak_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ keycloak_hostname }} + community.docker.docker_container: name: "{{ keycloak_hostname }}" labels: description: "{{ keycloak_description }}" @@ -48,12 +49,12 @@ KC_DB_URL_DATABASE: "{{ keycloak_db_url_database }}" KC_DB_USERNAME: "{{ keycloak_db_username }}" KC_DB_PASSWORD: "{{ keycloak_db_password }}" - KC_PROXY: "edge" + KC_PROXY: edge KC_HTTP_RELATIVE_PATH: "{{ '/auth' if keycloak_migrate }}" KC_HOSTNAME: "{{ keycloak_proxy_hostname }}" volumes: - "{{ keycloak_data_dir }}/themes:/opt/keycloak/themes" - command: "start {{'--auto-build --db=postgres' if keycloak_migrate }}" + command: start {{'--auto-build --db=postgres' if keycloak_migrate }} networks: - name: "{{ docker_network_name }}" log_driver: "{{ docker_log_driver }}" @@ -61,4 +62,4 @@ max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" tag: "{{ keycloak_hostname }}|{{ role_name }}" - when: "'jboss/keycloak' not in keycloak_image" \ No newline at end of file + when: "'jboss/keycloak' not in keycloak_image" diff --git a/roles/keycloak/tasks/keycloak_build.yml b/roles/keycloak/tasks/keycloak_build.yml index 95f679a3..c83d0d1f 100644 --- a/roles/keycloak/tasks/keycloak_build.yml +++ b/roles/keycloak/tasks/keycloak_build.yml @@ -1,31 +1,32 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ keycloak_hostname }}" state: directory -- name: "Ensure path for build files exists" - file: +- name: Ensure path for build files exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ keycloak_hostname }}{{ item.dest | dirname }}" state: directory loop: "{{ keycloak_build_include }}" when: keycloak_build_include is defined -- name: "Download build files" - get_url: +- name: Download build files + ansible.builtin.get_url: url: "{{ item.url }}" dest: "{{ docker_build_dir }}/{{ keycloak_hostname }}{{ item.dest }}" loop: "{{ keycloak_build_include }}" when: keycloak_build_include is defined - notify: "Build {{ role_name }} custom image" - -- name: "Copy {{ role_name }} Dockerfile" - template: + notify: Build {{ role_name }} custom image + +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ keycloak_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/roles/keycloak/tasks/main.yml b/roles/keycloak/tasks/main.yml index 0c6f530b..fb5891ff 100644 --- a/roles/keycloak/tasks/main.yml +++ b/roles/keycloak/tasks/main.yml @@ -1,19 +1,20 @@ -- name: "On build set new image tag {{ role_name }}:{{ keycloak_hostname }}" - set_fact: - keycloak_image: "keycloak:{{ keycloak_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ keycloak_hostname }} + ansible.builtin.set_fact: + keycloak_image: keycloak:{{ keycloak_hostname }} keycloak_build_image: "{{ keycloak_image }}" when: keycloak_build_image and keycloak_build_image != keycloak_image tags: - keycloak -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: keycloak_build_image and keycloak_build_image != keycloak_image tags: - keycloak -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: keycloak_image is defined tags: - - keycloak \ No newline at end of file + - keycloak diff --git a/roles/keycloak_client/meta/main.yml b/roles/keycloak_client/meta/main.yml index 6838317d..a0775e14 100644 --- a/roles/keycloak_client/meta/main.yml +++ b/roles/keycloak_client/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: keycloak tags: - keycloak - - depends \ No newline at end of file + - depends diff --git a/roles/keycloak_client/tasks/keycloak_client.yml b/roles/keycloak_client/tasks/keycloak_client.yml index 5b8f1f17..348737f1 100644 --- a/roles/keycloak_client/tasks/keycloak_client.yml +++ b/roles/keycloak_client/tasks/keycloak_client.yml @@ -1,5 +1,6 @@ -- name: "Create or update Keycloak client" - keycloak_client: +--- +- name: Create or update Keycloak client + community.general.keycloak_client: auth_client_id: "{{ item.auth_client_id | default('admin-cli') }}" auth_keycloak_url: "{{ item.auth_keycloak_url }}" auth_realm: "{{ item.auth_realm | default('master') }}" diff --git a/roles/keycloak_client/tasks/main.yml b/roles/keycloak_client/tasks/main.yml index b3311479..32107569 100644 --- a/roles/keycloak_client/tasks/main.yml +++ b/roles/keycloak_client/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: keycloak_clients is defined tags: - - keycloak_client \ No newline at end of file + - keycloak_client diff --git a/roles/kibana/defaults/main.yml b/roles/kibana/defaults/main.yml index 3236d0de..0c96e8ae 100644 --- a/roles/kibana/defaults/main.yml +++ b/roles/kibana/defaults/main.yml @@ -1 +1,2 @@ -kibana_description: Kibana \ No newline at end of file +--- +kibana_description: Kibana diff --git a/roles/kibana/meta/main.yml b/roles/kibana/meta/main.yml index 5ebe0b4a..8ac4cd80 100644 --- a/roles/kibana/meta/main.yml +++ b/roles/kibana/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: elasticsearch tags: diff --git a/roles/kibana/tasks/kibana.yml b/roles/kibana/tasks/kibana.yml index fc9d0d15..1a310653 100644 --- a/roles/kibana/tasks/kibana.yml +++ b/roles/kibana/tasks/kibana.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ kibana_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ kibana_hostname }} + community.docker.docker_container: name: "{{ kibana_hostname }}" labels: description: "{{ kibana_description }}" @@ -7,7 +8,7 @@ restart_policy: unless-stopped env: SERVER_NAME: "{{ kibana_server_name }}" - ELASTICSEARCH_HOSTS: "http://{{ kibana_elasticsearch_host }}:9200" + ELASTICSEARCH_HOSTS: http://{{ kibana_elasticsearch_host }}:9200 ELASTICSEARCH_USERNAME: "{{ kibana_elasticsearch_username }}" ELASTICSEARCH_PASSWORD: "{{ kibana_elasticsearch_password }}" networks: @@ -16,4 +17,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ kibana_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ kibana_hostname }}|{{ role_name }}" diff --git a/roles/kibana/tasks/main.yml b/roles/kibana/tasks/main.yml index 837796be..910ed714 100644 --- a/roles/kibana/tasks/main.yml +++ b/roles/kibana/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: kibana_image is defined tags: - - kibana \ No newline at end of file + - kibana diff --git a/roles/locale/defaults/main.yml b/roles/locale/defaults/main.yml index 20762228..5dbb4552 100644 --- a/roles/locale/defaults/main.yml +++ b/roles/locale/defaults/main.yml @@ -1,2 +1,3 @@ +--- config_system_locale: en_US.UTF-8 -config_system_language: en_US.UTF-8 \ No newline at end of file +config_system_language: en_US.UTF-8 diff --git a/roles/locale/tasks/locale.yml b/roles/locale/tasks/locale.yml index 0ab71330..c3dd3cb9 100644 --- a/roles/locale/tasks/locale.yml +++ b/roles/locale/tasks/locale.yml @@ -1,32 +1,33 @@ +--- - name: Add bin folder to cron PATH - cron: + ansible.builtin.cron: name: PATH env: true job: /bin:/usr/bin:/usr/local/bin - name: Ensure localisation files for system locale are available - locale_gen: + community.general.locale_gen: name: "{{ config_system_locale }}" state: present - name: Ensure localisation files for system language are available - locale_gen: + community.general.locale_gen: name: "{{ config_system_language }}" state: present - name: Get current locale and language configuration - command: localectl status + ansible.builtin.command: localectl status register: locale_status changed_when: false - name: Parse 'LANG' from current locale and language configuration - set_fact: + ansible.builtin.set_fact: locale_lang: "{{ locale_status.stdout | regex_search('LANG=([^\n]+)', '\\1') | first }}" - name: Parse 'LANGUAGE' from current locale and language configuration - set_fact: + ansible.builtin.set_fact: locale_language: "{{ locale_status.stdout | regex_search('LANGUAGE=([^\n]+)', '\\1') | default([locale_lang], true) | first }}" - name: Configure locale and language - command: localectl set-locale LANG={{ config_system_locale }} LANGUAGE={{ config_system_language }} - when: locale_lang != config_system_locale or locale_language != config_system_language \ No newline at end of file + ansible.builtin.command: localectl set-locale LANG={{ config_system_locale }} LANGUAGE={{ config_system_language }} + when: locale_lang != config_system_locale or locale_language != config_system_language diff --git a/roles/locale/tasks/main.yml b/roles/locale/tasks/main.yml index 29db4c0c..2c685016 100644 --- a/roles/locale/tasks/main.yml +++ b/roles/locale/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: ansible_distribution in ['Ubuntu', 'Debian'] tags: - - locale \ No newline at end of file + - locale diff --git a/roles/logstash/defaults/main.yml b/roles/logstash/defaults/main.yml index ef0fe0e4..53db6d66 100644 --- a/roles/logstash/defaults/main.yml +++ b/roles/logstash/defaults/main.yml @@ -1,2 +1,3 @@ +--- logastash_description: Logstash -logstash_data_dir: "/usr/share/{{ logstash_hostname }}" \ No newline at end of file +logstash_data_dir: /usr/share/{{ logstash_hostname }} diff --git a/roles/logstash/handlers/main.yml b/roles/logstash/handlers/main.yml index 8e79dd6a..e2f8946f 100644 --- a/roles/logstash/handlers/main.yml +++ b/roles/logstash/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ logstash_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/logstash/meta/main.yml b/roles/logstash/meta/main.yml index 0fd02ffc..8ac4cd80 100644 --- a/roles/logstash/meta/main.yml +++ b/roles/logstash/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: elasticsearch tags: - elasticsearch - - depends \ No newline at end of file + - depends diff --git a/roles/logstash/tasks/logstash.yml b/roles/logstash/tasks/logstash.yml index f8aee017..cad71dde 100644 --- a/roles/logstash/tasks/logstash.yml +++ b/roles/logstash/tasks/logstash.yml @@ -1,16 +1,17 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ logstash_data_dir }}/pipeline" state: directory -- name: "Copy {{ role_name }} pipeline conf" - template: +- name: Copy {{ role_name }} pipeline conf + ansible.builtin.template: src: beats.conf dest: "{{ logstash_data_dir }}/pipeline/" notify: Restart logstash container -- name: "Start {{ role_name }} container {{ logstash_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ logstash_hostname }} + community.docker.docker_container: name: "{{ logstash_hostname }}" labels: description: "{{ logstash_description }}" @@ -18,7 +19,7 @@ restart_policy: unless-stopped env: XPACK_MONITORING_ENABLED: "true" - XPACK_MONITORING_ELASTICSEARCH_HOSTS: "http://{{ logstash_elasticsearch_hostname }}:9200" + XPACK_MONITORING_ELASTICSEARCH_HOSTS: http://{{ logstash_elasticsearch_hostname }}:9200 XPACK_MONITORING_ELASTICSEARCH_USERNAME: "{{ logstash_elasticsearch_username }}" XPACK_MONITORING_ELASTICSEARCH_PASSWORD: "{{ logstash_elasticsearch_password }}" volumes: @@ -29,4 +30,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ logstash_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ logstash_hostname }}|{{ role_name }}" diff --git a/roles/logstash/tasks/main.yml b/roles/logstash/tasks/main.yml index ebb5d2f7..3b191636 100644 --- a/roles/logstash/tasks/main.yml +++ b/roles/logstash/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: logstash_image is defined tags: - - logstash \ No newline at end of file + - logstash diff --git a/roles/loki/defaults/main.yml b/roles/loki/defaults/main.yml index 4c7740e5..bc8f93bc 100644 --- a/roles/loki/defaults/main.yml +++ b/roles/loki/defaults/main.yml @@ -1,5 +1,6 @@ +--- loki_requires_package: python3-passlib loki_description: Loki loki_proxy_basic_auth_username: loki loki_nginx_data_dir: "{{ nginx_data_dir }}/proxies" -loki_data_dir: "/usr/share/{{ loki_hostname }}" \ No newline at end of file +loki_data_dir: /usr/share/{{ loki_hostname }} diff --git a/roles/loki/handlers/main.yml b/roles/loki/handlers/main.yml index 8d704660..245fca89 100644 --- a/roles/loki/handlers/main.yml +++ b/roles/loki/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ loki_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/loki/meta/main.yml b/roles/loki/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/loki/meta/main.yml +++ b/roles/loki/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/loki/tasks/loki.yml b/roles/loki/tasks/loki.yml index fbc41c3b..8d8b6671 100644 --- a/roles/loki/tasks/loki.yml +++ b/roles/loki/tasks/loki.yml @@ -1,18 +1,19 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ loki_data_dir }}" state: directory -- name: "Copy {{ role_name }} config" - template: +- name: Copy {{ role_name }} config + ansible.builtin.template: src: "{{ item }}" dest: "{{ loki_data_dir }}/{{ item }}" loop: - local-config.yml - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Start {{ role_name }} container {{ loki_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ loki_hostname }} + community.docker.docker_container: name: "{{ loki_hostname }}" labels: description: "{{ loki_description }}" @@ -28,4 +29,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ loki_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ loki_hostname }}|{{ role_name }}" diff --git a/roles/loki/tasks/loki_nginx_config.yml b/roles/loki/tasks/loki_nginx_config.yml index cce839ef..79c54b2c 100644 --- a/roles/loki/tasks/loki_nginx_config.yml +++ b/roles/loki/tasks/loki_nginx_config.yml @@ -1,24 +1,25 @@ +--- - name: Ensure nginx data dir exists - file: + ansible.builtin.file: path: "{{ loki_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ loki_requires_package }} is not installed" - fail: - msg: "Package {{ loki_requires_package }} is not installed!" +- name: Fail if package {{ loki_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ loki_requires_package }} is not installed! when: loki_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ loki_nginx_data_dir }}/loki.htpasswd" name: "{{ loki_proxy_basic_auth_username }}" password: "{{ loki_proxy_basic_auth_password }}" -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: loki.nginx - dest: "{{ loki_nginx_data_dir }}/loki.nginx" \ No newline at end of file + dest: "{{ loki_nginx_data_dir }}/loki.nginx" diff --git a/roles/loki/tasks/main.yml b/roles/loki/tasks/main.yml index 2068b581..16473a97 100644 --- a/roles/loki/tasks/main.yml +++ b/roles/loki/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: loki_image is defined tags: - loki -- name: "Include {{ role_name }} nginx config tasks" - include_tasks: "{{ role_name }}_nginx_config.yml" +- name: Include {{ role_name }} nginx config tasks + ansible.builtin.include_tasks: "{{ role_name }}_nginx_config.yml" when: loki_image is defined tags: - loki - - loki_nginx_config \ No newline at end of file + - loki_nginx_config diff --git a/roles/mailhog/defaults/main.yml b/roles/mailhog/defaults/main.yml index dbe5fcad..5793ec91 100644 --- a/roles/mailhog/defaults/main.yml +++ b/roles/mailhog/defaults/main.yml @@ -1,4 +1,5 @@ +--- mailhog_description: MailHog -mailhog_data_dir: "/usr/share/{{ mailhog_hostname }}" +mailhog_data_dir: /usr/share/{{ mailhog_hostname }} mailhog_web_path: "" -mailhog_users: [] \ No newline at end of file +mailhog_users: [] diff --git a/roles/mailhog/meta/main.yml b/roles/mailhog/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/mailhog/meta/main.yml +++ b/roles/mailhog/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/mailhog/tasks/mailhog.yml b/roles/mailhog/tasks/mailhog.yml index d0f366f9..ad5274fd 100644 --- a/roles/mailhog/tasks/mailhog.yml +++ b/roles/mailhog/tasks/mailhog.yml @@ -1,13 +1,14 @@ -- name: "Configure user access for {{ role_name }}" - htpasswd: +--- +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ mailhog_data_dir }}/auth" name: "{{ item.username }}" password: "{{ item.password }}" crypt_scheme: bcrypt loop: "{{ mailhog_users }}" -- name: "Start {{ role_name }} container {{ mailhog_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ mailhog_hostname }} + community.docker.docker_container: name: "{{ mailhog_hostname }}" labels: description: "{{ mailhog_description }}" @@ -25,4 +26,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ mailhog_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ mailhog_hostname }}|{{ role_name }}" diff --git a/roles/mailhog/tasks/main.yml b/roles/mailhog/tasks/main.yml index e0905df5..3aef52cd 100644 --- a/roles/mailhog/tasks/main.yml +++ b/roles/mailhog/tasks/main.yml @@ -1,3 +1,4 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" - when: mailhog_image is defined \ No newline at end of file +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" + when: mailhog_image is defined diff --git a/roles/maintenance/defaults/main.yml b/roles/maintenance/defaults/main.yml index 1ad86eed..d1d2a2ca 100644 --- a/roles/maintenance/defaults/main.yml +++ b/roles/maintenance/defaults/main.yml @@ -1,2 +1,3 @@ +--- maintenance: false -maintenance_job: false \ No newline at end of file +maintenance_job: false diff --git a/roles/maintenance/meta/main.yml b/roles/maintenance/meta/main.yml index fbc1390f..c2e3bea6 100644 --- a/roles/maintenance/meta/main.yml +++ b/roles/maintenance/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker tags: - docker - - depends \ No newline at end of file + - depends diff --git a/roles/maintenance/tasks/main.yml b/roles/maintenance/tasks/main.yml index 5e9771a3..4ffbe6cc 100644 --- a/roles/maintenance/tasks/main.yml +++ b/roles/maintenance/tasks/main.yml @@ -1,17 +1,18 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: maintenance tags: - - maintenance + - maintenance -- name: "Include {{ role_name }} job tasks" - include_tasks: "{{ role_name }}_job.yml" +- name: Include {{ role_name }} job tasks + ansible.builtin.include_tasks: "{{ role_name }}_job.yml" when: maintenance_job tags: - - maintenance + - maintenance -- name: "Include {{ role_name }} apt tasks" - include_tasks: "{{ role_name }}_apt.yml" +- name: Include {{ role_name }} apt tasks + ansible.builtin.include_tasks: "{{ role_name }}_apt.yml" when: maintenance and (ansible_distribution == 'Ubuntu' or ansible_distribution == 'Debian') tags: - - maintenance \ No newline at end of file + - maintenance diff --git a/roles/maintenance/tasks/maintenance.yml b/roles/maintenance/tasks/maintenance.yml index 8ccbe8a3..671e937f 100644 --- a/roles/maintenance/tasks/maintenance.yml +++ b/roles/maintenance/tasks/maintenance.yml @@ -1,29 +1,30 @@ +--- - name: Prune docker images, volumes and containers - docker_prune: + community.docker.docker_prune: containers: true images: true volumes: true images_filters: - dangling: false + dangling: false register: prune_docker - name: Show image space reclaimed - debug: - msg: "Removed {{ prune_docker.images | length }} image layers and reclaimed {{ prune_docker.images_space_reclaimed|filesizeformat }} space." + ansible.builtin.debug: + msg: Removed {{ prune_docker.images | length }} image layers and reclaimed {{ prune_docker.images_space_reclaimed|filesizeformat }} space. - name: Cleanup journals - command: journalctl --vacuum-time=10d + ansible.builtin.command: journalctl --vacuum-time=10d changed_when: false register: cleanup_journal - name: Show journal space reclaimed - debug: + ansible.builtin.debug: msg: "{{ cleanup_journal.stderr }}" -- name: "Find old files in /var/tmp" - find: +- name: Find old files in /var/tmp + ansible.builtin.find: paths: - - "/var/tmp" + - /var/tmp age: 7d recurse: true register: old_files @@ -33,13 +34,13 @@ # msg: "{{ old_files.files | map(attribute='path') | list }}" - name: Remove old directories - command: + ansible.builtin.command: cmd: find /var/tmp -type d -mtime +7 -exec rm -rf {} \; when: old_files.files ignore_errors: true - name: Remove old files - command: + ansible.builtin.command: cmd: find /var/tmp -type f -mtime +7 -exec rm -rf {} \; when: old_files.files - ignore_errors: true # FIXME: Start with deepest nested folders first \ No newline at end of file + ignore_errors: true # FIXME: Start with deepest nested folders first diff --git a/roles/maintenance/tasks/maintenance_apt.yml b/roles/maintenance/tasks/maintenance_apt.yml index f59efab8..5ed626ec 100644 --- a/roles/maintenance/tasks/maintenance_apt.yml +++ b/roles/maintenance/tasks/maintenance_apt.yml @@ -1,7 +1,8 @@ +--- - name: Remove useless packages from the cache - apt: + ansible.builtin.apt: autoclean: true - name: Remove dependencies that are no longer required - apt: - autoremove: true \ No newline at end of file + ansible.builtin.apt: + autoremove: true diff --git a/roles/maintenance/tasks/maintenance_job.yml b/roles/maintenance/tasks/maintenance_job.yml index df19d7f4..e2f61eb7 100644 --- a/roles/maintenance/tasks/maintenance_job.yml +++ b/roles/maintenance/tasks/maintenance_job.yml @@ -1,7 +1,8 @@ -- name: "Setup Docker cleanup job" - cron: - name: "Docker cleanup job" +--- +- name: Setup Docker cleanup job + ansible.builtin.cron: + name: Docker cleanup job minute: "{{ 59 |random(seed=ansible_host) }}" hour: "0" weekday: "0" - job: "docker system prune -af --filter \"until=$((7*24))h\"" + job: docker system prune -af --filter "until=$((7*24))h" diff --git a/roles/mariadb/defaults/main.yml b/roles/mariadb/defaults/main.yml index b3c85cf5..a297762a 100644 --- a/roles/mariadb/defaults/main.yml +++ b/roles/mariadb/defaults/main.yml @@ -1,5 +1,6 @@ +--- mariadb_description: MariaDB mariadb_volume_name: "{{ mariadb_hostname }}" mariadb_root_password: "{{ vault_mariadb_root_password }}" mariadb_password: "{{ vault_mariadb_password }}" -mariadb_command: "" \ No newline at end of file +mariadb_command: "" diff --git a/roles/mariadb/meta/main.yml b/roles/mariadb/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/mariadb/meta/main.yml +++ b/roles/mariadb/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/mariadb/tasks/main.yml b/roles/mariadb/tasks/main.yml index 2b04db2a..a759344f 100644 --- a/roles/mariadb/tasks/main.yml +++ b/roles/mariadb/tasks/main.yml @@ -1,11 +1,12 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: mariadb_image is defined tags: - - mariadb + - mariadb -- name: "Include {{ role_name }} backup tasks" - include_tasks: "{{ role_name }}-backup.yml" +- name: Include {{ role_name }} backup tasks + ansible.builtin.include_tasks: "{{ role_name }}-backup.yml" when: mariadb_backup_set is defined tags: - - mariadb \ No newline at end of file + - mariadb diff --git a/roles/mariadb/tasks/mariadb-backup.yml b/roles/mariadb/tasks/mariadb-backup.yml index dd0f8c79..585a027e 100644 --- a/roles/mariadb/tasks/mariadb-backup.yml +++ b/roles/mariadb/tasks/mariadb-backup.yml @@ -1,16 +1,17 @@ +--- - name: Copy backup scripts - copy: - src: "../../mysql/files/{{ item }}" - dest: "/usr/local/bin/{{ item }}" + ansible.builtin.copy: + src: ../../mysql/files/{{ item }} + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-mysql-backup - docker-mysql-list - docker-mysql-restore -- name: "Include docker {{ role_name }} backup from restic client role" - include_role: +- name: Include docker {{ role_name }} backup from restic client role + ansible.builtin.include_role: name: restic_client vars: restic_backup_set: "{{ mariadb_backup_set }}" - when: mariadb_backup_set is defined \ No newline at end of file + when: mariadb_backup_set is defined diff --git a/roles/mariadb/tasks/mariadb.yml b/roles/mariadb/tasks/mariadb.yml index 85caed0f..9b5b7d00 100644 --- a/roles/mariadb/tasks/mariadb.yml +++ b/roles/mariadb/tasks/mariadb.yml @@ -1,15 +1,16 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ mariadb_volume_name }}" -- name: "Start {{ role_name }} container {{ mariadb_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ mariadb_hostname }} + community.docker.docker_container: name: "{{ mariadb_hostname }}" labels: description: "{{ mariadb_description }}" image: "{{ mariadb_image }}" restart_policy: unless-stopped - command: "{{ mariadb_command }}" + command: "{{ mariadb_command }}" env: MARIADB_ROOT_PASSWORD: "{{ mariadb_root_password }}" MARIADB_DATABASE: "{{ mariadb_database }}" @@ -24,4 +25,4 @@ max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" tag: "{{ mariadb_hostname }}|{{ role_name }}" - when: mariadb_volume_name is defined \ No newline at end of file + when: mariadb_volume_name is defined diff --git a/roles/matomo/defaults/main.yml b/roles/matomo/defaults/main.yml index 8a1ed771..d13248d3 100644 --- a/roles/matomo/defaults/main.yml +++ b/roles/matomo/defaults/main.yml @@ -1,5 +1,6 @@ +--- matomo_build_image: false matomo_description: Matomo matomo_volume_name: "{{ matomo_hostname }}" matomo_db_password: "{{ vault_matomo_db_password }}" -matomo_db_table_prefix: "" \ No newline at end of file +matomo_db_table_prefix: "" diff --git a/roles/matomo/handlers/main.yml b/roles/matomo/handlers/main.yml index 83fce6c2..c3418047 100644 --- a/roles/matomo/handlers/main.yml +++ b/roles/matomo/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ matomo_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ matomo_image }}" build: path: "{{ docker_build_dir }}/{{ matomo_hostname }}" diff --git a/roles/matomo/meta/main.yml b/roles/matomo/meta/main.yml index 6df2e7d5..e51b9404 100644 --- a/roles/matomo/meta/main.yml +++ b/roles/matomo/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: mysql tags: diff --git a/roles/matomo/tasks/main.yml b/roles/matomo/tasks/main.yml index 66b03ee2..5a8e56d8 100644 --- a/roles/matomo/tasks/main.yml +++ b/roles/matomo/tasks/main.yml @@ -1,19 +1,20 @@ -- name: "On build set new image tag {{ role_name }}:{{ matomo_hostname }}" - set_fact: - matomo_image: "matomo:{{ matomo_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ matomo_hostname }} + ansible.builtin.set_fact: + matomo_image: matomo:{{ matomo_hostname }} matomo_build_image: "{{ matomo_image }}" when: matomo_build_image and matomo_build_image != matomo_image tags: - matomo -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: matomo_build_image and matomo_build_image != matomo_image tags: - matomo -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: matomo_image is defined tags: - matomo diff --git a/roles/matomo/tasks/matomo.yml b/roles/matomo/tasks/matomo.yml index ad03f400..e2a0155a 100644 --- a/roles/matomo/tasks/matomo.yml +++ b/roles/matomo/tasks/matomo.yml @@ -1,13 +1,14 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ matomo_volume_name }}" docker_volume_backup_set: "{{ matomo_volume_backup_set | default([]) }}" when: matomo_volume_name is defined -- name: "Start {{ role_name }} container {{ matomo_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ matomo_hostname }} + community.docker.docker_container: name: "{{ matomo_hostname }}" labels: description: "{{ matomo_description }}" @@ -30,8 +31,8 @@ max-file: "{{ docker_log_max_file }}" tag: "{{ matomo_hostname }}|{{ role_name }}" -- name: "Cron job to run {{ role_name }} background jobs" - cron: - name: "Run {{ role_name }} background jobs" +- name: Cron job to run {{ role_name }} background jobs + ansible.builtin.cron: + name: Run {{ role_name }} background jobs minute: "*/5" - job: "docker exec -u root {{ matomo_hostname }} bash -c \"/usr/local/bin/php /var/www/html/console core:archive --url={{ matomo_url }} > /var/log/matomo-archive.log\"" + job: docker exec -u root {{ matomo_hostname }} bash -c "/usr/local/bin/php /var/www/html/console core:archive --url={{ matomo_url }} > /var/log/matomo-archive.log" diff --git a/roles/matomo/tasks/matomo_build.yml b/roles/matomo/tasks/matomo_build.yml index 7dfe7b61..9b0918b0 100644 --- a/roles/matomo/tasks/matomo_build.yml +++ b/roles/matomo/tasks/matomo_build.yml @@ -1,16 +1,17 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ matomo_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ matomo_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers + ansible.builtin.meta: flush_handlers diff --git a/roles/meilisearch/defaults/main.yml b/roles/meilisearch/defaults/main.yml index b059cbab..aa6053cb 100644 --- a/roles/meilisearch/defaults/main.yml +++ b/roles/meilisearch/defaults/main.yml @@ -1,2 +1,3 @@ -meilisearch_description: "meilisearch" +--- +meilisearch_description: meilisearch meilisearch_master_key: "{{ vault_meilisearch_master_key }}" diff --git a/roles/meilisearch/handlers/main.yml b/roles/meilisearch/handlers/main.yml index 83fce6c2..c3418047 100644 --- a/roles/meilisearch/handlers/main.yml +++ b/roles/meilisearch/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ matomo_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ matomo_image }}" build: path: "{{ docker_build_dir }}/{{ matomo_hostname }}" diff --git a/roles/meilisearch/meta/main.yml b/roles/meilisearch/meta/main.yml index da0bb35d..c2e3bea6 100644 --- a/roles/meilisearch/meta/main.yml +++ b/roles/meilisearch/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: docker tags: diff --git a/roles/meilisearch/tasks/main.yml b/roles/meilisearch/tasks/main.yml index 544fd066..e2616ee5 100644 --- a/roles/meilisearch/tasks/main.yml +++ b/roles/meilisearch/tasks/main.yml @@ -1,3 +1,4 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" - when: meilisearch_image is defined \ No newline at end of file +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" + when: meilisearch_image is defined diff --git a/roles/meilisearch/tasks/meilisearch.yml b/roles/meilisearch/tasks/meilisearch.yml index 0c20fa77..844c542c 100644 --- a/roles/meilisearch/tasks/meilisearch.yml +++ b/roles/meilisearch/tasks/meilisearch.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ meilisearch_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ meilisearch_hostname }} + community.docker.docker_container: name: "{{ meilisearch_hostname }}" labels: description: "{{ meilisearch_description }}" @@ -17,4 +18,3 @@ max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" tag: "{{ matomo_hostname }}|{{ role_name }}" - diff --git a/roles/metricbeat/defaults/main.yml b/roles/metricbeat/defaults/main.yml index 7fbe6d3a..de93f820 100644 --- a/roles/metricbeat/defaults/main.yml +++ b/roles/metricbeat/defaults/main.yml @@ -1,2 +1,3 @@ +--- metricbeat_description: Metricbeat -metricbeat_data_dir: "/usr/share/{{ metricbeat_hostname }}" +metricbeat_data_dir: /usr/share/{{ metricbeat_hostname }} diff --git a/roles/metricbeat/handlers/main.yml b/roles/metricbeat/handlers/main.yml index 05bf0cf7..b734d70d 100644 --- a/roles/metricbeat/handlers/main.yml +++ b/roles/metricbeat/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ metricbeat_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/metricbeat/meta/main.yml b/roles/metricbeat/meta/main.yml index 74d70baf..c2ebed5b 100644 --- a/roles/metricbeat/meta/main.yml +++ b/roles/metricbeat/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: kibana tags: diff --git a/roles/metricbeat/tasks/main.yml b/roles/metricbeat/tasks/main.yml index 57575283..8a0a77c4 100644 --- a/roles/metricbeat/tasks/main.yml +++ b/roles/metricbeat/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: metricbeat_image is defined tags: - - metricbeat \ No newline at end of file + - metricbeat diff --git a/roles/metricbeat/tasks/metricbeat.yml b/roles/metricbeat/tasks/metricbeat.yml index b8025cbf..40b1e949 100644 --- a/roles/metricbeat/tasks/metricbeat.yml +++ b/roles/metricbeat/tasks/metricbeat.yml @@ -1,5 +1,6 @@ -- name: "Check {{ role_name }} setup" - command: > +--- +- name: Check {{ role_name }} setup + ansible.builtin.command: > /bin/bash -c 'curl -X GET "{{ metricbeat_elasticsearch_username }}: {{ metricbeat_elasticsearch_password }}@ localhost:9200/_cat/templates?v&s=name&pretty" | grep metricbeat' @@ -8,8 +9,8 @@ when: metricbeat_setup register: check_metricbeat_setup -- name: "Run {{ role_name }} setup" - docker_container: +- name: Run {{ role_name }} setup + community.docker.docker_container: name: "{{ metricbeat_hostname }}" labels: description: "{{ metricbeat_description }}" @@ -32,19 +33,19 @@ tag: "{{ metricbeat_hostname }}|{{ role_name }}" when: metricbeat_setup and check_metricbeat_setup.failed -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ metricbeat_data_dir }}" state: directory -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: metricbeat.yml dest: "{{ metricbeat_data_dir }}/" notify: Restart metricbeat container -- name: "Start {{ role_name }} container {{ metricbeat_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ metricbeat_hostname }} + community.docker.docker_container: name: "{{ metricbeat_hostname }}" labels: description: "{{ metricbeat_description }}" @@ -64,4 +65,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ metricbeat_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ metricbeat_hostname }}|{{ role_name }}" diff --git a/roles/moodle/defaults/main.yml b/roles/moodle/defaults/main.yml index 28eb613e..d4d1fc76 100644 --- a/roles/moodle/defaults/main.yml +++ b/roles/moodle/defaults/main.yml @@ -1,3 +1,4 @@ +--- moodle_description: Moodle moodle_volume_name: "{{ moodle_hostname }}" moodle_database_type: mariadb @@ -5,4 +6,4 @@ moodle_mysql_client_flavor: mariadb moodle_smtp_port: "587" moodle_smtp_protocol: tls moodle_php_max_upload_filesize: 32M -moodle_skip_install: "false" \ No newline at end of file +moodle_skip_install: "false" diff --git a/roles/moodle/meta/main.yml b/roles/moodle/meta/main.yml index f7a62f45..0da27740 100644 --- a/roles/moodle/meta/main.yml +++ b/roles/moodle/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: mariadb tags: - mariadb - - depends \ No newline at end of file + - depends diff --git a/roles/moodle/tasks/main.yml b/roles/moodle/tasks/main.yml index 56540337..8a7bb692 100644 --- a/roles/moodle/tasks/main.yml +++ b/roles/moodle/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: moodle_image is defined tags: - - moodle \ No newline at end of file + - moodle diff --git a/roles/moodle/tasks/moodle.yml b/roles/moodle/tasks/moodle.yml index 8c2197cd..cc4cc9d7 100644 --- a/roles/moodle/tasks/moodle.yml +++ b/roles/moodle/tasks/moodle.yml @@ -1,13 +1,14 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ moodle_volume_name }}" docker_volume_backup_set: "{{ moodle_volume_backup_set | default([]) }}" when: moodle_volume_name is defined -- name: "Start {{ role_name }} container {{ moodle_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ moodle_hostname }} + community.docker.docker_container: name: "{{ moodle_hostname }}" labels: description: "{{ moodle_description }}" diff --git a/roles/mysql/defaults/main.yml b/roles/mysql/defaults/main.yml index 70c88a52..93657eae 100644 --- a/roles/mysql/defaults/main.yml +++ b/roles/mysql/defaults/main.yml @@ -1,4 +1,5 @@ +--- mysql_description: MySQL mysql_volume_name: "{{ mysql_hostname }}" mysql_password: "{{ vault_mysql_password }}" -mysql_root_password: "{{ vault_mysql_root_password }}" \ No newline at end of file +mysql_root_password: "{{ vault_mysql_root_password }}" diff --git a/roles/mysql/meta/main.yml b/roles/mysql/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/mysql/meta/main.yml +++ b/roles/mysql/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/mysql/tasks/main.yml b/roles/mysql/tasks/main.yml index fe55ddf5..8decbc6e 100644 --- a/roles/mysql/tasks/main.yml +++ b/roles/mysql/tasks/main.yml @@ -1,11 +1,12 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: mysql_image is defined tags: - - mysql + - mysql -- name: "Include {{ role_name }} backup tasks" - include_tasks: "{{ role_name }}-backup.yml" +- name: Include {{ role_name }} backup tasks + ansible.builtin.include_tasks: "{{ role_name }}-backup.yml" when: mysql_backup_set is defined tags: - - mysql \ No newline at end of file + - mysql diff --git a/roles/mysql/tasks/mysql-backup.yml b/roles/mysql/tasks/mysql-backup.yml index c7dbf946..afcce5fa 100644 --- a/roles/mysql/tasks/mysql-backup.yml +++ b/roles/mysql/tasks/mysql-backup.yml @@ -1,7 +1,8 @@ +--- - name: Copy backup scripts - copy: + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-mysql-backup @@ -9,9 +10,9 @@ - docker-mysql-restore - docker-mysql-drop -- name: "Include docker {{ role_name }} backup from restic client role" - include_role: +- name: Include docker {{ role_name }} backup from restic client role + ansible.builtin.include_role: name: restic_client vars: restic_backup_set: "{{ mysql_backup_set }}" - when: mysql_backup_set is defined \ No newline at end of file + when: mysql_backup_set is defined diff --git a/roles/mysql/tasks/mysql.yml b/roles/mysql/tasks/mysql.yml index 9607e9b4..a4eee82d 100644 --- a/roles/mysql/tasks/mysql.yml +++ b/roles/mysql/tasks/mysql.yml @@ -1,9 +1,10 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ mysql_volume_name }}" -- name: "Start {{ role_name }} container {{ mysql_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ mysql_hostname }} + community.docker.docker_container: name: "{{ mysql_hostname }}" labels: description: "{{ mysql_description }}" diff --git a/roles/nextcloud/defaults/main.yml b/roles/nextcloud/defaults/main.yml index e50a6f01..634c248d 100644 --- a/roles/nextcloud/defaults/main.yml +++ b/roles/nextcloud/defaults/main.yml @@ -1,3 +1,4 @@ +--- nextcloud_description: Nextcloud nextcloud_timezone: Europe/Berlin nextcloud_volume_name: "{{ nextcloud_hostname }}" @@ -6,4 +7,4 @@ nextcloud_integrity_check: false nextcloud_build_image: false vault_nextcloud_postgres_password: "{{ vault_nextcloud_admin_password }}" nextcloud_postgres_password: "{{ vault_nextcloud_postgres_password }}" -nextcloud_mysql_password: "{{ vault_nextcloud_mysql_password }}" \ No newline at end of file +nextcloud_mysql_password: "{{ vault_nextcloud_mysql_password }}" diff --git a/roles/nextcloud/handlers/main.yml b/roles/nextcloud/handlers/main.yml index 2bddb65a..4b92c9bc 100644 --- a/roles/nextcloud/handlers/main.yml +++ b/roles/nextcloud/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ nextcloud_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ nextcloud_image }}" build: path: "{{ docker_build_dir }}/{{ nextcloud_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/nextcloud/meta/main.yml b/roles/nextcloud/meta/main.yml index 1abcd059..5359c8e2 100644 --- a/roles/nextcloud/meta/main.yml +++ b/roles/nextcloud/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: postgres tags: diff --git a/roles/nextcloud/tasks/main.yml b/roles/nextcloud/tasks/main.yml index e2e2af36..a1120392 100644 --- a/roles/nextcloud/tasks/main.yml +++ b/roles/nextcloud/tasks/main.yml @@ -1,25 +1,26 @@ -- name: "On build set new image tag {{ role_name }}:{{ nextcloud_hostname }}" - set_fact: - nextcloud_image: "nextcloud:{{ nextcloud_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ nextcloud_hostname }} + ansible.builtin.set_fact: + nextcloud_image: nextcloud:{{ nextcloud_hostname }} nextcloud_build_image: "{{ nextcloud_image }}" when: nextcloud_build_image and nextcloud_build_image != nextcloud_image tags: - nextcloud -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: nextcloud_build_image and nextcloud_build_image != nextcloud_image tags: - nextcloud -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: nextcloud_image is defined tags: - nextcloud -- name: "Include {{ role_name }} integrity tasks" - include_tasks: "{{ role_name }}_integrity.yml" +- name: Include {{ role_name }} integrity tasks + ansible.builtin.include_tasks: "{{ role_name }}_integrity.yml" when: nextcloud_integrity_check tags: - nextcloud diff --git a/roles/nextcloud/tasks/nextcloud.yml b/roles/nextcloud/tasks/nextcloud.yml index 0915f7f1..98689a73 100644 --- a/roles/nextcloud/tasks/nextcloud.yml +++ b/roles/nextcloud/tasks/nextcloud.yml @@ -1,13 +1,14 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ nextcloud_volume_name }}" docker_volume_backup_set: "{{ nextcloud_volume_backup_set | default([]) }}" when: nextcloud_volume_name is defined -- name: "Init {{ role_name }} env" - set_fact: +- name: Init {{ role_name }} env + ansible.builtin.set_fact: nextcloud_env: NEXTCLOUD_HOSTNAME: "{{ nextcloud_domain }}" NEXTCLOUD_TRUSTED_DOMAINS: "{{ nextcloud_trusted_domains }}" @@ -20,19 +21,19 @@ SMTP_HOST: "{{ nextcloud_mail_hostname }}" SMTP_SECURE: "{{ nextcloud_mail_encryption }}" SMTP_PORT: "{{ nextcloud_mail_port }}" - SMTP_AUTHTYPE: "LOGIN" + SMTP_AUTHTYPE: LOGIN SMTP_NAME: "{{ nextcloud_mail_username }}" SMTP_PASSWORD: "{{ nextcloud_mail_password }}" MAIL_FROM_ADDRESS: "{{ nextcloud_mail_from }}" MAIL_DOMAIN: "{{ nextcloud_mail_username.split('@')[1] }}" TZ: "{{ nextcloud_timezone }}" - OVERWRITEPROTOCOL: "https" + OVERWRITEPROTOCOL: https OVERWRITEHOST: "{{ nextcloud_domain }}" REDIS_HOST: "{{ nextcloud_redis_hostname }}" # FIXME: Not working without redis REDIS_HOST_PASSWORD: "{{ nextcloud_redis_password }}" -- name: "Append postgres env vars" - set_fact: +- name: Append postgres env vars + ansible.builtin.set_fact: nextcloud_env: "{{ nextcloud_env | combine(item) }}" with_items: - POSTGRES_HOST: "{{ nextcloud_postgres_hostname }}:5432" @@ -41,8 +42,8 @@ - POSTGRES_DB: "{{ nextcloud_postgres_db }}" when: nextcloud_postgres_hostname is defined -- name: "Append mysql env vars" - set_fact: +- name: Append mysql env vars + ansible.builtin.set_fact: nextcloud_env: "{{ nextcloud_env | combine(item) }}" with_items: - MYSQL_HOST: "{{ nextcloud_mysql_hostname }}" @@ -51,8 +52,8 @@ - MYSQL_DATABASE: "{{ nextcloud_mysql_db }}" when: nextcloud_mysql_hostname is defined -- name: "Start {{ role_name }} container {{ nextcloud_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ nextcloud_hostname }} + community.docker.docker_container: name: "{{ nextcloud_hostname }}" labels: description: "{{ nextcloud_description }}" @@ -71,13 +72,13 @@ tag: "{{ nextcloud_hostname }}|{{ role_name }}" register: start_nextcloud_container -- name: "Wait for {{ role_name }} container" # noqa 503 - pause: +- name: Wait for {{ role_name }} container # noqa 503 + ansible.builtin.pause: seconds: "30" when: start_nextcloud_container.changed -- name: "Cron job to run {{ role_name }} background jobs" - cron: - name: "Run nextcloud background jobs" +- name: Cron job to run {{ role_name }} background jobs + ansible.builtin.cron: + name: Run nextcloud background jobs minute: "*/5" - job: "docker exec -u www-data {{ nextcloud_hostname }} php -f /var/www/html/cron.php; write-node-exporter-metric -c 'Run nextcloud background jobs' -v $?" + job: docker exec -u www-data {{ nextcloud_hostname }} php -f /var/www/html/cron.php; write-node-exporter-metric -c 'Run nextcloud background jobs' -v $? diff --git a/roles/nextcloud/tasks/nextcloud_build.yml b/roles/nextcloud/tasks/nextcloud_build.yml index 75480058..b2a91ced 100644 --- a/roles/nextcloud/tasks/nextcloud_build.yml +++ b/roles/nextcloud/tasks/nextcloud_build.yml @@ -1,16 +1,17 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ nextcloud_hostname }}/providers" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ nextcloud_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/roles/nextcloud/tasks/nextcloud_integrity.yml b/roles/nextcloud/tasks/nextcloud_integrity.yml index b717e63c..23014162 100644 --- a/roles/nextcloud/tasks/nextcloud_integrity.yml +++ b/roles/nextcloud/tasks/nextcloud_integrity.yml @@ -1,14 +1,15 @@ +--- - name: Add missing indices - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ db:add-missing-indices" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ db:add-missing-indices register: result changed_when: result.stdout is search('table updated successfully') - name: Add missing primary keys - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ db:add-missing-primary-keys" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ db:add-missing-primary-keys register: result changed_when: result.stdout is search('table updated successfully') - name: Disable skeleton directory - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ config:system:set skeletondirectory --value=''" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ config:system:set skeletondirectory --value='' register: result - changed_when: result.stdout is search('System config value skeletondirectory set to empty string') \ No newline at end of file + changed_when: result.stdout is search('System config value skeletondirectory set to empty string') diff --git a/roles/nextcloud_apps/tasks/main.yml b/roles/nextcloud_apps/tasks/main.yml index 1e145df9..a59748ce 100644 --- a/roles/nextcloud_apps/tasks/main.yml +++ b/roles/nextcloud_apps/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: nextcloud_apps is defined tags: - - nextcloud_apps \ No newline at end of file + - nextcloud_apps diff --git a/roles/nextcloud_apps/tasks/nextcloud_apps.yml b/roles/nextcloud_apps/tasks/nextcloud_apps.yml index fb4c3b2d..06ec60bb 100644 --- a/roles/nextcloud_apps/tasks/nextcloud_apps.yml +++ b/roles/nextcloud_apps/tasks/nextcloud_apps.yml @@ -1,19 +1,20 @@ +--- - name: Read apps shipped with Nextcloud - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:list --shipped=true --no-warnings --output=json" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:list --shipped=true --no-warnings --output=json register: _result changed_when: false - name: Parse occ command response as JSON - set_fact: + ansible.builtin.set_fact: nextcloud_shipped_apps: "{{ _result.stdout | from_json }}" - name: Read external apps installed by the user - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:list --shipped=false --no-warnings --output=json" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:list --shipped=false --no-warnings --output=json register: _result changed_when: false - name: Parse occ command response as JSON - set_fact: + ansible.builtin.set_fact: nextcloud_installed_apps: "{{ _result.stdout | from_json }}" # - name: List installed apps @@ -30,61 +31,52 @@ # Note: Shipped apps cannot be removed - name: Remove unwanted apps - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:remove {{ item.name }}" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:remove {{ item.name }} loop: "{{ nextcloud_apps }}" register: result failed_when: result.stdout is not search('removed') or result is failed changed_when: result is not failed when: - - item.name in (nextcloud_installed_apps.enabled - | combine(nextcloud_installed_apps.disabled)) + - item.name in (nextcloud_installed_apps.enabled | combine(nextcloud_installed_apps.disabled)) - item.state | default('enabled') == 'absent' - name: Install apps - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:install {{ item.name }}" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:install {{ item.name }} loop: "{{ nextcloud_apps }}" register: result failed_when: result.stdout is not search('installed') or result is failed changed_when: result is not failed when: - - item.name not in (nextcloud_shipped_apps.enabled - | combine(nextcloud_shipped_apps.disabled)) - - item.name not in (nextcloud_installed_apps.enabled - | combine(nextcloud_installed_apps.disabled)) + - item.name not in (nextcloud_shipped_apps.enabled | combine(nextcloud_shipped_apps.disabled)) + - item.name not in (nextcloud_installed_apps.enabled | combine(nextcloud_installed_apps.disabled)) - item.state | default('enabled') != 'absent' # Update list of available apps after installation and removal: - name: Re-read installed apps - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:list --shipped=false --no-warnings --output=json" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:list --shipped=false --no-warnings --output=json register: _result changed_when: false - name: Parse occ command response as JSON - set_fact: + ansible.builtin.set_fact: nextcloud_installed_apps: "{{ _result.stdout | from_json }}" - name: Enable apps - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:enable {{ item.name }}" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:enable {{ item.name }} loop: "{{ nextcloud_apps }}" when: - (item.state | default('enabled')) == 'enabled' - - item.name not in ( - nextcloud_installed_apps.enabled - | combine(nextcloud_shipped_apps.enabled) - ) + - item.name not in ( nextcloud_installed_apps.enabled | combine(nextcloud_shipped_apps.enabled) ) - name: Disable apps - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:disable {{ item.name }}" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:disable {{ item.name }} loop: "{{ nextcloud_apps }}" when: - (item.state | default('enabled')) == 'disabled' - - item.name not in ( - nextcloud_installed_apps.disabled - | combine(nextcloud_shipped_apps.disabled) - ) + - item.name not in ( nextcloud_installed_apps.disabled | combine(nextcloud_shipped_apps.disabled) ) - name: Update enabled apps - command: "docker exec -u www-data {{ nextcloud_hostname }} php occ app:update {{ item.key }}" + ansible.builtin.command: docker exec -u www-data {{ nextcloud_hostname }} php occ app:update {{ item.key }} loop: >- {{ nextcloud_installed_apps.enabled diff --git a/roles/nextcloud_exporter/defaults/main.yml b/roles/nextcloud_exporter/defaults/main.yml index 8b148be9..a01246be 100644 --- a/roles/nextcloud_exporter/defaults/main.yml +++ b/roles/nextcloud_exporter/defaults/main.yml @@ -1,4 +1,5 @@ +--- nextcloud_exporter_requires_package: python3-passlib -nextcloud_exporter_description: "Nextcloud Exporter {{ nextcloud_hostname }}" +nextcloud_exporter_description: Nextcloud Exporter {{ nextcloud_hostname }} nextcloud_exporter_nginx_data_dir: "{{ nginx_data_dir }}/proxies" -nextcloud_exporter_proxy_basic_auth_username: nextcloud-exporter \ No newline at end of file +nextcloud_exporter_proxy_basic_auth_username: nextcloud-exporter diff --git a/roles/nextcloud_exporter/meta/main.yml b/roles/nextcloud_exporter/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/nextcloud_exporter/meta/main.yml +++ b/roles/nextcloud_exporter/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/nextcloud_exporter/tasks/main.yml b/roles/nextcloud_exporter/tasks/main.yml index a5983077..d12132c1 100644 --- a/roles/nextcloud_exporter/tasks/main.yml +++ b/roles/nextcloud_exporter/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: nextcloud_exporter_image is defined tags: - nextcloud_exporter -- name: "Include {{ role_name }} nginx config tasks" - include_tasks: "{{ role_name }}_nginx_config.yml" +- name: Include {{ role_name }} nginx config tasks + ansible.builtin.include_tasks: "{{ role_name }}_nginx_config.yml" when: nextcloud_exporter_image is defined tags: - nextcloud_exporter - - nextcloud_exporter_nginx_config \ No newline at end of file + - nextcloud_exporter_nginx_config diff --git a/roles/nextcloud_exporter/tasks/nextcloud_exporter.yml b/roles/nextcloud_exporter/tasks/nextcloud_exporter.yml index bf39f9cb..0456e127 100644 --- a/roles/nextcloud_exporter/tasks/nextcloud_exporter.yml +++ b/roles/nextcloud_exporter/tasks/nextcloud_exporter.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ nextcloud_exporter_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ nextcloud_exporter_hostname }} + community.docker.docker_container: name: "{{ nextcloud_exporter_hostname }}" labels: description: "{{ nextcloud_exporter_description }}" @@ -16,4 +17,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ nextcloud_exporter_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ nextcloud_exporter_hostname }}|{{ role_name }}" diff --git a/roles/nextcloud_exporter/tasks/nextcloud_exporter_nginx_config.yml b/roles/nextcloud_exporter/tasks/nextcloud_exporter_nginx_config.yml index f841672d..7ca892ce 100644 --- a/roles/nextcloud_exporter/tasks/nextcloud_exporter_nginx_config.yml +++ b/roles/nextcloud_exporter/tasks/nextcloud_exporter_nginx_config.yml @@ -1,24 +1,25 @@ +--- - name: Ensure nginx data dir exists - file: + ansible.builtin.file: path: "{{ nextcloud_exporter_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ nextcloud_exporter_requires_package }} is not installed" - fail: - msg: "Package {{ nextcloud_exporter_requires_package }} is not installed!" +- name: Fail if package {{ nextcloud_exporter_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ nextcloud_exporter_requires_package }} is not installed! when: nextcloud_exporter_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ nextcloud_exporter_nginx_data_dir }}/nextcloud-exporter.htpasswd" name: "{{ nextcloud_exporter_proxy_basic_auth_username }}" password: "{{ nextcloud_exporter_proxy_basic_auth_password }}" -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: nextcloud-exporter.nginx - dest: "{{ nextcloud_exporter_nginx_data_dir }}/nextcloud-exporter.nginx" \ No newline at end of file + dest: "{{ nextcloud_exporter_nginx_data_dir }}/nextcloud-exporter.nginx" diff --git a/roles/nginx/defaults/main.yml b/roles/nginx/defaults/main.yml index b7b06d23..b07c83b0 100644 --- a/roles/nginx/defaults/main.yml +++ b/roles/nginx/defaults/main.yml @@ -1,6 +1,7 @@ +--- nginx_ports: - 80:80 - 443:443 nginx_description: Nginx -nginx_data_dir: "/usr/share/{{ nginx_hostname }}" -nginx_cache_enabled: true \ No newline at end of file +nginx_data_dir: /usr/share/{{ nginx_hostname }} +nginx_cache_enabled: true diff --git a/roles/nginx/handlers/main.yml b/roles/nginx/handlers/main.yml index 122b9c9c..9fd08191 100644 --- a/roles/nginx/handlers/main.yml +++ b/roles/nginx/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ nginx_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/nginx/meta/main.yml b/roles/nginx/meta/main.yml index 90249361..5f53805c 100644 --- a/roles/nginx/meta/main.yml +++ b/roles/nginx/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: certbot tags: - certbot - - depends \ No newline at end of file + - depends diff --git a/roles/nginx/tasks/main.yml b/roles/nginx/tasks/main.yml index 91cb0bca..9d93f6d5 100644 --- a/roles/nginx/tasks/main.yml +++ b/roles/nginx/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} config tasks" - include_tasks: "{{ role_name }}_config.yml" +--- +- name: Include {{ role_name }} config tasks + ansible.builtin.include_tasks: "{{ role_name }}_config.yml" when: nginx_hostname is defined tags: - nginx_config - nginx -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: nginx_image is defined tags: - nginx diff --git a/roles/nginx/tasks/nginx.yml b/roles/nginx/tasks/nginx.yml index 30389a25..b881c9d4 100644 --- a/roles/nginx/tasks/nginx.yml +++ b/roles/nginx/tasks/nginx.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ nginx_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ nginx_hostname }} + community.docker.docker_container: name: "{{ nginx_hostname }}" labels: description: "{{ nginx_description }}" @@ -21,10 +22,10 @@ max-file: "{{ docker_log_max_file }}" tag: "{{ nginx_hostname }}|{{ role_name }}" -- name: "Copy {{ role_name }} scripts" - copy: +- name: Copy {{ role_name }} scripts + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - - docker-nginx-reload \ No newline at end of file + - docker-nginx-reload diff --git a/roles/nginx/tasks/nginx_config.yml b/roles/nginx/tasks/nginx_config.yml index 2794f3b8..7cc04f43 100644 --- a/roles/nginx/tasks/nginx_config.yml +++ b/roles/nginx/tasks/nginx_config.yml @@ -1,15 +1,16 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ nginx_data_dir }}/proxies" state: directory -- name: "Copy nginx default conf" - template: +- name: Copy nginx default conf + ansible.builtin.template: src: default.conf dest: "{{ nginx_data_dir }}/default.conf" - -- name: "Copy {{ role_name }} conf" - template: + +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: nginx-proxy.conf dest: "{{ nginx_data_dir }}/proxies/{{ item.src_hostname | replace('*.', 'wildcard.') }}.conf" vars: @@ -26,33 +27,33 @@ locations: "{{ item.locations | default(false) }}" server_names: "{{ item.server_names | default(false) }}" cache: "{{ item.cache | default(false) }}" - limit_req_zone: "{{ item.limit_req_zone | default(false) }}" + limit_req_zone: "{{ item.limit_req_zone | default(false) }}" loop: "{{ nginx_proxies }}" - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container when: nginx_proxies is defined -- name: "Register {{ role_name }} conf files" # noqa 306 - shell: "find {{ nginx_data_dir }}/proxies/ -type f -name '*.conf' -printf '%f\n'" +- name: Register {{ role_name }} conf files # noqa 306 + ansible.builtin.shell: "find {{ nginx_data_dir }}/proxies/ -type f -name '*.conf' -printf '%f\n'" changed_when: false register: nginx_proxy_conf_files -- name: "Create managed file list from proxy list" - set_fact: +- name: Create managed file list from proxy list + ansible.builtin.set_fact: managed_files: "{{ nginx_proxies | map(attribute='src_hostname') | map('replace', '*.', 'wildcard.') | map('regex_replace', '^(.*)$', '\\1.conf') | list }}" when: nginx_proxies is defined - -- name: "Remove unmanaged {{ role_name }} conf files" - file: + +- name: Remove unmanaged {{ role_name }} conf files + ansible.builtin.file: path: "{{ nginx_data_dir }}/proxies/{{ item }}" - state: "absent" + state: absent loop: "{{ nginx_proxy_conf_files.stdout_lines }}" when: item not in managed_files -- name: "Get infos on container {{ nginx_hostname }}" - docker_container_info: +- name: Get infos on container {{ nginx_hostname }} + community.docker.docker_container_info: name: "{{ nginx_hostname }}" register: nginx_container -- name: "Test {{ role_name }} conf files" - command: "docker exec {{ nginx_hostname }} nginx -t" +- name: Test {{ role_name }} conf files + ansible.builtin.command: docker exec {{ nginx_hostname }} nginx -t when: nginx_container.exists diff --git a/roles/nginx_waf/defaults/main.yml b/roles/nginx_waf/defaults/main.yml index 56011ec2..c9a5b9b4 100644 --- a/roles/nginx_waf/defaults/main.yml +++ b/roles/nginx_waf/defaults/main.yml @@ -1,7 +1,8 @@ +--- nginx_waf_description: Nginx WAF -nginx_waf_data_dir: "/usr/share/{{ nginx_waf_hostname }}" +nginx_waf_data_dir: /usr/share/{{ nginx_waf_hostname }} nginx_waf_http_port: 80 nginx_waf_https_port: 443 nginx_waf_modsec_rule_engine: "On" nginx_waf_anomaly_inbound: "5" -nginx_waf_allowed_methods: "GET HEAD POST OPTIONS" \ No newline at end of file +nginx_waf_allowed_methods: GET HEAD POST OPTIONS diff --git a/roles/nginx_waf/tasks/main.yml b/roles/nginx_waf/tasks/main.yml index dd9f5ef9..7478b1c4 100644 --- a/roles/nginx_waf/tasks/main.yml +++ b/roles/nginx_waf/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: nginx_waf_image is defined tags: - nginx_waf diff --git a/roles/nginx_waf/tasks/nginx_waf.yml b/roles/nginx_waf/tasks/nginx_waf.yml index fa9245ed..0d3eb408 100644 --- a/roles/nginx_waf/tasks/nginx_waf.yml +++ b/roles/nginx_waf/tasks/nginx_waf.yml @@ -1,18 +1,19 @@ -- name: "Include nginx role and apply nginx_config tasks" - include_role: +--- +- name: Include nginx role and apply nginx_config tasks + ansible.builtin.include_role: name: nginx tasks_from: nginx_config -- name: "Copy rule tuning conf" - template: +- name: Copy rule tuning conf + ansible.builtin.template: src: "{{ item }}" dest: "{{ nginx_data_dir }}/{{ item }}" loop: - REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf - RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf -- name: "Start {{ role_name }} container {{ nginx_waf_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ nginx_waf_hostname }} + community.docker.docker_container: name: "{{ nginx_waf_hostname }}" labels: description: "{{ nginx_waf_description }}" @@ -41,4 +42,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ nginx_waf_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ nginx_waf_hostname }}|{{ role_name }}" diff --git a/roles/node_exporter/defaults/main.yml b/roles/node_exporter/defaults/main.yml index d2111d6b..83468d51 100644 --- a/roles/node_exporter/defaults/main.yml +++ b/roles/node_exporter/defaults/main.yml @@ -1,4 +1,5 @@ +--- node_exporter_requires_package: python3-passlib -node_exporter_description: "Node Exporter {{ inventory_hostname_short }}" +node_exporter_description: Node Exporter {{ inventory_hostname_short }} node_exporter_proxy_basic_auth_username: node-exporter -node_exporter_nginx_data_dir: "{{ nginx_data_dir }}/proxies" \ No newline at end of file +node_exporter_nginx_data_dir: "{{ nginx_data_dir }}/proxies" diff --git a/roles/node_exporter/meta/main.yml b/roles/node_exporter/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/node_exporter/meta/main.yml +++ b/roles/node_exporter/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/node_exporter/tasks/main.yml b/roles/node_exporter/tasks/main.yml index 9a780abe..d87bf814 100644 --- a/roles/node_exporter/tasks/main.yml +++ b/roles/node_exporter/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: node_exporter_image is defined tags: - node_exporter -- name: "Include {{ role_name }} nginx config tasks" - include_tasks: "{{ role_name }}_nginx_config.yml" +- name: Include {{ role_name }} nginx config tasks + ansible.builtin.include_tasks: "{{ role_name }}_nginx_config.yml" when: node_exporter_image is defined tags: - node_exporter - - node_exporter_nginx_config \ No newline at end of file + - node_exporter_nginx_config diff --git a/roles/node_exporter/tasks/node_exporter.yml b/roles/node_exporter/tasks/node_exporter.yml index 4e4a86e8..da40ac8f 100644 --- a/roles/node_exporter/tasks/node_exporter.yml +++ b/roles/node_exporter/tasks/node_exporter.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ node_exporter_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ node_exporter_hostname }} + community.docker.docker_container: name: "{{ node_exporter_hostname }}" labels: description: "{{ node_exporter_description }}" @@ -7,8 +8,8 @@ restart_policy: unless-stopped recreate: false volumes: - - "/:/host:ro,rslave" - command: '--collector.textfile.directory=/host/var/tmp --path.rootfs=/host' + - /:/host:ro,rslave + command: --collector.textfile.directory=/host/var/tmp --path.rootfs=/host networks: - name: "{{ docker_network_name }}" log_driver: "{{ docker_log_driver }}" @@ -17,24 +18,24 @@ max-file: "{{ docker_log_max_file }}" tag: "{{ node_exporter_hostname }}|{{ role_name }}" -- name: "Copy {{ role_name }} file scripts" - copy: +- name: Copy {{ role_name }} file scripts + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - write-node-exporter-metric -- name: "Copy {{ role_name }} templated scripts" - template: +- name: Copy {{ role_name }} templated scripts + ansible.builtin.template: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - write-docker-volume-metric -- name: "Cron job to run {{ role_name }} background jobs" - cron: - name: "Run write-docker-volume-metric job" +- name: Cron job to run {{ role_name }} background jobs + ansible.builtin.cron: + name: Run write-docker-volume-metric job minute: "*" - job: "write-docker-volume-metric" \ No newline at end of file + job: write-docker-volume-metric diff --git a/roles/node_exporter/tasks/node_exporter_nginx_config.yml b/roles/node_exporter/tasks/node_exporter_nginx_config.yml index f675780a..388e3b46 100644 --- a/roles/node_exporter/tasks/node_exporter_nginx_config.yml +++ b/roles/node_exporter/tasks/node_exporter_nginx_config.yml @@ -1,24 +1,25 @@ +--- - name: Ensure nginx data dir exists - file: + ansible.builtin.file: path: "{{ node_exporter_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ node_exporter_requires_package }} is not installed" - fail: - msg: "Package {{ node_exporter_requires_package }} is not installed!" +- name: Fail if package {{ node_exporter_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ node_exporter_requires_package }} is not installed! when: node_exporter_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ node_exporter_nginx_data_dir }}/node-exporter.htpasswd" name: "{{ node_exporter_proxy_basic_auth_username }}" password: "{{ node_exporter_proxy_basic_auth_password }}" -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: node-exporter.nginx - dest: "{{ node_exporter_nginx_data_dir }}/node-exporter.nginx" \ No newline at end of file + dest: "{{ node_exporter_nginx_data_dir }}/node-exporter.nginx" diff --git a/roles/odoo/defaults/main.yml b/roles/odoo/defaults/main.yml index 8933b00e..82b31115 100644 --- a/roles/odoo/defaults/main.yml +++ b/roles/odoo/defaults/main.yml @@ -1,9 +1,10 @@ +--- odoo_ports: - - "127.0.0.1:8069:8069" + - 127.0.0.1:8069:8069 odoo_description: Odoo odoo_state: started odoo_timezone: Europe/Berlin -odoo_data_dir: "/usr/share/{{ odoo_hostname }}" +odoo_data_dir: /usr/share/{{ odoo_hostname }} odoo_volume_name: "{{ odoo_hostname }}" odoo_replicas: 1 odoo_conf_limit_request: 8192 diff --git a/roles/odoo/handlers/main.yml b/roles/odoo/handlers/main.yml index 32476a9c..1da8bbf9 100644 --- a/roles/odoo/handlers/main.yml +++ b/roles/odoo/handlers/main.yml @@ -1,2 +1,3 @@ -- name: "Restart {{ role_name }} container" - include_tasks: odoo-handlers.yml \ No newline at end of file +--- +- name: Restart {{ role_name }} container + ansible.builtin.include_tasks: odoo-handlers.yml diff --git a/roles/odoo/handlers/odoo-handlers.yml b/roles/odoo/handlers/odoo-handlers.yml index df9687af..78215586 100644 --- a/roles/odoo/handlers/odoo-handlers.yml +++ b/roles/odoo/handlers/odoo-handlers.yml @@ -1,12 +1,13 @@ -- name: "Restart odoo container" - docker_container: +--- +- name: Restart odoo container + community.docker.docker_container: name: "{{ odoo_hostname }}" restart: true when: odoo_replicas == 1 -- name: "Restart odoo container" - docker_container: +- name: Restart odoo container + community.docker.docker_container: name: "{{ odoo_hostname }}_{{ item }}" restart: true with_sequence: start=1 end={{ odoo_replicas }} - when: odoo_replicas > 1 \ No newline at end of file + when: odoo_replicas > 1 diff --git a/roles/odoo/meta/main.yml b/roles/odoo/meta/main.yml index 048ff76e..80d1be24 100644 --- a/roles/odoo/meta/main.yml +++ b/roles/odoo/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: postgres tags: - postgres - - depends \ No newline at end of file + - depends diff --git a/roles/odoo/tasks/main.yml b/roles/odoo/tasks/main.yml index 40a5107b..e1dba889 100644 --- a/roles/odoo/tasks/main.yml +++ b/roles/odoo/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: odoo_image is defined tags: - - odoo \ No newline at end of file + - odoo diff --git a/roles/odoo/tasks/odoo.yml b/roles/odoo/tasks/odoo.yml index 0ff018b6..20eded05 100644 --- a/roles/odoo/tasks/odoo.yml +++ b/roles/odoo/tasks/odoo.yml @@ -1,41 +1,42 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ odoo_volume_name }}" when: odoo_volume_name is defined -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ odoo_data_dir }}/enterprise" state: directory -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: "{{ item }}" dest: "{{ odoo_data_dir }}/{{ item }}" loop: - odoo.conf - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Pull {{ role_name }} image" - docker_image: +- name: Pull {{ role_name }} image + community.docker.docker_image: name: "{{ odoo_image }}" source: pull force_source: true register: pull_odoo_image notify: Remove odoo patches -- name: "Tag {{ role_name }} image" - command: "docker tag {{ pull_odoo_image.image.Id[7:19] }} odoo:{{ pull_odoo_image.image.Id[7:19] }}" +- name: Tag {{ role_name }} image + ansible.builtin.command: docker tag {{ pull_odoo_image.image.Id[7:19] }} odoo:{{ pull_odoo_image.image.Id[7:19] }} when: pull_odoo_image.image.RepoTags | length == 0 -- name: "Start {{ role_name }} container {{ odoo_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ odoo_hostname }} + community.docker.docker_container: name: "{{ odoo_hostname }}" labels: description: "{{ odoo_description }}" - image: "odoo:{{ pull_odoo_image.image.Id[7:19] }}" + image: odoo:{{ pull_odoo_image.image.Id[7:19] }} restart_policy: unless-stopped recreate: false state: "{{ odoo_state }}" @@ -62,12 +63,12 @@ tag: "{{ odoo_hostname }}|{{ role_name }}" when: odoo_replicas == 1 -- name: "Start {{ role_name }} container {{ odoo_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ odoo_hostname }} + community.docker.docker_container: name: "{{ odoo_hostname }}_{{ item }}" labels: description: "{{ odoo_description }}" - image: "odoo:{{ pull_odoo_image.image.Id[7:19] }}" + image: odoo:{{ pull_odoo_image.image.Id[7:19] }} restart_policy: unless-stopped recreate: false env: @@ -93,16 +94,16 @@ with_sequence: start=1 end={{ odoo_replicas }} when: odoo_replicas > 1 -- name: "Ensure {{ role_name }} master password is in environment" - lineinfile: - dest: "/etc/environment" +- name: Ensure {{ role_name }} master password is in environment + ansible.builtin.lineinfile: + dest: /etc/environment state: present - regexp: "^ODOO_MASTER_PASSWORD=" - line: "ODOO_MASTER_PASSWORD={{ odoo_master_password }}" + regexp: ^ODOO_MASTER_PASSWORD= + line: ODOO_MASTER_PASSWORD={{ odoo_master_password }} when: odoo_master_password is defined -- name: "Include {{ role_name }} backup from restic client role" - include_role: +- name: Include {{ role_name }} backup from restic client role + ansible.builtin.include_role: name: restic_client tasks_from: restic_client_odoo_backup vars: diff --git a/roles/odoo_apps/defaults/main.yml b/roles/odoo_apps/defaults/main.yml index c2e0a8d1..fd4fc417 100644 --- a/roles/odoo_apps/defaults/main.yml +++ b/roles/odoo_apps/defaults/main.yml @@ -1,4 +1,5 @@ +--- odoo_apps_tmp_dir: /var/tmp odoo_apps_remove_unmanaged_folders: true -odoo_data_dir: "/usr/share/{{ odoo_hostname }}" -odoo_replicas: 1 \ No newline at end of file +odoo_data_dir: /usr/share/{{ odoo_hostname }} +odoo_replicas: 1 diff --git a/roles/odoo_apps/hanlders.yml/main.yml b/roles/odoo_apps/hanlders.yml/main.yml index accbfc62..24cbe966 100644 --- a/roles/odoo_apps/hanlders.yml/main.yml +++ b/roles/odoo_apps/hanlders.yml/main.yml @@ -1,2 +1,3 @@ -- name: "Restart {{ role_name }} container" +--- +- name: Restart {{ role_name }} container import_tasks: ../../odoo/handlers/odoo-handlers.yml diff --git a/roles/odoo_apps/tasks/main.yml b/roles/odoo_apps/tasks/main.yml index 6a548740..95f797d8 100644 --- a/roles/odoo_apps/tasks/main.yml +++ b/roles/odoo_apps/tasks/main.yml @@ -1,11 +1,12 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: odoo_apps is defined tags: - odoo_apps -- name: "Include odoo pip packages tasks" - include_tasks: odoo_pip_packages.yml +- name: Include odoo pip packages tasks + ansible.builtin.include_tasks: odoo_pip_packages.yml when: odoo_pip_packages is defined tags: - - odoo_pip_packages \ No newline at end of file + - odoo_pip_packages diff --git a/roles/odoo_apps/tasks/odoo_apps.yml b/roles/odoo_apps/tasks/odoo_apps.yml index ed2eff33..0fd02f79 100644 --- a/roles/odoo_apps/tasks/odoo_apps.yml +++ b/roles/odoo_apps/tasks/odoo_apps.yml @@ -1,39 +1,40 @@ -- name: "Ensure odoo addon dir exists" - file: +--- +- name: Ensure odoo addon dir exists + ansible.builtin.file: path: "{{ odoo_data_dir }}/addons" state: directory -- name: "Remove duplicates from app list" - set_fact: +- name: Remove duplicates from app list + ansible.builtin.set_fact: odoo_apps: "{{ odoo_apps | unique }}" -- name: "Get odoo app dependencies" - set_fact: +- name: Get odoo app dependencies + ansible.builtin.set_fact: odoo_app_dependencies: "{{ odoo_apps | json_query('[*].depends[]') }}" -- name: "Get odoo app names" - set_fact: +- name: Get odoo app names + ansible.builtin.set_fact: odoo_app_names: "{{ odoo_apps | json_query('[*].name') | list }}" -- name: "Check odoo app dependencies" - fail: - msg: "Missing odoo app {{ item }}" +- name: Check odoo app dependencies + ansible.builtin.fail: + msg: Missing odoo app {{ item }} when: item not in odoo_app_names loop: "{{ odoo_app_dependencies }}" - name: List apps to be installed - debug: + ansible.builtin.debug: msg: "{{ odoo_app_names | sort }}" - -- name: "Download {{ role_name }} zip archives" - get_url: + +- name: Download {{ role_name }} zip archives + ansible.builtin.get_url: url: "{{ odoo_apps_base_url }}{{ item.name }}-{{ item.version }}.zip" dest: "{{ odoo_apps_tmp_dir }}/{{ item.name }}-{{ item.version }}.zip" loop: "{{ odoo_apps }}" when: item.version is defined -- name: "Extract downloaded {{ role_name }} zip archives" - unarchive: +- name: Extract downloaded {{ role_name }} zip archives + ansible.builtin.unarchive: src: "{{ odoo_apps_tmp_dir }}/{{ item.name }}-{{ item.version }}.zip" dest: "{{ odoo_apps_tmp_dir }}" remote_src: true @@ -44,8 +45,8 @@ register: downloaded_archive_contents when: item.version is defined -- name: "Copy downloaded {{ role_name }} to addons dir" - synchronize: +- name: Copy downloaded {{ role_name }} to addons dir + ansible.posix.synchronize: src: "{{ odoo_apps_tmp_dir }}/{{ item.name }}-{{ item.version }}/" dest: "{{ odoo_data_dir }}/addons/{{ item.name }}/" # delete: true # FIXME this does not work properly @@ -53,19 +54,19 @@ loop: "{{ odoo_apps }}" when: item.version is defined -- name: "Register {{ role_name }} folders" # noqa 306 - command: "ls -1 {{ odoo_data_dir }}/addons/" +- name: Register {{ role_name }} folders # noqa 306 + ansible.builtin.command: ls -1 {{ odoo_data_dir }}/addons/ changed_when: false register: existing_odoo_apps -- name: "Append odoo_data folders to odoo app names" - set_fact: +- name: Append odoo_data folders to odoo app names + ansible.builtin.set_fact: odoo_app_names: "{{ odoo_app_names + (odoo_data | json_query('[*].module_name') | list) }}" when: odoo_data is defined -- name: "Remove unmanaged {{ role_name }} folder" - file: +- name: Remove unmanaged {{ role_name }} folder + ansible.builtin.file: path: "{{ odoo_data_dir }}/addons/{{ item }}" - state: "absent" + state: absent loop: "{{ existing_odoo_apps.stdout_lines }}" - when: item not in odoo_app_names and odoo_apps_remove_unmanaged_folders \ No newline at end of file + when: item not in odoo_app_names and odoo_apps_remove_unmanaged_folders diff --git a/roles/odoo_apps/tasks/odoo_pip_packages.yml b/roles/odoo_apps/tasks/odoo_pip_packages.yml index 93d053cc..4927293f 100644 --- a/roles/odoo_apps/tasks/odoo_pip_packages.yml +++ b/roles/odoo_apps/tasks/odoo_pip_packages.yml @@ -1,24 +1,25 @@ +--- - name: Get installed python packages - command: "docker exec {{ odoo_hostname }} pip3 freeze" + ansible.builtin.command: docker exec {{ odoo_hostname }} pip3 freeze register: result changed_when: false when: odoo_replicas == 1 - name: Get installed python packages by replica - command: "docker exec {{ odoo_hostname }}_{{ item }} pip3 freeze" + ansible.builtin.command: docker exec {{ odoo_hostname }}_{{ item }} pip3 freeze register: result_replicas changed_when: false with_sequence: start=1 end={{ odoo_replicas }} when: odoo_replicas > 1 - name: Install missing pip packages - command: "docker exec {{ odoo_hostname }} pip3 install {{ item.name }}" + ansible.builtin.command: docker exec {{ odoo_hostname }} pip3 install {{ item.name }} when: odoo_replicas == 1 and item.name not in result.stdout loop: "{{ odoo_pip_packages }}" notify: Restart odoo container - name: Install missing pip packages by replica - command: "docker exec {{ item.1.cmd[2] }} pip3 install {{ item.0.name }}" + ansible.builtin.command: docker exec {{ item.1.cmd[2] }} pip3 install {{ item.0.name }} when: odoo_replicas > 1 and item.0.name not in item.1.stdout loop: "{{ odoo_pip_packages | product(result_replicas.results) | list }}" notify: Restart odoo container diff --git a/roles/odoo_data/defaults/main.yml b/roles/odoo_data/defaults/main.yml index 3f20136e..13af6fce 100644 --- a/roles/odoo_data/defaults/main.yml +++ b/roles/odoo_data/defaults/main.yml @@ -1 +1,2 @@ -odoo_volume_name: "{{ odoo_hostname }}" \ No newline at end of file +--- +odoo_volume_name: "{{ odoo_hostname }}" diff --git a/roles/odoo_data/tasks/main.yml b/roles/odoo_data/tasks/main.yml index bc70c98e..6de86c55 100644 --- a/roles/odoo_data/tasks/main.yml +++ b/roles/odoo_data/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: odoo_data is defined tags: - - odoo_data \ No newline at end of file + - odoo_data diff --git a/roles/odoo_data/tasks/odoo_data.yml b/roles/odoo_data/tasks/odoo_data.yml index 35af27d5..ee0774bb 100644 --- a/roles/odoo_data/tasks/odoo_data.yml +++ b/roles/odoo_data/tasks/odoo_data.yml @@ -1,11 +1,12 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ odoo_data_dir }}/addons/{{ item.module_name }}/data/" state: directory loop: "{{ odoo_data }}" - name: Copy manifest file - template: + ansible.builtin.template: src: __manifest__.py dest: "{{ odoo_data_dir }}/addons/{{ item.module_name }}/__manifest__.py" vars: @@ -13,19 +14,19 @@ loop: "{{ odoo_data }}" - name: Copy data file - template: + ansible.builtin.template: src: data.xml dest: "{{ odoo_data_dir }}/addons/{{ item.module_name }}/data/{{ item.model }}.data.xml" loop: "{{ odoo_data }}" -- name: "Ensure {{ role_name }} description dir exists" - file: +- name: Ensure {{ role_name }} description dir exists + ansible.builtin.file: path: "{{ odoo_data_dir }}/addons/{{ item.module_name }}/static/description/" state: directory loop: "{{ odoo_data }}" -- name: "Copy icon file" - copy: +- name: Copy icon file + ansible.builtin.copy: src: icon.png dest: "{{ odoo_data_dir }}/addons/{{ item.module_name }}/static/description/icon.png" loop: "{{ odoo_data }}" diff --git a/roles/odoo_databases/defaults/main.yml b/roles/odoo_databases/defaults/main.yml index 0d33eb6e..bdfddab8 100644 --- a/roles/odoo_databases/defaults/main.yml +++ b/roles/odoo_databases/defaults/main.yml @@ -1 +1,2 @@ -odoo_replicas: 1 \ No newline at end of file +--- +odoo_replicas: 1 diff --git a/roles/odoo_databases/meta/main.yml b/roles/odoo_databases/meta/main.yml index f67f2336..fabd48b6 100644 --- a/roles/odoo_databases/meta/main.yml +++ b/roles/odoo_databases/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: odoo_scripts tags: - odoo_scripts - - depends \ No newline at end of file + - depends diff --git a/roles/odoo_databases/tasks/main.yml b/roles/odoo_databases/tasks/main.yml index 71c6547f..03bdda14 100644 --- a/roles/odoo_databases/tasks/main.yml +++ b/roles/odoo_databases/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: odoo_databases is defined tags: - - odoo_enterprise \ No newline at end of file + - odoo_enterprise diff --git a/roles/odoo_databases/tasks/odoo_databases.yml b/roles/odoo_databases/tasks/odoo_databases.yml index 51433028..c706fc12 100644 --- a/roles/odoo_databases/tasks/odoo_databases.yml +++ b/roles/odoo_databases/tasks/odoo_databases.yml @@ -1,33 +1,34 @@ +--- - name: Get all Odoo databases - command: /usr/local/bin/docker-odoo-list -c "{{ odoo_hostname }}" + ansible.builtin.command: /usr/local/bin/docker-odoo-list -c "{{ odoo_hostname }}" register: existing_databases changed_when: false when: odoo_replicas == 1 - name: Get all Odoo databases on first replica - command: /usr/local/bin/docker-odoo-list -c "{{ odoo_hostname }}_1" + ansible.builtin.command: /usr/local/bin/docker-odoo-list -c "{{ odoo_hostname }}_1" register: existing_databases_replicas # use different var, because existing_databases has content as it skipped changed_when: false when: odoo_replicas > 1 - name: Confirm database drop - pause: - prompt: "Please confirm you want to drop database {{ item.name }} on container {{ odoo_hostname }}! Press return to continue. Press ctrl+c to abort." + ansible.builtin.pause: + prompt: Please confirm you want to drop database {{ item.name }} on container {{ odoo_hostname }}! Press return to continue. Press ctrl+c to abort. when: odoo_replicas == 1 and item.state == 'absent' and item.name in existing_databases.stdout_lines loop: "{{ odoo_databases }}" - name: Confirm database drop - pause: - prompt: "Please confirm you want to drop database {{ item.name }} on container {{ odoo_hostname }}! Press return to continue. Press ctrl+c to abort." + ansible.builtin.pause: + prompt: Please confirm you want to drop database {{ item.name }} on container {{ odoo_hostname }}! Press return to continue. Press ctrl+c to abort. when: odoo_replicas > 1 and item.state == 'absent' and item.name in existing_databases_replicas.stdout_lines loop: "{{ odoo_databases }}" - name: Drop disabled databases - command: /usr/local/bin/docker-odoo-drop -c "{{ odoo_hostname }}" -d "{{ item.name }}" + ansible.builtin.command: /usr/local/bin/docker-odoo-drop -c "{{ odoo_hostname }}" -d "{{ item.name }}" when: odoo_replicas == 1 and item.state == 'absent' and item.name in existing_databases.stdout_lines loop: "{{ odoo_databases }}" - name: Drop disabled databases on first replica - command: /usr/local/bin/docker-odoo-drop -c "{{ odoo_hostname }}_1" -d "{{ item.name }}" + ansible.builtin.command: /usr/local/bin/docker-odoo-drop -c "{{ odoo_hostname }}_1" -d "{{ item.name }}" when: odoo_replicas > 1 and item.state == 'absent' and item.name in existing_databases_replicas.stdout_lines - loop: "{{ odoo_databases }}" \ No newline at end of file + loop: "{{ odoo_databases }}" diff --git a/roles/odoo_enterprise/defaults/main.yml b/roles/odoo_enterprise/defaults/main.yml index 9515b68e..b94e03cc 100644 --- a/roles/odoo_enterprise/defaults/main.yml +++ b/roles/odoo_enterprise/defaults/main.yml @@ -1,3 +1,4 @@ -odoo_data_dir: "/usr/share/{{ odoo_hostname }}" -odoo_enterprise_repo: "git@github.com:odoo/enterprise.git" -odoo_enterprise_access_token: "{{ vault_odoo_enterprise_access_token }}" \ No newline at end of file +--- +odoo_data_dir: /usr/share/{{ odoo_hostname }} +odoo_enterprise_repo: git@github.com:odoo/enterprise.git +odoo_enterprise_access_token: "{{ vault_odoo_enterprise_access_token }}" diff --git a/roles/odoo_enterprise/meta/main.yml b/roles/odoo_enterprise/meta/main.yml index 6673a3db..8e510fae 100644 --- a/roles/odoo_enterprise/meta/main.yml +++ b/roles/odoo_enterprise/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: odoo tags: - odoo - - depends \ No newline at end of file + - depends diff --git a/roles/odoo_enterprise/tasks/main.yml b/roles/odoo_enterprise/tasks/main.yml index 50885d4b..2008d97a 100644 --- a/roles/odoo_enterprise/tasks/main.yml +++ b/roles/odoo_enterprise/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: odoo_enterprise_commit is defined tags: - - odoo_enterprise \ No newline at end of file + - odoo_enterprise diff --git a/roles/odoo_enterprise/tasks/odoo_enterprise.yml b/roles/odoo_enterprise/tasks/odoo_enterprise.yml index 0253ce8d..3a6aab62 100644 --- a/roles/odoo_enterprise/tasks/odoo_enterprise.yml +++ b/roles/odoo_enterprise/tasks/odoo_enterprise.yml @@ -1,5 +1,6 @@ +--- - name: Git ssh checkout - git: + ansible.builtin.git: repo: "{{ odoo_enterprise_repo }}" dest: "{{ odoo_data_dir }}/enterprise" key_file: "{{ odoo_enterprise_key_file }}" @@ -11,8 +12,8 @@ when: odoo_enterprise_repo is regex('git@') - name: Git https checkout - git: - repo: "https://{{ odoo_enterprise_access_username|urlencode() }}:{{ odoo_enterprise_access_token|urlencode() }}@github.com/odoo/enterprise.git" + ansible.builtin.git: + repo: https://{{ odoo_enterprise_access_username|urlencode() }}:{{ odoo_enterprise_access_token|urlencode() }}@github.com/odoo/enterprise.git dest: "{{ odoo_data_dir }}/enterprise" version: "{{ odoo_enterprise_commit }}" accept_hostkey: true @@ -22,5 +23,5 @@ when: odoo_enterprise_repo is regex('https:\/\/') - name: Ensure auto install is disabled - script: "disable-auto-install {{ odoo_data_dir }}" - changed_when: false \ No newline at end of file + ansible.builtin.script: disable-auto-install {{ odoo_data_dir }} + changed_when: false diff --git a/roles/odoo_patches/handlers/main.yml b/roles/odoo_patches/handlers/main.yml index a00d13ed..76a3e0d8 100644 --- a/roles/odoo_patches/handlers/main.yml +++ b/roles/odoo_patches/handlers/main.yml @@ -1,2 +1,3 @@ -- name: "Remove odoo patches" - include_tasks: remove_odoo_patches.yml \ No newline at end of file +--- +- name: Remove odoo patches + ansible.builtin.include_tasks: remove_odoo_patches.yml diff --git a/roles/odoo_patches/handlers/remove_odoo_patches.yml b/roles/odoo_patches/handlers/remove_odoo_patches.yml index 8504a460..15e3701a 100644 --- a/roles/odoo_patches/handlers/remove_odoo_patches.yml +++ b/roles/odoo_patches/handlers/remove_odoo_patches.yml @@ -1,12 +1,13 @@ +--- - name: Find Odoo patches status files - find: - path: "/etc/odoo/" - patterns: '*_installed' + ansible.builtin.find: + path: /etc/odoo/ + patterns: "*_installed" register: files_to_delete when: pull_odoo_image.changed and odoo_patches is defined - name: Remove Odoo patches status files - file: + ansible.builtin.file: path: "{{ item.path }}" state: absent loop: "{{ files_to_delete.files }}" diff --git a/roles/odoo_patches/tasks/main.yml b/roles/odoo_patches/tasks/main.yml index fd24fe5b..850820cf 100644 --- a/roles/odoo_patches/tasks/main.yml +++ b/roles/odoo_patches/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: odoo_patches is defined tags: - odoo_patches diff --git a/roles/odoo_patches/tasks/odoo_patches.yml b/roles/odoo_patches/tasks/odoo_patches.yml index 34557626..0d949a65 100644 --- a/roles/odoo_patches/tasks/odoo_patches.yml +++ b/roles/odoo_patches/tasks/odoo_patches.yml @@ -1,14 +1,15 @@ +--- - name: Show patches - debug: + ansible.builtin.debug: var: odoo_patches -- name: "Ensure odoo host config dir exists" - file: - path: "/etc/odoo" +- name: Ensure odoo host config dir exists + ansible.builtin.file: + path: /etc/odoo state: directory - name: Apply patches - script: "{{ item.name }} {{ item.host | default(odoo_hostname) }}" + ansible.builtin.script: "{{ item.name }} {{ item.host | default(odoo_hostname) }}" loop: "{{ odoo_patches }}" notify: Restart odoo container when: odoo_replicas == 1 @@ -17,10 +18,10 @@ failed_when: res.rc == 1 - name: Apply patches - script: "{{ item.0.name }} {{ odoo_hostname }}_{{ item.1 }}" + ansible.builtin.script: "{{ item.0.name }} {{ odoo_hostname }}_{{ item.1 }}" loop: "{{ odoo_patches | product(range(1,odoo_replicas+1)) | list }}" notify: Restart odoo container when: odoo_replicas > 1 register: res changed_when: res.rc == 2 - failed_when: res.rc == 1 \ No newline at end of file + failed_when: res.rc == 1 diff --git a/roles/odoo_scripts/tasks/main.yml b/roles/odoo_scripts/tasks/main.yml index 98eb4a8d..efe418e3 100644 --- a/roles/odoo_scripts/tasks/main.yml +++ b/roles/odoo_scripts/tasks/main.yml @@ -1,4 +1,5 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" tags: - - odoo_scripts \ No newline at end of file + - odoo_scripts diff --git a/roles/odoo_scripts/tasks/odoo_scripts.yml b/roles/odoo_scripts/tasks/odoo_scripts.yml index 7a556f4c..c142987b 100644 --- a/roles/odoo_scripts/tasks/odoo_scripts.yml +++ b/roles/odoo_scripts/tasks/odoo_scripts.yml @@ -1,7 +1,8 @@ -- name: "Copy {{ role_name }}" - copy: +--- +- name: Copy {{ role_name }} + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-odoo-backup @@ -22,4 +23,4 @@ - odoo-duplicate - odoo-restore - odoo-user - - parse-url \ No newline at end of file + - parse-url diff --git a/roles/onlyoffice_documentserver/defaults/main.yml b/roles/onlyoffice_documentserver/defaults/main.yml index 86e9fdc8..3b29a37f 100644 --- a/roles/onlyoffice_documentserver/defaults/main.yml +++ b/roles/onlyoffice_documentserver/defaults/main.yml @@ -1,2 +1,3 @@ +--- onlyoffice_documentserver_description: OnlyOffice Document Server -onlyoffice_documentserver_jwt_secret: "{{ vault_onlyoffice_documentserver_jwt_secret }}" \ No newline at end of file +onlyoffice_documentserver_jwt_secret: "{{ vault_onlyoffice_documentserver_jwt_secret }}" diff --git a/roles/onlyoffice_documentserver/meta/main.yml b/roles/onlyoffice_documentserver/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/onlyoffice_documentserver/meta/main.yml +++ b/roles/onlyoffice_documentserver/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/onlyoffice_documentserver/tasks/main.yml b/roles/onlyoffice_documentserver/tasks/main.yml index 6f1b3044..3f4722b4 100644 --- a/roles/onlyoffice_documentserver/tasks/main.yml +++ b/roles/onlyoffice_documentserver/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: onlyoffice_documentserver_image is defined tags: - - onlyoffice_documentserver \ No newline at end of file + - onlyoffice_documentserver diff --git a/roles/onlyoffice_documentserver/tasks/onlyoffice_documentserver.yml b/roles/onlyoffice_documentserver/tasks/onlyoffice_documentserver.yml index 211917fd..dd06f91e 100644 --- a/roles/onlyoffice_documentserver/tasks/onlyoffice_documentserver.yml +++ b/roles/onlyoffice_documentserver/tasks/onlyoffice_documentserver.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ onlyoffice_documentserver_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ onlyoffice_documentserver_hostname }} + community.docker.docker_container: name: "{{ onlyoffice_documentserver_hostname }}" labels: description: "{{ onlyoffice_documentserver_description }}" @@ -14,4 +15,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ onlyoffice_documentserver_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ onlyoffice_documentserver_hostname }}|{{ role_name }}" diff --git a/roles/openldap/defaults/main.yml b/roles/openldap/defaults/main.yml index 67f8fac5..a76d3354 100644 --- a/roles/openldap/defaults/main.yml +++ b/roles/openldap/defaults/main.yml @@ -1,2 +1,3 @@ +--- openldap_description: OpenLDAP -openldap_data_dir: "/usr/share/{{ openldap_hostname }}" \ No newline at end of file +openldap_data_dir: /usr/share/{{ openldap_hostname }} diff --git a/roles/openldap/handlers/main.yml b/roles/openldap/handlers/main.yml index 31f79781..3968aeb4 100644 --- a/roles/openldap/handlers/main.yml +++ b/roles/openldap/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ openldap_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/openldap/meta/main.yml b/roles/openldap/meta/main.yml index a637322f..1bd73025 100644 --- a/roles/openldap/meta/main.yml +++ b/roles/openldap/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: docker_network tags: diff --git a/roles/openldap/tasks/main.yml b/roles/openldap/tasks/main.yml index 3ce15a18..191f761c 100644 --- a/roles/openldap/tasks/main.yml +++ b/roles/openldap/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: openldap_image is defined tags: - - openldap \ No newline at end of file + - openldap diff --git a/roles/openldap/tasks/openldap.yml b/roles/openldap/tasks/openldap.yml index 15b919f8..dd0bc8d5 100644 --- a/roles/openldap/tasks/openldap.yml +++ b/roles/openldap/tasks/openldap.yml @@ -1,10 +1,11 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ openldap_data_dir }}" state: directory -- name: "Start {{ role_name }} container {{ openldap_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ openldap_hostname }} + community.docker.docker_container: name: "{{ openldap_hostname }}" labels: description: "{{ openldap_description }}" @@ -24,4 +25,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ openldap_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ openldap_hostname }}|{{ role_name }}" diff --git a/roles/package/defaults/main.yml b/roles/package/defaults/main.yml index 1361555b..52e8ab84 100644 --- a/roles/package/defaults/main.yml +++ b/roles/package/defaults/main.yml @@ -1 +1,2 @@ -package_path_var: "/bin:/usr/bin:/usr/local/bin" \ No newline at end of file +--- +package_path_var: /bin:/usr/bin:/usr/local/bin diff --git a/roles/package/tasks/main.yml b/roles/package/tasks/main.yml index 2feb73fa..7a949f12 100644 --- a/roles/package/tasks/main.yml +++ b/roles/package/tasks/main.yml @@ -1,45 +1,45 @@ +--- - name: Show distribution - debug: + ansible.builtin.debug: msg: "Distribution: {{ ansible_distribution }}\nMajor Version: {{ ansible_distribution_major_version }}" - name: Combine group and host vars - set_fact: + ansible.builtin.set_fact: packages: "{{ packages + host_packages }}" when: host_packages is defined -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: packages is defined tags: - - package + - package -- name: "Include {{ role_name }} apt tasks" - include_tasks: "{{ role_name }}_apt.yml" +- name: Include {{ role_name }} apt tasks + ansible.builtin.include_tasks: "{{ role_name }}_apt.yml" when: packages is defined and (ansible_distribution == 'Ubuntu' or ansible_distribution == 'Pop!_OS') tags: - - package + - package -- name: "Include {{ role_name }} snap tasks" - include_tasks: "{{ role_name }}_snap.yml" +- name: Include {{ role_name }} snap tasks + ansible.builtin.include_tasks: "{{ role_name }}_snap.yml" when: packages_snap is defined and ansible_distribution == 'Ubuntu' tags: - - package + - package -- name: "Include {{ role_name }} apt tasks" - include_tasks: "{{ role_name }}_apt.yml" +- name: Include {{ role_name }} apt tasks + ansible.builtin.include_tasks: "{{ role_name }}_apt.yml" when: packages is defined and ansible_distribution == 'Debian' tags: - - package + - package -- name: "Include {{ role_name }} yum tasks" - include_tasks: "{{ role_name }}_yum.yml" +- name: Include {{ role_name }} yum tasks + ansible.builtin.include_tasks: "{{ role_name }}_yum.yml" when: packages is defined and ansible_distribution == 'CentOS' and ansible_distribution_major_version == '7' tags: - - package + - package -- name: "Include {{ role_name }} dnf tasks" - include_tasks: "{{ role_name }}_dnf.yml" +- name: Include {{ role_name }} dnf tasks + ansible.builtin.include_tasks: "{{ role_name }}_dnf.yml" when: packages is defined and ansible_distribution in ['CentOS', 'Rocky'] and ansible_distribution_major_version in ['8', '9'] tags: - - package - \ No newline at end of file + - package diff --git a/roles/package/tasks/package.yml b/roles/package/tasks/package.yml index 571dc1a0..cd96e9ee 100644 --- a/roles/package/tasks/package.yml +++ b/roles/package/tasks/package.yml @@ -1,5 +1,6 @@ +--- - name: Add bin folder to cron PATH - cron: + ansible.builtin.cron: name: PATH env: true job: "{{ package_path_var }}" @@ -11,6 +12,6 @@ # state: absent - name: Add bin folder to system-wide $PATH - copy: + ansible.builtin.copy: dest: /etc/profile.d/custom-path.sh - content: 'PATH=$PATH:{{ package_path_var }}' + content: PATH=$PATH:{{ package_path_var }} diff --git a/roles/package/tasks/package_apt.yml b/roles/package/tasks/package_apt.yml index 6a9fd0f1..c129b49c 100644 --- a/roles/package/tasks/package_apt.yml +++ b/roles/package/tasks/package_apt.yml @@ -1,24 +1,25 @@ +--- - name: Update apt-get repo and cache - apt: + ansible.builtin.apt: update_cache: true force_apt_get: true cache_valid_time: 3600 - name: Install latest packages - apt: + ansible.builtin.apt: name: "{{ item.name }}" state: present when: item.version is not defined and item.name is defined loop: "{{ packages }}" - name: Install latest deb packages - apt: + ansible.builtin.apt: deb: "{{ item.deb }}" when: item.deb is defined loop: "{{ packages }}" - name: Install versioned packages - apt: + ansible.builtin.apt: name: "{{ item.name }}={{ item.version }}" state: present loop: "{{ packages }}" diff --git a/roles/package/tasks/package_dnf.yml b/roles/package/tasks/package_dnf.yml index 4f886f10..0d3c0694 100644 --- a/roles/package/tasks/package_dnf.yml +++ b/roles/package/tasks/package_dnf.yml @@ -1,18 +1,19 @@ +--- - name: Enable dnf repos - dnf: + ansible.builtin.dnf: name: "{{ item.name }}" state: present loop: "{{ dnf_repos }}" - name: Install latest packages - dnf: + ansible.builtin.dnf: name: "{{ item.name }}" state: present loop: "{{ packages }}" when: item.version is not defined - name: Install versioned packages - dnf: + ansible.builtin.dnf: name: "{{ item.name }}-{{ item.version }}" state: present loop: "{{ packages }}" diff --git a/roles/package/tasks/package_snap.yml b/roles/package/tasks/package_snap.yml index 7fba9f50..445289ed 100644 --- a/roles/package/tasks/package_snap.yml +++ b/roles/package/tasks/package_snap.yml @@ -1,11 +1,12 @@ +--- - name: Update apt-get repo and cache - apt: + ansible.builtin.apt: update_cache: true force_apt_get: true cache_valid_time: 3600 - name: Install latest packages - snap: + community.general.snap: name: "{{ item.name }}" classic: "{{ item.classic | default(false) }}" state: present @@ -13,7 +14,7 @@ when: item.version is not defined - name: Install versioned packages - apt: + ansible.builtin.apt: name: "{{ item.name }}={{ item.version }}" classic: "{{ item.classic | default(false) }}" state: present diff --git a/roles/package/tasks/package_yum.yml b/roles/package/tasks/package_yum.yml index b056754c..ca354c8a 100644 --- a/roles/package/tasks/package_yum.yml +++ b/roles/package/tasks/package_yum.yml @@ -1,22 +1,23 @@ +--- - name: Enable yum repos - get_url: + ansible.builtin.get_url: url: "{{ item.url }}" - dest: "/etc/yum.repos.d/{{ item.name }}.repo" + dest: /etc/yum.repos.d/{{ item.name }}.repo loop: "{{ yum_repos }}" - name: Update yum cache - yum: + ansible.builtin.yum: update_cache: true - name: Install latest packages - yum: + ansible.builtin.yum: name: "{{ item.name }}" state: present loop: "{{ packages }}" when: item.version is not defined - name: Install versioned packages - yum: + ansible.builtin.yum: name: "{{ item.name }}-{{ item.version }}" state: present loop: "{{ packages }}" diff --git a/roles/pgadmin/defaults/main.yml b/roles/pgadmin/defaults/main.yml index a35647ca..a8f99530 100644 --- a/roles/pgadmin/defaults/main.yml +++ b/roles/pgadmin/defaults/main.yml @@ -1,6 +1,7 @@ +--- pgadmin_description: pgAdmin pgadmin_data_dir: /usr/share/{{ pgadmin_hostname }} pgadmin_volume_name: "{{ pgadmin_hostname }}" pgadmin_script_name: "" pgadmin_ports: - - "127.0.0.1:5050:80" \ No newline at end of file + - 127.0.0.1:5050:80 diff --git a/roles/pgadmin/handlers/main.yml b/roles/pgadmin/handlers/main.yml index 0c15b712..68d021bb 100644 --- a/roles/pgadmin/handlers/main.yml +++ b/roles/pgadmin/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ pgadmin_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/pgadmin/meta/main.yml b/roles/pgadmin/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/pgadmin/meta/main.yml +++ b/roles/pgadmin/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/pgadmin/tasks/main.yml b/roles/pgadmin/tasks/main.yml index e3de3c71..0e4c4f35 100644 --- a/roles/pgadmin/tasks/main.yml +++ b/roles/pgadmin/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: pgadmin_image is defined tags: - - pgadmin \ No newline at end of file + - pgadmin diff --git a/roles/pgadmin/tasks/pgadmin.yml b/roles/pgadmin/tasks/pgadmin.yml index 258c412a..7ce10137 100644 --- a/roles/pgadmin/tasks/pgadmin.yml +++ b/roles/pgadmin/tasks/pgadmin.yml @@ -1,20 +1,21 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ pgadmin_volume_name }}" -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ pgadmin_data_dir }}" state: directory -- name: "Copy {{ role_name }} server conf" - template: +- name: Copy {{ role_name }} server conf + ansible.builtin.template: src: servers.json dest: "{{ pgadmin_data_dir }}/servers.json" notify: Restart {{ role_name }} container -- name: "Start {{ role_name }} container {{ pgadmin_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ pgadmin_hostname }} + community.docker.docker_container: name: "{{ pgadmin_hostname }}" labels: description: "{{ pgadmin_description }}" @@ -36,4 +37,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ pgadmin_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ pgadmin_hostname }}|{{ role_name }}" diff --git a/roles/php_fpm/defaults/main.yml b/roles/php_fpm/defaults/main.yml index 46445240..18791d8b 100644 --- a/roles/php_fpm/defaults/main.yml +++ b/roles/php_fpm/defaults/main.yml @@ -1,3 +1,4 @@ +--- php_fpm_build_image: false php_fpm_description: PHP-FPM php_fpm_volume_name: "{{ php_fpm_hostname }}" diff --git a/roles/php_fpm/handlers/main.yml b/roles/php_fpm/handlers/main.yml index bada250d..a14dd547 100644 --- a/roles/php_fpm/handlers/main.yml +++ b/roles/php_fpm/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ php_fpm_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ php_fpm_image }}" build: path: "{{ docker_build_dir }}/{{ php_fpm_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/php_fpm/meta/main.yml b/roles/php_fpm/meta/main.yml index da0bb35d..c2e3bea6 100644 --- a/roles/php_fpm/meta/main.yml +++ b/roles/php_fpm/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: docker tags: diff --git a/roles/php_fpm/tasks/main.yml b/roles/php_fpm/tasks/main.yml index e53e14b4..2cd31b4d 100644 --- a/roles/php_fpm/tasks/main.yml +++ b/roles/php_fpm/tasks/main.yml @@ -1,19 +1,20 @@ -- name: "On build set new image tag {{ role_name }}:{{ php_fpm_hostname }}" - set_fact: - php_fpm_image: "php_fpm:{{ php_fpm_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ php_fpm_hostname }} + ansible.builtin.set_fact: + php_fpm_image: php_fpm:{{ php_fpm_hostname }} php_fpm_build_image: "{{ php_fpm_image }}" when: php_fpm_build_image and php_fpm_build_image != php_fpm_image tags: - php_fpm -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: php_fpm_build_image and php_fpm_build_image != php_fpm_image tags: - php_fpm -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: php_fpm_image is defined tags: - - php_fpm \ No newline at end of file + - php_fpm diff --git a/roles/php_fpm/tasks/php_fpm.yml b/roles/php_fpm/tasks/php_fpm.yml index 5412280c..a94bfd9b 100644 --- a/roles/php_fpm/tasks/php_fpm.yml +++ b/roles/php_fpm/tasks/php_fpm.yml @@ -1,12 +1,13 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ php_fpm_volume_name }}" when: php_fpm_volume_name is defined -- name: "Start {{ role_name }} container {{ php_fpm_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ php_fpm_hostname }} + community.docker.docker_container: name: "{{ php_fpm_hostname }}" labels: description: "{{ php_fpm_description }}" diff --git a/roles/php_fpm/tasks/php_fpm_build.yml b/roles/php_fpm/tasks/php_fpm_build.yml index 4c5e265d..8208b79f 100644 --- a/roles/php_fpm/tasks/php_fpm_build.yml +++ b/roles/php_fpm/tasks/php_fpm_build.yml @@ -1,17 +1,18 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ php_fpm_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ php_fpm_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - php.ini - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/roles/postfix/defaults/main.yml b/roles/postfix/defaults/main.yml index 5538917e..2ceb2a49 100644 --- a/roles/postfix/defaults/main.yml +++ b/roles/postfix/defaults/main.yml @@ -1,4 +1,5 @@ +--- postfix_description: Postfix -postfix_data_dir: "/usr/share/{{ postfix_hostname }}" +postfix_data_dir: /usr/share/{{ postfix_hostname }} postfix_ports: - - "127.0.0.1:1587:587" \ No newline at end of file + - 127.0.0.1:1587:587 diff --git a/roles/postfix/handlers/main.yml b/roles/postfix/handlers/main.yml index 0949f69b..a623d265 100644 --- a/roles/postfix/handlers/main.yml +++ b/roles/postfix/handlers/main.yml @@ -1,20 +1,21 @@ -- name: "Fix DKIM public key" - replace: +--- +- name: Fix DKIM public key + ansible.builtin.replace: path: "{{ postfix_data_dir }}/mail.txt" - regexp: "h=rsa-sha256" - replace: "h=sha256" + regexp: h=rsa-sha256 + replace: h=sha256 -- name: "Copy DKIM public key" - command: "cp mail.txt {{ postfix_allowed_sender_domains }}.txt" +- name: Copy DKIM public key + ansible.builtin.command: cp mail.txt {{ postfix_allowed_sender_domains }}.txt args: chdir: "{{ postfix_data_dir }}" -- name: "Copy DKIM private key" - command: "mv mail.private {{ postfix_allowed_sender_domains }}.private" +- name: Copy DKIM private key + ansible.builtin.command: mv mail.private {{ postfix_allowed_sender_domains }}.private args: chdir: "{{ postfix_data_dir }}" -- name: "Restart {{ role_name }} container" - docker_container: +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ postfix_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/postfix/meta/main.yml b/roles/postfix/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/postfix/meta/main.yml +++ b/roles/postfix/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/postfix/tasks/main.yml b/roles/postfix/tasks/main.yml index 2a30eaaa..7731c00b 100644 --- a/roles/postfix/tasks/main.yml +++ b/roles/postfix/tasks/main.yml @@ -1,3 +1,4 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" - when: postfix_image is defined \ No newline at end of file +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" + when: postfix_image is defined diff --git a/roles/postfix/tasks/postfix.yml b/roles/postfix/tasks/postfix.yml index 863bec9f..53dd0fb1 100644 --- a/roles/postfix/tasks/postfix.yml +++ b/roles/postfix/tasks/postfix.yml @@ -1,24 +1,25 @@ +--- - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto # FIXME: CentOS package gathering not working - name: Fail if package opendkim-tools is not installed - fail: - msg: "Package restic not installed" + ansible.builtin.fail: + msg: Package restic not installed when: "'opendkim-tools' not in ansible_facts.packages and (ansible_distribution != 'CentOS')" -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ postfix_data_dir }}" state: directory - name: Generate DKIM keys - command: "opendkim-genkey -b 2048 -h rsa-sha256 -r -v --subdomains -s mail -d {{ postfix_allowed_sender_domains }}" + ansible.builtin.command: opendkim-genkey -b 2048 -h rsa-sha256 -r -v --subdomains -s mail -d {{ postfix_allowed_sender_domains }} args: chdir: "{{ postfix_data_dir }}" creates: "{{ postfix_data_dir }}/mail.txt" - register: "generate_dkim_keys" + register: generate_dkim_keys notify: - Fix DKIM public key - Copy DKIM public key @@ -26,10 +27,9 @@ - Restart postfix container - name: Flush handlers - meta: flush_handlers - -- name: "Start {{ role_name }} container {{ postfix_hostname }}" - docker_container: + ansible.builtin.meta: flush_handlers +- name: Start {{ role_name }} container {{ postfix_hostname }} + community.docker.docker_container: name: "{{ postfix_hostname }}" labels: description: "{{ postfix_description }}" @@ -51,14 +51,14 @@ tag: "{{ postfix_hostname }}|{{ role_name }}" - name: Get DKIM public key content - command: "cat {{ postfix_data_dir }}/{{ postfix_allowed_sender_domains }}.txt" + ansible.builtin.command: cat {{ postfix_data_dir }}/{{ postfix_allowed_sender_domains }}.txt register: command_output changed_when: false -- name: "Create this DKIM record for {{ postfix_allowed_sender_domains }}" - debug: +- name: Create this DKIM record for {{ postfix_allowed_sender_domains }} + ansible.builtin.debug: msg: "{{ command_output.stdout }}" -- name: "Create this SPF record for {{ postfix_allowed_sender_domains }}" - debug: - msg: "v=spf1 include:{{ ansible_host }} -all" +- name: Create this SPF record for {{ postfix_allowed_sender_domains }} + ansible.builtin.debug: + msg: v=spf1 include:{{ ansible_host }} -all diff --git a/roles/postgres/defaults/main.yml b/roles/postgres/defaults/main.yml index 378c84b1..29ceb2da 100644 --- a/roles/postgres/defaults/main.yml +++ b/roles/postgres/defaults/main.yml @@ -1,7 +1,8 @@ +--- postgres_build_image: false postgres_description: PostgreSQL postgres_volume_name: "{{ postgres_hostname }}" postgres_db: "{{ postgres_user }}" postgres_password: "{{ vault_postgres_password }}" -postgres_data_dir: "/usr/share/{{ postgres_hostname }}" -postgres_ports: [] \ No newline at end of file +postgres_data_dir: /usr/share/{{ postgres_hostname }} +postgres_ports: [] diff --git a/roles/postgres/handlers/main.yml b/roles/postgres/handlers/main.yml index b97cafbb..2eee4258 100644 --- a/roles/postgres/handlers/main.yml +++ b/roles/postgres/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ postgres_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ postgres_image }}" build: path: "{{ docker_build_dir }}/{{ postgres_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/postgres/meta/main.yml b/roles/postgres/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/postgres/meta/main.yml +++ b/roles/postgres/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/postgres/tasks/main.yml b/roles/postgres/tasks/main.yml index 80f24515..95fd7f3c 100644 --- a/roles/postgres/tasks/main.yml +++ b/roles/postgres/tasks/main.yml @@ -1,25 +1,26 @@ -- name: "On build set new image tag {{ role_name }}:{{ postgres_hostname }}" - set_fact: - postgres_image: "postgres:{{ postgres_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ postgres_hostname }} + ansible.builtin.set_fact: + postgres_image: postgres:{{ postgres_hostname }} postgres_build_image: "{{ postgres_image }}" when: postgres_build_image and postgres_build_image != postgres_image tags: - postgres -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: postgres_build_image and postgres_build_image != postgres_image tags: - postgres -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: postgres_image is defined -- name: "Include {{ role_name }} backup tasks" - include_tasks: "{{ role_name }}_backup.yml" +- name: Include {{ role_name }} backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_backup.yml" when: postgres_backup_set is defined -- name: "Include {{ role_name }} users tasks" - include_tasks: "{{ role_name }}_users.yml" +- name: Include {{ role_name }} users tasks + ansible.builtin.include_tasks: "{{ role_name }}_users.yml" when: postgres_users is defined diff --git a/roles/postgres/tasks/postgres.yml b/roles/postgres/tasks/postgres.yml index 42cc61ae..2ddd69d0 100644 --- a/roles/postgres/tasks/postgres.yml +++ b/roles/postgres/tasks/postgres.yml @@ -1,17 +1,18 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ postgres_volume_name }}" when: postgres_volume_name is defined -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ postgres_data_dir }}" state: directory -- name: "Start {{ role_name }} container {{ postgres_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ postgres_hostname }} + community.docker.docker_container: name: "{{ postgres_hostname }}" labels: description: "{{ postgres_description }}" @@ -33,10 +34,10 @@ max-file: "{{ docker_log_max_file }}" tag: "{{ postgres_hostname }}|{{ role_name }}" -- name: "Copy {{ role_name }} scripts" - copy: +- name: Copy {{ role_name }} scripts + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - docker-postgres-backup @@ -47,9 +48,9 @@ - docker-postgres-duplicate - docker-postgres-size -- name: "Include docker {{ role_name }} backup from restic client role" - include_role: +- name: Include docker {{ role_name }} backup from restic client role + ansible.builtin.include_role: name: restic_client vars: restic_backup_set: "{{ postgres_backup_set }}" - when: postgres_backup_set is defined \ No newline at end of file + when: postgres_backup_set is defined diff --git a/roles/postgres/tasks/postgres_backup.yml b/roles/postgres/tasks/postgres_backup.yml index 3d6ce087..5cab4df2 100644 --- a/roles/postgres/tasks/postgres_backup.yml +++ b/roles/postgres/tasks/postgres_backup.yml @@ -1,6 +1,7 @@ -- name: "Include docker {{ role_name }} backup from restic client role" - include_role: +--- +- name: Include docker {{ role_name }} backup from restic client role + ansible.builtin.include_role: name: restic_client vars: restic_backup_set: "{{ postgres_backup_set }}" - when: postgres_backup_set is defined \ No newline at end of file + when: postgres_backup_set is defined diff --git a/roles/postgres/tasks/postgres_build.yml b/roles/postgres/tasks/postgres_build.yml index c2427037..7f753115 100644 --- a/roles/postgres/tasks/postgres_build.yml +++ b/roles/postgres/tasks/postgres_build.yml @@ -1,16 +1,17 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ postgres_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ postgres_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/roles/postgres/tasks/postgres_users.yml b/roles/postgres/tasks/postgres_users.yml index 08ccf910..68a48c91 100644 --- a/roles/postgres/tasks/postgres_users.yml +++ b/roles/postgres/tasks/postgres_users.yml @@ -1,21 +1,22 @@ -- name: "Get ip address of postgres container" - shell: "docker inspect --format '{''{range.NetworkSettings.Networks}''}''{''{.IPAddress}''}''{''{end}''}' {{ postgres_hostname }}" +--- +- name: Get ip address of postgres container + ansible.builtin.shell: docker inspect --format '{''{range.NetworkSettings.Networks}''}''{''{.IPAddress}''}''{''{end}''}' {{ postgres_hostname }} register: ip_address ignore_errors: true changed_when: false -- name: "Setup postgres users." - postgresql_user: +- name: Setup postgres users. + community.postgresql.postgresql_user: login_host: "{{ ip_address.stdout }}" login_user: "{{ postgres_user }}" login_password: "{{ postgres_password }}" - db: "postgres" + db: postgres name: "{{ item.name }}" password: "{{ item.password }}" loop: "{{ postgres_users }}" -- name: "Grant privilieges to users." - postgresql_privs: +- name: Grant privilieges to users. + community.postgresql.postgresql_privs: login_host: "{{ ip_address.stdout }}" login_user: "{{ postgres_user }}" login_password: "{{ postgres_password }}" @@ -25,8 +26,8 @@ role: "{{ item.0.name }}" loop: "{{ postgres_users | subelements('grant_databases') }}" -- name: "Revoke privilieges to users." - postgresql_privs: +- name: Revoke privilieges to users. + community.postgresql.postgresql_privs: login_host: "{{ ip_address.stdout }}" login_user: "{{ postgres_user }}" login_password: "{{ postgres_password }}" @@ -37,15 +38,15 @@ role: "{{ item.0.name }}" loop: "{{ postgres_users | subelements('revoke_tables') }}" -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: "{{ item }}" dest: "{{ postgres_data_dir }}/{{ item }}" loop: - pg_hba.conf -- name: "Setup connection rules for users." - postgresql_pg_hba: +- name: Setup connection rules for users. + community.postgresql.postgresql_pg_hba: dest: "{{ postgres_data_dir }}/pg_hba.conf" contype: host databases: "{{ item.1.database }}" @@ -53,10 +54,10 @@ source: "{{ item.1.source }}" method: trust loop: "{{ postgres_users | subelements('connection_rules', skip_missing=True) }}" - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Copy data files" - shell: "docker cp {{ postgres_data_dir }}/{{ item }} {{ postgres_hostname }}:/var/lib/postgresql/data/{{ item }}" +- name: Copy data files + ansible.builtin.command: docker cp {{ postgres_data_dir }}/{{ item }} {{ postgres_hostname }}:/var/lib/postgresql/data/{{ item }} ignore_errors: true changed_when: false loop: diff --git a/roles/postgres_exporter/defaults/main.yml b/roles/postgres_exporter/defaults/main.yml index 1fb2b401..112dc28b 100644 --- a/roles/postgres_exporter/defaults/main.yml +++ b/roles/postgres_exporter/defaults/main.yml @@ -1,5 +1,6 @@ +--- postgres_exporter_requires_package: python3-passlib -postgres_exporter_description: "PostgreSQL Exporter {{ postgres_hostname }}" +postgres_exporter_description: PostgreSQL Exporter {{ postgres_hostname }} postgres_exporter_nginx_data_dir: "{{ nginx_data_dir }}/proxies" postgres_exporter_proxy_basic_auth_username: postgres-exporter -postgres_exporter_data_dir: "/usr/share/{{ postgres_exporter_hostname }}" +postgres_exporter_data_dir: /usr/share/{{ postgres_exporter_hostname }} diff --git a/roles/postgres_exporter/files/queries.yml b/roles/postgres_exporter/files/queries.yml index 70a48671..d5403e08 100644 --- a/roles/postgres_exporter/files/queries.yml +++ b/roles/postgres_exporter/files/queries.yml @@ -1,11 +1,12 @@ +--- pg_database: - query: "SELECT pg_database.datname, pg_database_size(pg_database.datname) as size_bytes FROM pg_database" + query: SELECT pg_database.datname, pg_database_size(pg_database.datname) as size_bytes FROM pg_database master: true cache_seconds: 30 metrics: - datname: - usage: "LABEL" - description: "Name of the database" + usage: LABEL + description: Name of the database - size_bytes: - usage: "GAUGE" - description: "Disk space used by the database" \ No newline at end of file + usage: GAUGE + description: Disk space used by the database diff --git a/roles/postgres_exporter/meta/main.yml b/roles/postgres_exporter/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/postgres_exporter/meta/main.yml +++ b/roles/postgres_exporter/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/postgres_exporter/tasks/main.yml b/roles/postgres_exporter/tasks/main.yml index 82f9dc99..d3409f38 100644 --- a/roles/postgres_exporter/tasks/main.yml +++ b/roles/postgres_exporter/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: postgres_exporter_image is defined tags: - postgres_exporter -- name: "Include {{ role_name }} nginx config tasks" - include_tasks: "{{ role_name }}_nginx_config.yml" +- name: Include {{ role_name }} nginx config tasks + ansible.builtin.include_tasks: "{{ role_name }}_nginx_config.yml" when: postgres_exporter_image is defined tags: - postgres_exporter - - postgres_exporter_nginx_config \ No newline at end of file + - postgres_exporter_nginx_config diff --git a/roles/postgres_exporter/tasks/postgres_exporter.yml b/roles/postgres_exporter/tasks/postgres_exporter.yml index 46a1ad1e..6c478324 100644 --- a/roles/postgres_exporter/tasks/postgres_exporter.yml +++ b/roles/postgres_exporter/tasks/postgres_exporter.yml @@ -1,17 +1,18 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ postgres_exporter_data_dir }}" state: directory - name: Copy {{ role_name }} conf files - copy: + ansible.builtin.copy: src: "{{ item }}" dest: "{{ postgres_exporter_data_dir }}/" loop: - files/queries.yml -- name: "Start {{ role_name }} container {{ postgres_exporter_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ postgres_exporter_hostname }} + community.docker.docker_container: name: "{{ postgres_exporter_hostname }}" labels: description: "{{ postgres_exporter_description }}" @@ -19,10 +20,9 @@ restart_policy: unless-stopped recreate: true env: - DATA_SOURCE_NAME: "postgresql://{{ postgres_exporter_username }}:{{ postgres_exporter_password }}\ - @{{ postgres_exporter_server }}:5432/postgres?sslmode=disable" + DATA_SOURCE_NAME: postgresql://{{ postgres_exporter_username }}:{{ postgres_exporter_password }}@{{ postgres_exporter_server }}:5432/postgres?sslmode=disable PG_EXPORTER_DISABLE_DEFAULT_METRICS: "true" - PG_EXPORTER_EXTEND_QUERY_PATH: "/data/queries.yml" + PG_EXPORTER_EXTEND_QUERY_PATH: /data/queries.yml volumes: - "{{ postgres_exporter_data_dir }}:/data" networks: @@ -31,4 +31,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ postgres_exporter_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ postgres_exporter_hostname }}|{{ role_name }}" diff --git a/roles/postgres_exporter/tasks/postgres_exporter_nginx_config.yml b/roles/postgres_exporter/tasks/postgres_exporter_nginx_config.yml index 078459ae..63eb0de4 100644 --- a/roles/postgres_exporter/tasks/postgres_exporter_nginx_config.yml +++ b/roles/postgres_exporter/tasks/postgres_exporter_nginx_config.yml @@ -1,24 +1,25 @@ +--- - name: Ensure nginx data dir exists - file: + ansible.builtin.file: path: "{{ postgres_exporter_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ postgres_exporter_requires_package }} is not installed" - fail: - msg: "Package {{ postgres_exporter_requires_package }} is not installed!" +- name: Fail if package {{ postgres_exporter_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ postgres_exporter_requires_package }} is not installed! when: postgres_exporter_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ postgres_exporter_nginx_data_dir }}/postgres-exporter.htpasswd" name: "{{ postgres_exporter_proxy_basic_auth_username }}" password: "{{ postgres_exporter_proxy_basic_auth_password }}" -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: postgres-exporter.nginx - dest: "{{ postgres_exporter_nginx_data_dir }}/postgres-exporter.nginx" \ No newline at end of file + dest: "{{ postgres_exporter_nginx_data_dir }}/postgres-exporter.nginx" diff --git a/roles/prometheus/defaults/main.yml b/roles/prometheus/defaults/main.yml index 05461d58..d4781b1b 100644 --- a/roles/prometheus/defaults/main.yml +++ b/roles/prometheus/defaults/main.yml @@ -1,6 +1,7 @@ +--- prometheus_port: 127.0.0.1:9090 prometheus_description: Prometheus prometheus_volume_name: "{{ prometheus_hostname }}" -prometheus_data_dir: "/usr/share/{{ prometheus_hostname }}" +prometheus_data_dir: /usr/share/{{ prometheus_hostname }} prometheus_etc_hosts: {} -prometheus_retention_time: "15d" \ No newline at end of file +prometheus_retention_time: 15d diff --git a/roles/prometheus/handlers/main.yml b/roles/prometheus/handlers/main.yml index d4c3e377..26da7259 100644 --- a/roles/prometheus/handlers/main.yml +++ b/roles/prometheus/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ prometheus_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/prometheus/meta/main.yml b/roles/prometheus/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/prometheus/meta/main.yml +++ b/roles/prometheus/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/prometheus/tasks/main.yml b/roles/prometheus/tasks/main.yml index 6e1b4416..158c2d9b 100644 --- a/roles/prometheus/tasks/main.yml +++ b/roles/prometheus/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: prometheus_image is defined tags: - - prometheus \ No newline at end of file + - prometheus diff --git a/roles/prometheus/tasks/prometheus.yml b/roles/prometheus/tasks/prometheus.yml index 9936b804..611f2fe9 100644 --- a/roles/prometheus/tasks/prometheus.yml +++ b/roles/prometheus/tasks/prometheus.yml @@ -1,42 +1,43 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ prometheus_volume_name }}" -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ prometheus_data_dir }}" state: directory -- name: "Extract and filter blackbox target hostnames" - set_fact: +- name: Extract and filter blackbox target hostnames + ansible.builtin.set_fact: src_hostnames: "{{ groups['all'] | map('extract', hostvars) | json_query('[*].nginx_proxies[?monitor!=`false` && monitor!=null].src_hostname') | flatten }}" -- name: "Extract and filter blackbox target paths" - set_fact: +- name: Extract and filter blackbox target paths + ansible.builtin.set_fact: paths: "{{ groups['all'] | map('extract', hostvars) | json_query('[*].nginx_proxies[?monitor!=`false` && monitor!=null].monitor') | flatten }}" -- name: "Generate blackbox target urls" - set_fact: +- name: Generate blackbox target urls + ansible.builtin.set_fact: targets: "{{ src_hostnames | zip(paths) | map('join', '') | map('regex_replace', '^(.*)$', 'https://\\1') }}" - name: List blackbox targets - debug: + ansible.builtin.debug: msg: "{{ targets }}" -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: prometheus.yml dest: "{{ prometheus_data_dir }}/" - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Start {{ role_name }} container {{ prometheus_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ prometheus_hostname }} + community.docker.docker_container: name: "{{ prometheus_hostname }}" labels: description: "{{ prometheus_description }}" image: "{{ prometheus_image }}" restart_policy: unless-stopped - command: "--storage.tsdb.retention.time={{ prometheus_retention_time }} --config.file=/etc/prometheus/prometheus.yml" + command: --storage.tsdb.retention.time={{ prometheus_retention_time }} --config.file=/etc/prometheus/prometheus.yml volumes: - "{{ prometheus_volume_name }}:/prometheus" - "{{ prometheus_data_dir }}/prometheus.yml:/etc/prometheus/prometheus.yml" @@ -49,4 +50,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ prometheus_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ prometheus_hostname }}|{{ role_name }}" diff --git a/roles/promtail/defaults/main.yml b/roles/promtail/defaults/main.yml index 59491da0..9d17cc6e 100644 --- a/roles/promtail/defaults/main.yml +++ b/roles/promtail/defaults/main.yml @@ -1,3 +1,4 @@ +--- promtail_description: Promtail promtail_loki_basic_auth_username: loki -promtail_data_dir: "/usr/share/{{ promtail_hostname }}" \ No newline at end of file +promtail_data_dir: /usr/share/{{ promtail_hostname }} diff --git a/roles/promtail/handlers/main.yml b/roles/promtail/handlers/main.yml index c8ffcf84..ccf33a38 100644 --- a/roles/promtail/handlers/main.yml +++ b/roles/promtail/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ promtail_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/promtail/meta/main.yml b/roles/promtail/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/promtail/meta/main.yml +++ b/roles/promtail/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/promtail/tasks/main.yml b/roles/promtail/tasks/main.yml index 7343e596..83091eaa 100644 --- a/roles/promtail/tasks/main.yml +++ b/roles/promtail/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: promtail_image is defined and promtail_hostname is defined tags: - promtail diff --git a/roles/promtail/tasks/promtail.yml b/roles/promtail/tasks/promtail.yml index a289856e..334cfe03 100644 --- a/roles/promtail/tasks/promtail.yml +++ b/roles/promtail/tasks/promtail.yml @@ -1,18 +1,19 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ promtail_data_dir }}" state: directory -- name: "Copy {{ role_name }} config" - template: +- name: Copy {{ role_name }} config + ansible.builtin.template: src: "{{ item }}" dest: "{{ promtail_data_dir }}/{{ item }}" loop: - config.yml - notify: "Restart {{ role_name }} container" + notify: Restart {{ role_name }} container -- name: "Start {{ role_name }} container {{ promtail_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ promtail_hostname }} + community.docker.docker_container: name: "{{ promtail_hostname }}" labels: description: "{{ promtail_description }}" @@ -29,4 +30,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ promtail_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ promtail_hostname }}|{{ role_name }}" diff --git a/roles/rabbitmq/defaults/main.yml b/roles/rabbitmq/defaults/main.yml index 26bb8de2..5376edc7 100644 --- a/roles/rabbitmq/defaults/main.yml +++ b/roles/rabbitmq/defaults/main.yml @@ -1,6 +1,7 @@ +--- rabbitmq_description: RabbitMQ rabbitmq_volume_name: "{{ rabbitmq_hostname }}" -rabbitmq_data_dir: "/usr/share/{{ rabbitmq_hostname }}" +rabbitmq_data_dir: /usr/share/{{ rabbitmq_hostname }} rabbitmq_password: "{{ vault_rabbitmq_password }}" rabbitmq_ports: - - 127.0.0.1:5672:5672 \ No newline at end of file + - 127.0.0.1:5672:5672 diff --git a/roles/rabbitmq/handlers/main.yml b/roles/rabbitmq/handlers/main.yml index bcaa38cf..c23f157c 100644 --- a/roles/rabbitmq/handlers/main.yml +++ b/roles/rabbitmq/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ rabbitmq_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: rabbitmq:custom build: path: "{{ docker_build_dir }}/{{ rabbitmq_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/rabbitmq/meta/main.yml b/roles/rabbitmq/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/rabbitmq/meta/main.yml +++ b/roles/rabbitmq/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/rabbitmq/tasks/main.yml b/roles/rabbitmq/tasks/main.yml index 76289e96..560388cc 100644 --- a/roles/rabbitmq/tasks/main.yml +++ b/roles/rabbitmq/tasks/main.yml @@ -1,3 +1,4 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" - when: rabbitmq_image is defined \ No newline at end of file +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" + when: rabbitmq_image is defined diff --git a/roles/rabbitmq/tasks/rabbitmq.yml b/roles/rabbitmq/tasks/rabbitmq.yml index 68f1240b..f004c760 100644 --- a/roles/rabbitmq/tasks/rabbitmq.yml +++ b/roles/rabbitmq/tasks/rabbitmq.yml @@ -1,31 +1,31 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ rabbitmq_volume_name }}" -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ rabbitmq_data_dir }}" state: directory -- name: "Ensure {{ role_name }} build dir exists" - file: +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ rabbitmq_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ rabbitmq_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers - -- name: "Start {{ role_name }} container {{ rabbitmq_hostname }}" - docker_container: + ansible.builtin.meta: flush_handlers +- name: Start {{ role_name }} container {{ rabbitmq_hostname }} + community.docker.docker_container: name: "{{ rabbitmq_hostname }}" labels: description: "{{ rabbitmq_description }}" @@ -44,4 +44,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ rabbitmq_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ rabbitmq_hostname }}|{{ role_name }}" diff --git a/roles/rclone/tasks/main.yml b/roles/rclone/tasks/main.yml index 99215ed0..258fb26a 100644 --- a/roles/rclone/tasks/main.yml +++ b/roles/rclone/tasks/main.yml @@ -1,3 +1,4 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" - when: rclone_sync is defined \ No newline at end of file +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" + when: rclone_sync is defined diff --git a/roles/rclone/tasks/rclone.yml b/roles/rclone/tasks/rclone.yml index 940ec519..0b027512 100644 --- a/roles/rclone/tasks/rclone.yml +++ b/roles/rclone/tasks/rclone.yml @@ -1,43 +1,43 @@ +--- - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto # FIXME: CentOS package gathering not working - name: Fail if package rclone is not installed - fail: - msg: "Package rclone not installed" + ansible.builtin.fail: + msg: Package rclone not installed when: "'rclone' not in ansible_facts.packages and (ansible_distribution != 'CentOS')" -- name: "Ensure {{ role_name }} config dir exists" - file: - path: "~/.config/rclone/" +- name: Ensure {{ role_name }} config dir exists + ansible.builtin.file: + path: ~/.config/rclone/ state: directory -- name: "Copy {{ role_name }} conf" - template: +- name: Copy {{ role_name }} conf + ansible.builtin.template: src: rclone.conf - dest: "~/.config/rclone/rclone.conf" + dest: ~/.config/rclone/rclone.conf - name: Verify source path exists - command: "ls {{ item.source }}" + ansible.builtin.command: ls {{ item.source }} changed_when: false loop: "{{ rclone_sync }}" when: item.source_provider == "filesystem" - name: Verify dest path exists - command: "ls {{ item.dest }}" + ansible.builtin.command: ls {{ item.dest }} changed_when: false loop: "{{ rclone_sync }}" when: item.dest_provider == "filesystem" - name: Register rclone copy commands - cron: - name: "Rclone job {{ item.id }}" + ansible.builtin.cron: + name: Rclone job {{ item.id }} hour: "{{ item.hour | default('*') }}" minute: "{{ item.minute | default('0') }}" - job: "rclone {{ item.command }} {{ item.source }} {{ item.dest }}; - write-node-exporter-metric -c 'Rclone job {{ item.id }}' -v $?" + job: rclone {{ item.command }} {{ item.source }} {{ item.dest }}; write-node-exporter-metric -c 'Rclone job {{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ rclone_sync }}" - when: item.command in ["copy", "copyto"] + when: item.command in ["copy", "copyto"] diff --git a/roles/redis/defaults/main.yml b/roles/redis/defaults/main.yml index 95c1b904..2ec21155 100644 --- a/roles/redis/defaults/main.yml +++ b/roles/redis/defaults/main.yml @@ -1,3 +1,4 @@ +--- redis_description: Redis redis_volume_name: "{{ redis_hostname }}" redis_password: "{{ vault_redis_password }}" diff --git a/roles/redis/handlers/main.yml b/roles/redis/handlers/main.yml index 62e3c279..8d6aa2fd 100644 --- a/roles/redis/handlers/main.yml +++ b/roles/redis/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ redis_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/redis/meta/main.yml b/roles/redis/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/redis/meta/main.yml +++ b/roles/redis/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/redis/tasks/main.yml b/roles/redis/tasks/main.yml index 5b58ea90..ebccf670 100644 --- a/roles/redis/tasks/main.yml +++ b/roles/redis/tasks/main.yml @@ -1,3 +1,4 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" - when: redis_image is defined \ No newline at end of file +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" + when: redis_image is defined diff --git a/roles/redis/tasks/redis.yml b/roles/redis/tasks/redis.yml index 1071e0fa..48a6b260 100644 --- a/roles/redis/tasks/redis.yml +++ b/roles/redis/tasks/redis.yml @@ -1,16 +1,17 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ redis_volume_name }}" -- name: "Start {{ role_name }} container {{ redis_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ redis_hostname }} + community.docker.docker_container: name: "{{ redis_hostname }}" labels: description: "{{ redis_description }}" image: "{{ redis_image }}" restart_policy: unless-stopped recreate: false - command: "redis-server --requirepass {{ redis_password }}" + command: redis-server --requirepass {{ redis_password }} volumes: - "{{ redis_volume_name }}:/data" networks: @@ -19,4 +20,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ redis_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ redis_hostname }}|{{ role_name }}" diff --git a/roles/remark42/defaults/main.yml b/roles/remark42/defaults/main.yml index 442bcd03..8dbd7a81 100644 --- a/roles/remark42/defaults/main.yml +++ b/roles/remark42/defaults/main.yml @@ -1,3 +1,4 @@ -remark42_description: "Remark42" +--- +remark42_description: Remark42 remark42_auth_anonymous: "false" remark42_auth_email_enable: "false" diff --git a/roles/remark42/meta/main.yml b/roles/remark42/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/remark42/meta/main.yml +++ b/roles/remark42/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/remark42/tasks/main.yml b/roles/remark42/tasks/main.yml index b459dc36..001e9574 100644 --- a/roles/remark42/tasks/main.yml +++ b/roles/remark42/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: remark42_image is defined tags: - - remark42 \ No newline at end of file + - remark42 diff --git a/roles/remark42/tasks/remark42.yml b/roles/remark42/tasks/remark42.yml index 1a8b9551..1c1ab358 100644 --- a/roles/remark42/tasks/remark42.yml +++ b/roles/remark42/tasks/remark42.yml @@ -1,13 +1,14 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ remark42_volume_name }}" docker_volume_backup_set: "{{ remark42_volume_backup_set | default([]) }}" when: remark42_volume_name is defined -- name: "Start {{ role_name }} container {{ remark42_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ remark42_hostname }} + community.docker.docker_container: name: "{{ remark42_hostname }}" labels: description: "{{ remark42_description }}" @@ -18,7 +19,7 @@ REMARK_URL: "{{ remark42_url }}" SECRET: "{{ remark42_secret }}" ADMIN_PASSWD: "{{ remark42_secret }}" - SITE: "remark,{{ remark42_site }}" + SITE: remark,{{ remark42_site }} AUTH_ANON: "{{ remark42_auth_anonymous }}" AUTH_EMAIL_ENABLE: "{{ remark42_auth_email_enable }}" AUTH_EMAIL_FROM: "{{ remark42_auth_email_from }}" @@ -31,10 +32,10 @@ AUTH_GITHUB_CSEC: "{{ remark42_auth_github_secret }}" ADMIN_SHARED_EMAIL: "{{ remark42_admin_shared_email }}" ADMIN_SHARED_ID: "{{ remark42_admin_shared_id }}" - NOTIFY_TYPE: "email" + NOTIFY_TYPE: email NOTIFY_EMAIL_FROM: "{{ remark42_notify_email_from }}" NOTIFY_EMAIL_ADMIN: "true" - BACKUP_PATH: "/srv/var/backup" + BACKUP_PATH: /srv/var/backup AUTH_SAME_SITE: none # DEBUG: "true" volumes: @@ -45,4 +46,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ remark42_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ remark42_hostname }}|{{ role_name }}" diff --git a/roles/resolv/defaults/main.yml b/roles/resolv/defaults/main.yml index 0e89317b..dd057a0c 100644 --- a/roles/resolv/defaults/main.yml +++ b/roles/resolv/defaults/main.yml @@ -1 +1,2 @@ -resolv_enabled: false \ No newline at end of file +--- +resolv_enabled: false diff --git a/roles/resolv/tasks/main.yml b/roles/resolv/tasks/main.yml index 59bb442a..4ef0c62f 100644 --- a/roles/resolv/tasks/main.yml +++ b/roles/resolv/tasks/main.yml @@ -1,11 +1,12 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: resolv_enabled tags: - resolv -- name: "Include {{ role_name }} hosts tasks" - include_tasks: "{{ role_name }}-hosts.yml" +- name: Include {{ role_name }} hosts tasks + ansible.builtin.include_tasks: "{{ role_name }}-hosts.yml" when: resolv_hosts is defined tags: - resolv diff --git a/roles/resolv/tasks/resolv-hosts.yml b/roles/resolv/tasks/resolv-hosts.yml index 65091b28..2b42ebe8 100644 --- a/roles/resolv/tasks/resolv-hosts.yml +++ b/roles/resolv/tasks/resolv-hosts.yml @@ -1,7 +1,8 @@ +--- - name: Set resolv hosts - lineinfile: + ansible.builtin.lineinfile: dest: /etc/hosts - regexp: '.*{{ item.name }}$' + regexp: .*{{ item.name }}$ line: "{{ item.ip }} {{ item.name }}" state: present - loop: "{{ resolv_hosts }}" \ No newline at end of file + loop: "{{ resolv_hosts }}" diff --git a/roles/resolv/tasks/resolv.yml b/roles/resolv/tasks/resolv.yml index 97f30dd7..5b50de79 100644 --- a/roles/resolv/tasks/resolv.yml +++ b/roles/resolv/tasks/resolv.yml @@ -1,5 +1,6 @@ -- name: "Configure resolv.conf" - template: - src: "resolv.conf" - dest: "/etc/resolv.conf" - mode: "0644" \ No newline at end of file +--- +- name: Configure resolv.conf + ansible.builtin.template: + src: resolv.conf + dest: /etc/resolv.conf + mode: "0644" diff --git a/roles/restic_client/defaults/main.yml b/roles/restic_client/defaults/main.yml index 89190c0a..c2e26dc0 100644 --- a/roles/restic_client/defaults/main.yml +++ b/roles/restic_client/defaults/main.yml @@ -1,7 +1,8 @@ +--- restic_backup_dir: /var/tmp restic_repo_type: rest restic_rest_user: restic restic_backup_rotation: daily: 7 weekly: 4 - monthly: 1 \ No newline at end of file + monthly: 1 diff --git a/roles/restic_client/tasks/main.yml b/roles/restic_client/tasks/main.yml index ce9a8589..6f2b598a 100644 --- a/roles/restic_client/tasks/main.yml +++ b/roles/restic_client/tasks/main.yml @@ -1,41 +1,42 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: restic_repo is defined and restic_repo tags: - restic_client -- name: "Include {{ role_name }} docker volume backup tasks" - include_tasks: "{{ role_name }}_docker_volume_backup.yml" +- name: Include {{ role_name }} docker volume backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_docker_volume_backup.yml" when: restic_backup_set is defined tags: - restic_client -- name: "Include {{ role_name }} file backup tasks" - include_tasks: "{{ role_name }}_file_backup.yml" +- name: Include {{ role_name }} file backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_file_backup.yml" when: restic_backup_set is defined tags: - restic_client -- name: "Include {{ role_name }} odoo backup tasks" - include_tasks: "{{ role_name }}_odoo_backup.yml" +- name: Include {{ role_name }} odoo backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_odoo_backup.yml" when: restic_backup_set is defined tags: - restic_client -- name: "Include {{ role_name }} docker postgres backup tasks" - include_tasks: "{{ role_name }}_docker_postgres_backup.yml" +- name: Include {{ role_name }} docker postgres backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_docker_postgres_backup.yml" when: restic_backup_set is defined tags: - restic_client -- name: "Include {{ role_name }} docker mysql backup tasks" - include_tasks: "{{ role_name }}_docker_mysql_backup.yml" +- name: Include {{ role_name }} docker mysql backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_docker_mysql_backup.yml" when: restic_backup_set is defined tags: - restic_client -- name: "Include {{ role_name }} docker mariadb backup tasks" - include_tasks: "{{ role_name }}_docker_mariadb_backup.yml" +- name: Include {{ role_name }} docker mariadb backup tasks + ansible.builtin.include_tasks: "{{ role_name }}_docker_mariadb_backup.yml" when: restic_backup_set is defined tags: - - restic_client \ No newline at end of file + - restic_client diff --git a/roles/restic_client/tasks/restic_client.yml b/roles/restic_client/tasks/restic_client.yml index 85d3ad04..46ad1d6e 100644 --- a/roles/restic_client/tasks/restic_client.yml +++ b/roles/restic_client/tasks/restic_client.yml @@ -1,37 +1,38 @@ -- name: "Copy {{ role_name }} scripts" - copy: +--- +- name: Copy {{ role_name }} scripts + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/local/bin/{{ item }}" + dest: /usr/local/bin/{{ item }} mode: +x loop: - run-cron-job - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto - name: Fail if package restic is not installed - fail: - msg: "Package restic not installed" + ansible.builtin.fail: + msg: Package restic not installed when: "'restic' not in ansible_facts.packages" -- name: "Set {{ role_name }} rest env" - set_fact: +- name: Set {{ role_name }} rest env + ansible.builtin.set_fact: restic_password: "{{ restic_repo_password }}" - restic_repository: "rest:http://{{ restic_rest_user }}:{{ restic_rest_password }}@{{ restic_repo }}" + restic_repository: rest:http://{{ restic_rest_user }}:{{ restic_rest_password }}@{{ restic_repo }} when: restic_repo_type == 'rest' -- name: "Set {{ role_name }} local env" - set_fact: +- name: Set {{ role_name }} local env + ansible.builtin.set_fact: restic_password: "{{ restic_repo_password }}" restic_repository: "{{ restic_repo }}" when: restic_repo_type == 'local' -- name: "Ensure {{ role_name }} environment vars exists" - lineinfile: - dest: "/etc/environment" +- name: Ensure {{ role_name }} environment vars exists + ansible.builtin.lineinfile: + dest: /etc/environment state: present - regexp: "^{{ item.key }}=" + regexp: ^{{ item.key }}= line: "{{ item.key }}={{ item.value }}" no_log: true loop: @@ -41,7 +42,7 @@ value: "{{ restic_repository }}" - name: Check if repo is initialized - command: restic snapshots + ansible.builtin.command: restic snapshots environment: RESTIC_PASSWORD: "{{ restic_password }}" RESTIC_REPOSITORY: "{{ restic_repository }}" @@ -50,18 +51,17 @@ register: repo_initalized - name: Init restic repository - command: restic init + ansible.builtin.command: restic init environment: RESTIC_PASSWORD: "{{ restic_password }}" RESTIC_REPOSITORY: "{{ restic_repository }}" when: repo_initalized.failed - name: Register backup rotation job - cron: - name: "Backup rotation job" + ansible.builtin.cron: + name: Backup rotation job hour: "23" minute: "{{ 59 |random(seed=restic_repo) }}" - job: "restic forget --keep-daily {{ restic_backup_rotation.daily }} \ - --keep-weekly {{ restic_backup_rotation.weekly }} --keep-monthly {{ restic_backup_rotation.monthly }} --prune; \ - write-node-exporter-metric -c 'Backup rotation job' -v $?" + job: restic forget --keep-daily {{ restic_backup_rotation.daily }} --keep-weekly {{ restic_backup_rotation.weekly }} --keep-monthly {{ restic_backup_rotation.monthly + }} --prune; write-node-exporter-metric -c 'Backup rotation job' -v $? disabled: "{{ item.disabled | default(false) }}" diff --git a/roles/restic_client/tasks/restic_client_docker_mariadb_backup.yml b/roles/restic_client/tasks/restic_client_docker_mariadb_backup.yml index 1be0485a..71a6e2bd 100644 --- a/roles/restic_client/tasks/restic_client_docker_mariadb_backup.yml +++ b/roles/restic_client/tasks/restic_client_docker_mariadb_backup.yml @@ -1,27 +1,24 @@ +--- - name: Register selective docker mariadb backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-mysql-backup -c {{ item.container }} -d {{ item.databases }} -o {{ restic_backup_dir }} \ - && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-mysql-backup -c {{ item.container }} -d {{ item.databases }} -o {{ restic_backup_dir }} && restic backup {{ restic_backup_dir }}/{{ item.container + }} --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" when: item.type == "mariadb-dump" and item.databases is defined - name: Register docker mariadb backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-mysql-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a \ - && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-mysql-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags + | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" - when: item.type == "mariadb-dump" and item.databases is undefined \ No newline at end of file + when: item.type == "mariadb-dump" and item.databases is undefined diff --git a/roles/restic_client/tasks/restic_client_docker_mysql_backup.yml b/roles/restic_client/tasks/restic_client_docker_mysql_backup.yml index 9fbb8f77..10bf0b7d 100644 --- a/roles/restic_client/tasks/restic_client_docker_mysql_backup.yml +++ b/roles/restic_client/tasks/restic_client_docker_mysql_backup.yml @@ -1,27 +1,24 @@ +--- - name: Register selective docker mysql backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-mysql-backup -c {{ item.container }} -d {{ item.databases }} -o {{ restic_backup_dir }} \ - && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-mysql-backup -c {{ item.container }} -d {{ item.databases }} -o {{ restic_backup_dir }} && restic backup {{ restic_backup_dir }}/{{ item.container + }} --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" when: item.type == "mysql-dump" and item.databases is defined - name: Register docker mysql backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-mysql-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a \ - && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-mysql-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags + | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" - when: item.type == "mysql-dump" and item.databases is undefined \ No newline at end of file + when: item.type == "mysql-dump" and item.databases is undefined diff --git a/roles/restic_client/tasks/restic_client_docker_postgres_backup.yml b/roles/restic_client/tasks/restic_client_docker_postgres_backup.yml index d163cecc..cf55785e 100644 --- a/roles/restic_client/tasks/restic_client_docker_postgres_backup.yml +++ b/roles/restic_client/tasks/restic_client_docker_postgres_backup.yml @@ -1,27 +1,24 @@ +--- - name: Register selective docker postgres backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-postgres-backup -c {{ item.container }} -d {{ item.databases }} -o {{ restic_backup_dir }} \ - && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-postgres-backup -c {{ item.container }} -d {{ item.databases }} -o {{ restic_backup_dir }} && restic backup {{ restic_backup_dir }}/{{ item.container + }} --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" when: item.type == "postgres-dump" and item.databases is defined - name: Register docker postgres backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-postgres-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a \ - && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-postgres-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags + | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" - when: item.type == "postgres-dump" and item.databases is undefined \ No newline at end of file + when: item.type == "postgres-dump" and item.databases is undefined diff --git a/roles/restic_client/tasks/restic_client_docker_volume_backup.yml b/roles/restic_client/tasks/restic_client_docker_volume_backup.yml index c5fdf716..9940c69c 100644 --- a/roles/restic_client/tasks/restic_client_docker_volume_backup.yml +++ b/roles/restic_client/tasks/restic_client_docker_volume_backup.yml @@ -1,26 +1,25 @@ +--- - name: Register docker multi volume backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-volume-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a -e {{ item.exclude | default('') }} \ - && restic backup {{ restic_backup_dir }}/{{ item.container }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-volume-backup -c {{ item.container }} -o {{ restic_backup_dir }} -a -e {{ item.exclude | default('') }} && restic backup {{ restic_backup_dir }}/{{ + item.container }} --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id + }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" when: item.type == "docker-volume" and item.container is defined - name: Register docker single volume backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-volume-backup -c {{ item.volume }} -v {{ item.volume }} -o {{ restic_backup_dir }} -a -e {{ item.exclude | default('') }} \ - && restic backup {{ restic_backup_dir }}/{{ item.volume }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-volume-backup -c {{ item.volume }} -v {{ item.volume }} -o {{ restic_backup_dir }} -a -e {{ item.exclude | default('') }} && restic backup {{ restic_backup_dir + }}/{{ item.volume }} --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ + item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" diff --git a/roles/restic_client/tasks/restic_client_file_backup.yml b/roles/restic_client/tasks/restic_client_file_backup.yml index 1752e7ec..e81f9efc 100644 --- a/roles/restic_client/tasks/restic_client_file_backup.yml +++ b/roles/restic_client/tasks/restic_client_file_backup.yml @@ -1,18 +1,18 @@ +--- - name: Verify file path exists - command: "ls {{ item.path }}" + ansible.builtin.command: ls {{ item.path }} changed_when: false loop: "{{ restic_backup_set }}" when: item.type == "file" - name: Register file backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "restic backup {{ item.path }} --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: restic backup {{ item.path }} --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric + -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" - when: item.type == "file" \ No newline at end of file + when: item.type == "file" diff --git a/roles/restic_client/tasks/restic_client_odoo_backup.yml b/roles/restic_client/tasks/restic_client_odoo_backup.yml index 35ea458a..6c0f7fba 100644 --- a/roles/restic_client/tasks/restic_client_odoo_backup.yml +++ b/roles/restic_client/tasks/restic_client_odoo_backup.yml @@ -1,33 +1,31 @@ +--- - name: Verify odoo backup command exists - shell: "ls $(which odoo-backup)" + ansible.builtin.shell: ls $(which odoo-backup) changed_when: false loop: "{{ restic_backup_set }}" when: item.type == "odoo-backup" - name: Register odoo backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "odoo-backup -d {{ item.database }} -h {{ item.host | default('http://localhost:8069') }} -o {{ restic_backup_dir }} \ - && restic backup {{ restic_backup_dir }}/{{ item.database }}.zip --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: odoo-backup -d {{ item.database }} -h {{ item.host | default('http://localhost:8069') }} -o {{ restic_backup_dir }} && restic backup {{ restic_backup_dir + }}/{{ item.database }}.zip --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c + '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" when: item.type == "odoo-backup" - name: Register odoo backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "docker-odoo-backup -d {{ item.database }} -c {{ item.container }} -o {{ restic_backup_dir }} \ - && restic backup {{ restic_backup_dir }}/{{ item.database }}.zip --tag {{ item.tags | join(' --tag ') }} \ - {{ '--help' if not (item.upload | default(true)) else '' }}; \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: docker-odoo-backup -d {{ item.database }} -c {{ item.container }} -o {{ restic_backup_dir }} && restic backup {{ restic_backup_dir }}/{{ item.database }}.zip + --tag {{ item.tags | join(' --tag ') }} {{ '--help' if not (item.upload | default(true)) else '' }}; write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ restic_backup_set }}" - when: item.type == "docker-odoo-backup" \ No newline at end of file + when: item.type == "docker-odoo-backup" diff --git a/roles/restic_server/defaults/main.yml b/roles/restic_server/defaults/main.yml index 6dacd95c..5538216d 100644 --- a/roles/restic_server/defaults/main.yml +++ b/roles/restic_server/defaults/main.yml @@ -1,6 +1,7 @@ +--- restic_server_requires_package: python3-passlib restic_server_user: restic -restic_server_description: "Restic Server" +restic_server_description: Restic Server restic_server_proxy_basic_auth_username: restic-server restic_server_nginx_data_dir: "{{ nginx_data_dir }}/proxies" -restic_server_basic_auth: "{{ restic_server_user }}:{{ restic_server_password }}" \ No newline at end of file +restic_server_basic_auth: "{{ restic_server_user }}:{{ restic_server_password }}" diff --git a/roles/restic_server/meta/main.yml b/roles/restic_server/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/restic_server/meta/main.yml +++ b/roles/restic_server/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/restic_server/tasks/main.yml b/roles/restic_server/tasks/main.yml index 199a2112..a6f3f870 100644 --- a/roles/restic_server/tasks/main.yml +++ b/roles/restic_server/tasks/main.yml @@ -1,12 +1,13 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: restic_server_image is defined tags: - restic_server -- name: "Include {{ role_name }} nginx config tasks" - include_tasks: "{{ role_name }}_nginx_config.yml" +- name: Include {{ role_name }} nginx config tasks + ansible.builtin.include_tasks: "{{ role_name }}_nginx_config.yml" when: restic_server_image is defined tags: - restic_server - - restic_server_nginx_config \ No newline at end of file + - restic_server_nginx_config diff --git a/roles/restic_server/tasks/restic_server.yml b/roles/restic_server/tasks/restic_server.yml index 5a80eb46..59fd54f1 100644 --- a/roles/restic_server/tasks/restic_server.yml +++ b/roles/restic_server/tasks/restic_server.yml @@ -1,21 +1,22 @@ +--- - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ restic_server_requires_package }} is not installed" - fail: - msg: "Package {{ restic_server_requires_package }} is not installed!" +- name: Fail if package {{ restic_server_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ restic_server_requires_package }} is not installed! when: restic_server_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ restic_server_backup_dir }}/.htpasswd" name: "{{ restic_server_user }}" crypt_scheme: ldap_sha1 password: "{{ restic_server_password }}" -- name: "Start {{ role_name }} container {{ restic_server_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ restic_server_hostname }} + community.docker.docker_container: name: "{{ restic_server_hostname }}" labels: description: "{{ restic_server_description }}" @@ -23,7 +24,7 @@ recreate: "true" restart_policy: unless-stopped env: - OPTIONS: "--prometheus" + OPTIONS: --prometheus HOSTNAME: "{{ restic_server_hostname }}" volumes: - "{{ restic_server_backup_dir }}:/data" @@ -33,4 +34,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ restic_server_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ restic_server_hostname }}|{{ role_name }}" diff --git a/roles/restic_server/tasks/restic_server_nginx_config.yml b/roles/restic_server/tasks/restic_server_nginx_config.yml index 30564f37..c691b041 100644 --- a/roles/restic_server/tasks/restic_server_nginx_config.yml +++ b/roles/restic_server/tasks/restic_server_nginx_config.yml @@ -1,24 +1,25 @@ +--- - name: Ensure nginx data dir exists - file: + ansible.builtin.file: path: "{{ restic_server_nginx_data_dir }}" state: directory - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto -- name: "Fail if package {{ restic_server_requires_package }} is not installed" - fail: - msg: "Package {{ restic_server_requires_package }} is not installed!" +- name: Fail if package {{ restic_server_requires_package }} is not installed + ansible.builtin.fail: + msg: Package {{ restic_server_requires_package }} is not installed! when: restic_server_requires_package not in ansible_facts.packages -- name: "Configure user access for {{ role_name }}" - htpasswd: +- name: Configure user access for {{ role_name }} + community.general.htpasswd: path: "{{ restic_server_nginx_data_dir }}/restic-server.htpasswd" name: "{{ restic_server_proxy_basic_auth_username }}" password: "{{ restic_server_proxy_basic_auth_password }}" -- name: "Copy nginx {{ role_name }} conf" - template: +- name: Copy nginx {{ role_name }} conf + ansible.builtin.template: src: restic-server.nginx - dest: "{{ restic_server_nginx_data_dir }}/restic-server.nginx" \ No newline at end of file + dest: "{{ restic_server_nginx_data_dir }}/restic-server.nginx" diff --git a/roles/s3cmd/tasks/main.yml b/roles/s3cmd/tasks/main.yml index 52c593d2..9ab34160 100644 --- a/roles/s3cmd/tasks/main.yml +++ b/roles/s3cmd/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: s3cmd_host_base is defined tags: - - s3cmd \ No newline at end of file + - s3cmd diff --git a/roles/s3cmd/tasks/s3cmd.yml b/roles/s3cmd/tasks/s3cmd.yml index b063443f..81e0a509 100644 --- a/roles/s3cmd/tasks/s3cmd.yml +++ b/roles/s3cmd/tasks/s3cmd.yml @@ -1,23 +1,23 @@ -- name: "Install required {{ role_name }} packages" - include_role: +--- +- name: Install required {{ role_name }} packages + ansible.builtin.include_role: name: package vars: packages: - name: s3cmd - name: Add bucket credentials - template: + ansible.builtin.template: src: .s3cfg dest: ~/.s3cfg - mode: 0600 + mode: "0600" - name: Register s3cmd backup jobs - cron: + ansible.builtin.cron: name: "{{ item.id }}" hour: "{{ item.hour }}" minute: "{{ 59 |random(seed=item.id) }}" - job: "s3cmd sync --delete-removed {{ item.src }} s3://{{ item.target }} && \ - write-node-exporter-metric -c '{{ item.id }}' -v $?" + job: s3cmd sync --delete-removed {{ item.src }} s3://{{ item.target }} && write-node-exporter-metric -c '{{ item.id }}' -v $? disabled: "{{ item.disabled | default(false) }}" state: "{{ item.state | default('present') }}" loop: "{{ s3cmd_backup_set }}" diff --git a/roles/simple_mail_forwarder/defaults/main.yml b/roles/simple_mail_forwarder/defaults/main.yml index 5d82869b..503170c2 100644 --- a/roles/simple_mail_forwarder/defaults/main.yml +++ b/roles/simple_mail_forwarder/defaults/main.yml @@ -1 +1,2 @@ +--- simple_mail_forwarder_description: Simple Mail Forwarder diff --git a/roles/simple_mail_forwarder/handlers/main.yml b/roles/simple_mail_forwarder/handlers/main.yml index 11cd30c9..55dd631b 100644 --- a/roles/simple_mail_forwarder/handlers/main.yml +++ b/roles/simple_mail_forwarder/handlers/main.yml @@ -1,4 +1,5 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ simple_mail_forwarder_hostname }}" - restart: true \ No newline at end of file + restart: true diff --git a/roles/simple_mail_forwarder/meta/main.yml b/roles/simple_mail_forwarder/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/simple_mail_forwarder/meta/main.yml +++ b/roles/simple_mail_forwarder/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/simple_mail_forwarder/tasks/main.yml b/roles/simple_mail_forwarder/tasks/main.yml index e7d10a86..7460dc9c 100644 --- a/roles/simple_mail_forwarder/tasks/main.yml +++ b/roles/simple_mail_forwarder/tasks/main.yml @@ -1,3 +1,4 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" - when: simple_mail_forwarder_image is defined \ No newline at end of file +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" + when: simple_mail_forwarder_image is defined diff --git a/roles/simple_mail_forwarder/tasks/simple_mail_forwarder.yml b/roles/simple_mail_forwarder/tasks/simple_mail_forwarder.yml index 57124786..3142b9da 100644 --- a/roles/simple_mail_forwarder/tasks/simple_mail_forwarder.yml +++ b/roles/simple_mail_forwarder/tasks/simple_mail_forwarder.yml @@ -1,5 +1,6 @@ -- name: "Start {{ role_name }} container {{ simple_mail_forwarder_hostname }}" - docker_container: +--- +- name: Start {{ role_name }} container {{ simple_mail_forwarder_hostname }} + community.docker.docker_container: name: "{{ simple_mail_forwarder_hostname }}" labels: description: "{{ simple_mail_forwarder_description }}" @@ -16,4 +17,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ simple_mail_forwarder_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ simple_mail_forwarder_hostname }}|{{ role_name }}" diff --git a/roles/superset/defaults/main.yml b/roles/superset/defaults/main.yml index 0cacd84c..03b73a02 100644 --- a/roles/superset/defaults/main.yml +++ b/roles/superset/defaults/main.yml @@ -1,4 +1,5 @@ +--- superset_build_image: false superset_description: Apache Superset superset_volume_name: "{{ superset_hostname }}" -superset_secret_key: "{{ vault_superset_secret_key }}" \ No newline at end of file +superset_secret_key: "{{ vault_superset_secret_key }}" diff --git a/roles/superset/handlers/main.yml b/roles/superset/handlers/main.yml index 9c1ad81f..921e3fe3 100644 --- a/roles/superset/handlers/main.yml +++ b/roles/superset/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ superset_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ superset_image }}" build: path: "{{ docker_build_dir }}/{{ superset_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/superset/tasks/main.yml b/roles/superset/tasks/main.yml index a6b21763..82b7f4ae 100644 --- a/roles/superset/tasks/main.yml +++ b/roles/superset/tasks/main.yml @@ -1,19 +1,20 @@ -- name: "On build set new image tag {{ role_name }}:{{ superset_hostname }}" - set_fact: - superset_image: "superset:{{ superset_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ superset_hostname }} + ansible.builtin.set_fact: + superset_image: superset:{{ superset_hostname }} superset_build_image: "{{ superset_image }}" when: superset_build_image and superset_build_image != superset_image tags: - superset -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: superset_build_image and superset_build_image != superset_image tags: - superset -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: superset_image is defined tags: - - superset \ No newline at end of file + - superset diff --git a/roles/superset/tasks/superset.yml b/roles/superset/tasks/superset.yml index a00e895b..3fc37d3f 100644 --- a/roles/superset/tasks/superset.yml +++ b/roles/superset/tasks/superset.yml @@ -1,9 +1,10 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ superset_volume_name }}" -- name: "Start {{ role_name }} container {{ superset_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ superset_hostname }} + community.docker.docker_container: name: "{{ superset_hostname }}" labels: description: "{{ superset_description }}" @@ -39,4 +40,3 @@ # - name: "Init {{ role_name }} db" # command: docker exec "{{ superset_hostname }}" \ # superset superset init - diff --git a/roles/superset/tasks/superset_build.yml b/roles/superset/tasks/superset_build.yml index 54304768..5ca57395 100644 --- a/roles/superset/tasks/superset_build.yml +++ b/roles/superset/tasks/superset_build.yml @@ -1,10 +1,11 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ superset_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item.path }}" dest: "{{ docker_build_dir }}/{{ superset_hostname }}/{{ item.path }}" mode: "{{ item.mode | default('') }}" @@ -13,8 +14,8 @@ - path: .dockerignore - path: superset_config.py - path: superset-init - mode: "u+x,g+x" - notify: "Build {{ role_name }} custom image" + mode: u+x,g+x + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/roles/synapse/defaults/main.yml b/roles/synapse/defaults/main.yml index 7f4214a5..2d96570b 100644 --- a/roles/synapse/defaults/main.yml +++ b/roles/synapse/defaults/main.yml @@ -1,4 +1,5 @@ +--- synapse_description: Synapse synapse_volume_name: "{{ synapse_hostname }}" -synapse_data_dir: "/usr/share/{{ synapse_hostname }}" -synapse_timezone: Europe/Berlin \ No newline at end of file +synapse_data_dir: /usr/share/{{ synapse_hostname }} +synapse_timezone: Europe/Berlin diff --git a/roles/synapse/meta/main.yml b/roles/synapse/meta/main.yml index 4c33449f..1bd73025 100644 --- a/roles/synapse/meta/main.yml +++ b/roles/synapse/meta/main.yml @@ -1,5 +1,6 @@ +--- dependencies: # noqa 701 - role: docker_network tags: - docker_network - - depends \ No newline at end of file + - depends diff --git a/roles/synapse/tasks/main.yml b/roles/synapse/tasks/main.yml index 64afdef4..2674f167 100644 --- a/roles/synapse/tasks/main.yml +++ b/roles/synapse/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: synapse_image is defined tags: - - synapse \ No newline at end of file + - synapse diff --git a/roles/synapse/tasks/synapse.yml b/roles/synapse/tasks/synapse.yml index 3095c835..002c422a 100644 --- a/roles/synapse/tasks/synapse.yml +++ b/roles/synapse/tasks/synapse.yml @@ -1,14 +1,15 @@ -- name: "Create {{ role_name }} volume" - docker_volume: +--- +- name: Create {{ role_name }} volume + community.docker.docker_volume: name: "{{ synapse_volume_name }}" -- name: "Ensure {{ role_name }} data dir exists" - file: +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: path: "{{ synapse_data_dir }}" state: directory -- name: "Start {{ role_name }} container {{ synapse_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ synapse_hostname }} + community.docker.docker_container: name: "{{ synapse_hostname }}" labels: description: "{{ synapse_description }}" @@ -17,8 +18,8 @@ env: SYNAPSE_SERVER_NAME: "{{ synapse_server_name }}" SYNAPSE_REPORT_STATS: "yes" - SYNAPSE_DATA_DIR: "/data" - SYNAPSE_CONFIG_DIR: "/config" + SYNAPSE_DATA_DIR: /data + SYNAPSE_CONFIG_DIR: /config TZ: "{{ synapse_timezone }}" volumes: - "{{ synapse_volume_name }}:/data" @@ -32,5 +33,4 @@ tag: "{{ synapse_hostname }}|{{ role_name }}" when: synapse_volume_name is defined - -# docker exec -it synapse register_new_matrix_user http://localhost:8008 -c /data/homeserver.yaml --help \ No newline at end of file +# docker exec -it synapse register_new_matrix_user http://localhost:8008 -c /data/homeserver.yaml --help diff --git a/roles/systemd/tasks/main.yml b/roles/systemd/tasks/main.yml index 7722a34c..921bba9b 100644 --- a/roles/systemd/tasks/main.yml +++ b/roles/systemd/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: systemd_units is defined tags: - systemd diff --git a/roles/systemd/tasks/systemd.yml b/roles/systemd/tasks/systemd.yml index 91802a5b..90c7a53f 100644 --- a/roles/systemd/tasks/systemd.yml +++ b/roles/systemd/tasks/systemd.yml @@ -1,12 +1,13 @@ -- name: "Setup systemd service" - template: - src: "systemd.service" - dest: "/etc/systemd/system/{{ item.name }}.service" +--- +- name: Setup systemd service + ansible.builtin.template: + src: systemd.service + dest: /etc/systemd/system/{{ item.name }}.service loop: "{{ systemd_units }}" when: systemd_units is defined -- name: "Start systemd service" - systemd: +- name: Start systemd service + ansible.builtin.systemd: name: "{{ item.name }}" state: started enabled: true diff --git a/roles/ufw/defaults/main.yml b/roles/ufw/defaults/main.yml index 2c261d29..073a526d 100644 --- a/roles/ufw/defaults/main.yml +++ b/roles/ufw/defaults/main.yml @@ -1,42 +1,43 @@ +--- ufw_rules: default: - - rule: "limit" + - rule: limit port: "22" - proto: "tcp" - - rule: "allow" + proto: tcp + - rule: allow port: "80" - proto: "tcp" - - rule: "allow" + proto: tcp + - rule: allow port: "443" - proto: "tcp" + proto: tcp bigbluebutton: - - rule: "allow" + - rule: allow port: "8080" - proto: "tcp" - - rule: "allow" + proto: tcp + - rule: allow port: "8443" - proto: "tcp" - - rule: "allow" - port: "16384:32768" - proto: "udp" + proto: tcp + - rule: allow + port: 16384:32768 + proto: udp mail: - - rule: "allow" + - rule: allow port: "25" - proto: "tcp" + proto: tcp frappe: - - rule: "allow" - port: "8000:8005" - proto: "tcp" - - rule: "allow" - port: "9000:9005" - proto: "tcp" + - rule: allow + port: 8000:8005 + proto: tcp + - rule: allow + port: 9000:9005 + proto: tcp wireguard: - - rule: "allow" + - rule: allow port: "51820" - proto: "udp" - - rule: "allow" + proto: udp + - rule: allow port: "51820" - proto: "tcp" + proto: tcp ufw_profiles: - default -ufw_enabled: false \ No newline at end of file +ufw_enabled: false diff --git a/roles/ufw/tasks/main.yml b/roles/ufw/tasks/main.yml index fd9d7335..cf536ca0 100644 --- a/roles/ufw/tasks/main.yml +++ b/roles/ufw/tasks/main.yml @@ -1,5 +1,6 @@ -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +--- +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: ufw_enabled tags: - - ufw \ No newline at end of file + - ufw diff --git a/roles/ufw/tasks/ufw.yml b/roles/ufw/tasks/ufw.yml index 24144cb2..7d71b1a5 100644 --- a/roles/ufw/tasks/ufw.yml +++ b/roles/ufw/tasks/ufw.yml @@ -1,33 +1,34 @@ +--- - name: Gather package facts - package_facts: + ansible.builtin.package_facts: manager: auto - name: Fail if package ufw is not installed - fail: - msg: "Package ufw not installed" + ansible.builtin.fail: + msg: Package ufw not installed when: "'ufw' not in ansible_facts.packages" - name: Reset ufw - ufw: + community.general.ufw: state: reset - name: Configure ufw rules - ufw: + community.general.ufw: rule: "{{ item.rule }}" port: "{{ item.port }}" proto: "{{ item.proto }}" loop: "{{ ufw_profiles | map('extract', ufw_rules) | flatten }}" - name: Deny all other incoming traffic by default - ufw: + community.general.ufw: policy: deny direction: incoming - name: Allow outgoing traffic by default - ufw: + community.general.ufw: policy: allow direction: outgoing -- name: "Enable {{ role_name }} service" - ufw: - state: enabled \ No newline at end of file +- name: Enable {{ role_name }} service + community.general.ufw: + state: enabled diff --git a/roles/update/defaults/main.yml b/roles/update/defaults/main.yml index 00ac2291..bd1446c8 100644 --- a/roles/update/defaults/main.yml +++ b/roles/update/defaults/main.yml @@ -1 +1,2 @@ -update: false \ No newline at end of file +--- +update: false diff --git a/roles/update/tasks/main.yml b/roles/update/tasks/main.yml index f5fd21b4..52c80137 100644 --- a/roles/update/tasks/main.yml +++ b/roles/update/tasks/main.yml @@ -1,30 +1,31 @@ +--- - name: Show distribution - debug: + ansible.builtin.debug: msg: "Distribution: {{ ansible_distribution }}\nMajor Version: {{ ansible_distribution_major_version }}" -- name: "Include {{ role_name }} apt tasks" - include_tasks: "{{ role_name }}_apt.yml" +- name: Include {{ role_name }} apt tasks + ansible.builtin.include_tasks: "{{ role_name }}_apt.yml" when: update and (ansible_distribution == 'Ubuntu' or ansible_distribution == 'Debian') tags: - update - never -- name: "Include {{ role_name }} yum tasks" - include_tasks: "{{ role_name }}_yum.yml" +- name: Include {{ role_name }} yum tasks + ansible.builtin.include_tasks: "{{ role_name }}_yum.yml" when: update and ansible_distribution == 'CentOS' tags: - update - never -- name: "Include {{ role_name }} zypper tasks" - include_tasks: "{{ role_name }}_zypper.yml" +- name: Include {{ role_name }} zypper tasks + ansible.builtin.include_tasks: "{{ role_name }}_zypper.yml" when: update and ansible_distribution == 'SLES' tags: - update - never -- name: "Include {{ role_name }} dnf tasks" - include_tasks: "{{ role_name }}_dnf.yml" +- name: Include {{ role_name }} dnf tasks + ansible.builtin.include_tasks: "{{ role_name }}_dnf.yml" when: update and ansible_distribution == 'AlmaLinux' or ansible_distribution == 'RHEL' tags: - update diff --git a/roles/update/tasks/update_apt.yml b/roles/update/tasks/update_apt.yml index a4d1ee99..15eb0fc5 100644 --- a/roles/update/tasks/update_apt.yml +++ b/roles/update/tasks/update_apt.yml @@ -1,29 +1,30 @@ +--- - name: Update apt-get repo and cache - apt: + ansible.builtin.apt: update_cache: true force_apt_get: true cache_valid_time: 3600 - name: Upgrade all apt packages - apt: + ansible.builtin.apt: upgrade: safe - name: Check if reboot is required - stat: + ansible.builtin.stat: path: /var/run/reboot-required register: reboot_required - name: Reboot system if required - reboot: + ansible.builtin.reboot: msg: Rebooting to complete system upgrade reboot_timeout: 120 when: reboot_required.stat.exists and reboot_allowed - name: Get all installed and updated packages # noqa 306 - shell: grep -E "$(date --iso-8601).+ (install|upgrade) " /var/log/dpkg.log | cut -d " " -f 3-5 + ansible.builtin.shell: grep -E "$(date --iso-8601).+ (install|upgrade) " /var/log/dpkg.log | cut -d " " -f 3-5 register: installed_updated_packages changed_when: false - name: Show installed and updated packages - debug: + ansible.builtin.debug: msg: "{{ installed_updated_packages.stdout_lines }}" diff --git a/roles/update/tasks/update_dnf.yml b/roles/update/tasks/update_dnf.yml index 0548a4a2..a81c4534 100644 --- a/roles/update/tasks/update_dnf.yml +++ b/roles/update/tasks/update_dnf.yml @@ -1,29 +1,30 @@ +--- - name: Update dnf cache - dnf: + ansible.builtin.dnf: update_cache: true - name: Upgrade all dnf packages # noqa 403 - dnf: + ansible.builtin.dnf: name: "*" state: latest - name: Check if reboot is required - command: needs-restarting -r + ansible.builtin.command: needs-restarting -r register: needs_restart ignore_errors: true changed_when: false - name: Reboot system if required - reboot: + ansible.builtin.reboot: msg: Rebooting to complete system upgrade reboot_timeout: 120 when: needs_restart.rc == 1 and reboot_allowed - name: Get all installed and updated packages # noqa 306 - shell: rpm -qa --last | grep -e "$(date +%a\ %b\ %d)" -e "$(date +%a\ %d\ %b)" | cut -f 1 -d " " + ansible.builtin.shell: rpm -qa --last | grep -e "$(date +%a\ %b\ %d)" -e "$(date +%a\ %d\ %b)" | cut -f 1 -d " " register: installed_updated_packages changed_when: false - name: Show installed and updated packages - debug: + ansible.builtin.debug: msg: "{{ installed_updated_packages.stdout_lines }}" diff --git a/roles/update/tasks/update_yum.yml b/roles/update/tasks/update_yum.yml index 21ddbebe..75225b44 100644 --- a/roles/update/tasks/update_yum.yml +++ b/roles/update/tasks/update_yum.yml @@ -1,34 +1,35 @@ +--- - name: Update yum cache - yum: + ansible.builtin.yum: update_cache: true - name: Upgrade all yum packages # noqa 403 - yum: + ansible.builtin.yum: name: "*" state: latest - name: Check if reboot is required - command: needs-restarting -r + ansible.builtin.command: needs-restarting -r register: needs_restart changed_when: false ignore_errors: true - name: Missing needs-restart command - fail: - msg: "Command needs-restarting is not available. Install 'yum-utils'." + ansible.builtin.fail: + msg: Command needs-restarting is not available. Install 'yum-utils'. when: needs_restart.rc == 127 - name: Reboot system if required - reboot: + ansible.builtin.reboot: msg: Rebooting to complete system upgrade reboot_timeout: 120 when: needs_restart.rc == 1 and reboot_allowed - name: Get all installed and updated packages # noqa 306 - shell: rpm -qa --last | grep -e "$(date +%a\ %b\ %d)" -e "$(date +%a\ %d\ %b)" | cut -f 1 -d " " + ansible.builtin.shell: rpm -qa --last | grep -e "$(date +%a\ %b\ %d)" -e "$(date +%a\ %d\ %b)" | cut -f 1 -d " " register: installed_updated_packages changed_when: false - name: Show installed and updated packages - debug: + ansible.builtin.debug: msg: "{{ installed_updated_packages.stdout_lines }}" diff --git a/roles/update/tasks/update_zypper.yml b/roles/update/tasks/update_zypper.yml index 70fd13b9..93779d65 100644 --- a/roles/update/tasks/update_zypper.yml +++ b/roles/update/tasks/update_zypper.yml @@ -1,28 +1,28 @@ +--- - name: Update zypper cache - zypper_repository: + community.general.zypper_repository: runrefresh: true repo: "*" - name: Upgrade all zypper packages # noqa 403 - zypper: + community.general.zypper: name: "*" state: latest # Zypper natively finds services and restarts them. - name: Check if reboot is required - stat: + ansible.builtin.stat: path: /boot/do_purge_kernels get_md5: false register: linux_reboot_required_file - name: Reboot system if required - reboot: - msg: "Reboot initiated by Ansible for kernel updates" + ansible.builtin.reboot: + msg: Reboot initiated by Ansible for kernel updates connect_timeout: 5 reboot_timeout: 300 pre_reboot_delay: 0 post_reboot_delay: 30 test_command: uptime when: linux_reboot_required_file.stat.exists and reboot_allowed - diff --git a/roles/vercel/defaults/main.yml b/roles/vercel/defaults/main.yml index 048b8899..fcdf36f1 100644 --- a/roles/vercel/defaults/main.yml +++ b/roles/vercel/defaults/main.yml @@ -1 +1,2 @@ -vercel_api_url: https://api.vercel.com \ No newline at end of file +--- +vercel_api_url: https://api.vercel.com diff --git a/roles/vercel/tasks/main.yml b/roles/vercel/tasks/main.yml index 91eb50af..e3b4554e 100644 --- a/roles/vercel/tasks/main.yml +++ b/roles/vercel/tasks/main.yml @@ -1,13 +1,14 @@ -- name: "Include {{ role_name }} script tasks" - include_tasks: "{{ role_name }}_scripts.yml" +--- +- name: Include {{ role_name }} script tasks + ansible.builtin.include_tasks: "{{ role_name }}_scripts.yml" run_once: true when: vercel_token is defined tags: - vercel -- name: "Include {{ role_name }} dns tasks" - include_tasks: "{{ role_name }}_dns.yml" +- name: Include {{ role_name }} dns tasks + ansible.builtin.include_tasks: "{{ role_name }}_dns.yml" run_once: true when: vercel_token is defined tags: - - vercel \ No newline at end of file + - vercel diff --git a/roles/vercel/tasks/vercel_dns.yml b/roles/vercel/tasks/vercel_dns.yml index 2d8ecf59..eee9e57a 100644 --- a/roles/vercel/tasks/vercel_dns.yml +++ b/roles/vercel/tasks/vercel_dns.yml @@ -1,52 +1,53 @@ +--- - name: Get all vercel domains - uri: + ansible.builtin.uri: url: "{{ vercel_api_url }}/v4/domains?teamId={{ vercel_team_id }}" headers: - Content-Type: "application/json" - Authorization: "Bearer {{ vercel_token }}" + Content-Type: application/json + Authorization: Bearer {{ vercel_token }} return_content: true register: vercel_domains - name: Set domains exist fact - set_fact: + ansible.builtin.set_fact: domains_exist: "{{ vercel_domains.json | json_query('domains[*].name') }}" - name: Fail if domain is not managed by vercel - fail: + ansible.builtin.fail: msg: Domain is not managed by vercel when: item.domain not in domains_exist loop: "{{ vercel_dns }}" - name: Get all vercel dns records - uri: + ansible.builtin.uri: url: "{{ vercel_api_url }}/v4/domains/{{ item }}/records?teamId={{ vercel_team_id }}" headers: - Content-Type: "application/json" - Authorization: "Bearer {{ vercel_token }}" + Content-Type: application/json + Authorization: Bearer {{ vercel_token }} return_content: true loop: "{{ domains_exist }}" register: vercel_dns_records - name: Set vercel dns simple fact - set_fact: + ansible.builtin.set_fact: record: "{{ item.1.name }}.{{ item.0.item }}-{{ item.1.type }}" with_subelements: - "{{ vercel_dns_records.results }}" - json.records register: vercel_dns_simple no_log: true - + - name: Make a simple list - set_fact: + ansible.builtin.set_fact: vercel_dns_simple: "{{ vercel_dns_simple.results | map(attribute='ansible_facts.record') | list }}" - name: Ensure DNS entry exists - uri: + ansible.builtin.uri: url: "{{ vercel_api_url }}/v2/domains/{{ item.0.domain }}/records?teamId={{ vercel_team_id }}" method: POST headers: - Content-Type: "application/json" - Authorization: "Bearer {{ vercel_token }}" + Content-Type: application/json + Authorization: Bearer {{ vercel_token }} body: "{{ item.1 | dict2items | rejectattr('key', 'equalto', 'state') | list | items2dict | to_json }}" with_subelements: - "{{ vercel_dns }}" @@ -56,7 +57,7 @@ changed_when: response.status == 200 - name: Set vercel dns absent fact - set_fact: + ansible.builtin.set_fact: record: "{{ item.1.name }}.{{ item.0.domain }}-{{ item.1.type }}" with_subelements: - "{{ vercel_dns }}" @@ -65,19 +66,19 @@ register: vercel_dns_absent - name: Make a simple list - set_fact: + ansible.builtin.set_fact: vercel_dns_absent: "{{ vercel_dns_absent.results | selectattr('ansible_facts.record','defined') | map(attribute='ansible_facts.record') | list }}" - name: Ensure DNS entries to be removed - uri: + ansible.builtin.uri: url: "{{ vercel_api_url }}/v2/domains/{{ item.0.item }}/records/{{ item.1.id }}?teamId={{ vercel_team_id }}" method: DELETE headers: - Content-Type: "application/json" - Authorization: "Bearer {{ vercel_token }}" + Content-Type: application/json + Authorization: Bearer {{ vercel_token }} with_subelements: - "{{ vercel_dns_records.results }}" - json.records when: (item.1.name + "." + item.0.item + "-" + item.1.type) in vercel_dns_absent register: response - changed_when: response.status == 200 \ No newline at end of file + changed_when: response.status == 200 diff --git a/roles/vercel/tasks/vercel_scripts.yml b/roles/vercel/tasks/vercel_scripts.yml index c858ab78..10c9efda 100644 --- a/roles/vercel/tasks/vercel_scripts.yml +++ b/roles/vercel/tasks/vercel_scripts.yml @@ -1,13 +1,14 @@ -- name: "Ensure {{ role_name }} data dir exists" - file: - path: "/usr/share/vercel" +--- +- name: Ensure {{ role_name }} data dir exists + ansible.builtin.file: + path: /usr/share/vercel state: directory -- name: "Copy {{ role_name }}" - copy: +- name: Copy {{ role_name }} + ansible.builtin.copy: src: "{{ item }}" - dest: "/usr/share/vercel/{{ item }}" + dest: /usr/share/vercel/{{ item }} mode: +x loop: - authenticator - - cleanup \ No newline at end of file + - cleanup diff --git a/roles/wordpress/defaults/main.yml b/roles/wordpress/defaults/main.yml index 40cfce70..12c64bcf 100644 --- a/roles/wordpress/defaults/main.yml +++ b/roles/wordpress/defaults/main.yml @@ -1,3 +1,4 @@ +--- wordpress_build_image: false wordpress_description: WordPress -wordpress_volume_name: "{{ wordpress_hostname }}" \ No newline at end of file +wordpress_volume_name: "{{ wordpress_hostname }}" diff --git a/roles/wordpress/handlers/main.yml b/roles/wordpress/handlers/main.yml index 3c3a9726..2ed85037 100644 --- a/roles/wordpress/handlers/main.yml +++ b/roles/wordpress/handlers/main.yml @@ -1,10 +1,11 @@ -- name: "Restart {{ role_name }} container" - docker_container: +--- +- name: Restart {{ role_name }} container + community.docker.docker_container: name: "{{ wordpress_hostname }}" restart: true -- name: "Build {{ role_name }} custom image" - docker_image: +- name: Build {{ role_name }} custom image + community.docker.docker_image: name: "{{ wordpress_image }}" build: path: "{{ docker_build_dir }}/{{ wordpress_hostname }}" @@ -12,4 +13,4 @@ source: build force_source: true force_tag: true - state: present \ No newline at end of file + state: present diff --git a/roles/wordpress/meta/main.yml b/roles/wordpress/meta/main.yml index 6df2e7d5..e51b9404 100644 --- a/roles/wordpress/meta/main.yml +++ b/roles/wordpress/meta/main.yml @@ -1,3 +1,4 @@ +--- dependencies: # noqa 701 - role: mysql tags: diff --git a/roles/wordpress/tasks/main.yml b/roles/wordpress/tasks/main.yml index ea7d736a..f0244fe6 100644 --- a/roles/wordpress/tasks/main.yml +++ b/roles/wordpress/tasks/main.yml @@ -1,19 +1,20 @@ -- name: "On build set new image tag {{ role_name }}:{{ wordpress_hostname }}" - set_fact: - wordpress_image: "wordpress:{{ wordpress_hostname }}" +--- +- name: On build set new image tag {{ role_name }}:{{ wordpress_hostname }} + ansible.builtin.set_fact: + wordpress_image: wordpress:{{ wordpress_hostname }} wordpress_build_image: "{{ wordpress_image }}" when: wordpress_build_image and wordpress_build_image != wordpress_image tags: - wordpress -- name: "Include {{ role_name }} build tasks" - include_tasks: "{{ role_name }}_build.yml" +- name: Include {{ role_name }} build tasks + ansible.builtin.include_tasks: "{{ role_name }}_build.yml" when: wordpress_build_image and wordpress_build_image != wordpress_image tags: - wordpress -- name: "Include {{ role_name }} tasks" - include_tasks: "{{ role_name }}.yml" +- name: Include {{ role_name }} tasks + ansible.builtin.include_tasks: "{{ role_name }}.yml" when: wordpress_image is defined tags: - - wordpress \ No newline at end of file + - wordpress diff --git a/roles/wordpress/tasks/wordpress.yml b/roles/wordpress/tasks/wordpress.yml index c32e7ed9..1830baa2 100644 --- a/roles/wordpress/tasks/wordpress.yml +++ b/roles/wordpress/tasks/wordpress.yml @@ -1,12 +1,13 @@ -- name: "Include docker volume role" - include_role: +--- +- name: Include docker volume role + ansible.builtin.include_role: name: docker_volume vars: docker_volume_name: "{{ wordpress_volume_name }}" when: wordpress_volume_name is defined -- name: "Start {{ role_name }} container {{ wordpress_hostname }}" - docker_container: +- name: Start {{ role_name }} container {{ wordpress_hostname }} + community.docker.docker_container: name: "{{ wordpress_hostname }}" labels: description: "{{ wordpress_description }}" @@ -34,4 +35,4 @@ log_options: max-size: "{{ docker_log_max_size }}" max-file: "{{ docker_log_max_file }}" - tag: "{{ wordpress_hostname }}|{{ role_name }}" \ No newline at end of file + tag: "{{ wordpress_hostname }}|{{ role_name }}" diff --git a/roles/wordpress/tasks/wordpress_build.yml b/roles/wordpress/tasks/wordpress_build.yml index 143f8a3b..6199c393 100644 --- a/roles/wordpress/tasks/wordpress_build.yml +++ b/roles/wordpress/tasks/wordpress_build.yml @@ -1,16 +1,17 @@ -- name: "Ensure {{ role_name }} build dir exists" - file: +--- +- name: Ensure {{ role_name }} build dir exists + ansible.builtin.file: path: "{{ docker_build_dir }}/{{ wordpress_hostname }}" state: directory -- name: "Copy {{ role_name }} Dockerfile" - template: +- name: Copy {{ role_name }} Dockerfile + ansible.builtin.template: src: "{{ item }}" dest: "{{ docker_build_dir }}/{{ wordpress_hostname }}/{{ item }}" loop: - Dockerfile - .dockerignore - notify: "Build {{ role_name }} custom image" + notify: Build {{ role_name }} custom image - name: Flush handlers - meta: flush_handlers \ No newline at end of file + ansible.builtin.meta: flush_handlers diff --git a/task b/task index 062ea00f..ac6d26a9 100755 --- a/task +++ b/task @@ -129,7 +129,7 @@ case "$1" in ;; lint) activate-venv - ansible-lint --offline roles/* + ansible-lint --write --offline roles/* ;; source) activate-venv