kdevops.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes
@ 2025-08-25 20:54 Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 1/8] playbooks: ansible-lint fix deprecated-local-action Daniel Gomez
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

Run the Ansible linter on playbooks and split changes by individual
autofix linter rules to keep them bisectable in case of regressions.
Use the autogenerated Claude Code wrapper script to apply and commit the
changes automatically [1].

Link: https://github.com/dkruces/kdevops/tree/ansible-lint-wrapper [1]

List of commands executed:
  ansible-lint --fix=command-instead-of-shell playbooks/
  ansible-lint --fix=deprecated-local-action playbooks/
  ansible-lint --fix=fqcn playbooks/
  ansible-lint --fix=jinja playbooks/
  ansible-lint --fix=key-order playbooks/
  ansible-lint --fix=name playbooks/
  ansible-lint --fix=no-free-form playbooks/
  ansible-lint --fix=no-jinja-when playbooks/
  ansible-lint --fix=no-log-password playbooks/
  ansible-lint --fix=partial-become playbooks/
  ansible-lint --fix=yaml playbooks

Summary of pending rules:

Rule Violation Summary

  1 syntax-check profile:min tags:core,unskippable
 18 command-instead-of-module profile:min tags:command-shell,idiom
  2 deprecated-local-action profile:min tags:deprecations
  2 inline-env-var profile:min tags:command-shell,idiom
  8 jinja profile:min tags:formatting
  7 jinja profile:min tags:formatting
  1 schema profile:min tags:core
660 schema profile:min tags:core
 71 name profile:min tags:idiom
  4 name profile:min tags:idiom
470 var-naming profile:min tags:idiom
 32 yaml profile:min tags:formatting,yaml
  1 yaml profile:min tags:formatting,yaml
 81 name profile:min tags:idiom
  3 latest profile:min tags:idempotency
  1 package-latest profile:min tags:idempotency
136 risky-file-permissions profile:min tags:unpredictability
  9 risky-shell-pipe profile:min tags:command-shell
 65 ignore-errors profile:min tags:unpredictability
246 no-changed-when profile:min tags:command-shell,idempotency
  4 args profile:min tags:syntax,experimental

Failed: 1811 failure(s), 11 warning(s) on 585 files.
<sys>:0: DeprecationWarning: builtin type swigvarlink has no __module__
attribute

RFC:
https://lore.kernel.org/kdevops/20250801-ansible-lint-v1-0-5a56a95ed8d5@samsung.com/

Related:
https://lore.kernel.org/kdevops/f12b23e0-8f9c-432e-9e7f-eca522665085@kernel.org/

Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
Daniel Gomez (8):
      playbooks: ansible-lint fix deprecated-local-action
      playbooks: ansible-lint fix fqcn
      playbooks: ansible-lint fix jinja
      playbooks: ansible-lint fix key-order
      playbooks: ansible-lint fix name
      playbooks: ansible-lint fix no-free-form
      playbooks: ansible-lint fix command-instead-of-shell
      playbooks: ansible-lint fix jinja

 playbooks/bootlinux.yml                            |   2 +-
 playbooks/cxl.yml                                  |   2 +-
 playbooks/devconfig.yml                            |   2 +-
 playbooks/monitor-results.yml                      |  18 +-
 playbooks/roles/ansible_cfg/tasks/main.yml         |   4 +-
 playbooks/roles/blktests/defaults/main.yml         |   8 +-
 playbooks/roles/blktests/handlers/main.yml         |   5 +-
 .../blktests/tasks/install-deps/debian/main.yml    |  20 +-
 .../roles/blktests/tasks/install-deps/main.yml     |  10 +-
 .../blktests/tasks/install-deps/redhat/main.yml    |   6 +-
 .../blktests/tasks/install-deps/suse/main.yml      | 120 +--
 playbooks/roles/blktests/tasks/main.yml            | 326 ++++----
 playbooks/roles/bootlinux/defaults/main.yml        |  26 +-
 playbooks/roles/bootlinux/tasks/build/9p.yml       |  73 +-
 playbooks/roles/bootlinux/tasks/build/builder.yml  |   4 +-
 playbooks/roles/bootlinux/tasks/build/targets.yml  |  48 +-
 .../bootlinux/tasks/install-deps/debian/main.yml   |  10 +-
 .../bootlinux/tasks/install-deps/redhat/main.yml   |  16 +-
 .../bootlinux/tasks/install-deps/suse/main.yml     |   6 +-
 .../tasks/install-minimal-deps/debian/main.yml     |  12 +-
 .../tasks/install-minimal-deps/redhat/main.yml     |   8 +-
 .../tasks/install-minimal-deps/suse/main.yml       |   4 +-
 .../roles/bootlinux/tasks/install/packages.yml     |   2 +-
 playbooks/roles/bootlinux/tasks/main.yml           | 156 ++--
 .../roles/bootlinux/tasks/update-grub/debian.yml   |   9 +-
 .../roles/bootlinux/tasks/update-grub/install.yml  |  51 +-
 .../roles/bootlinux/tasks/update-grub/main.yml     |   6 +-
 .../roles/bootlinux/tasks/update-grub/redhat.yml   |  32 +-
 .../roles/bootlinux/tasks/update-grub/suse.yml     |   9 +-
 playbooks/roles/btrfs_progs/defaults/main.yml      |   2 +-
 .../btrfs_progs/tasks/install-deps/debian/main.yml |  14 +-
 .../roles/btrfs_progs/tasks/install-deps/main.yml  |   8 +-
 .../btrfs_progs/tasks/install-deps/redhat/main.yml |   4 +-
 .../btrfs_progs/tasks/install-deps/suse/main.yml   |   4 +-
 playbooks/roles/btrfs_progs/tasks/main.yml         |  62 +-
 playbooks/roles/build_qemu/defaults/main.yml       |   4 +-
 .../build_qemu/tasks/install-deps/debian/main.yml  |  14 +-
 .../build_qemu/tasks/install-deps/fedora/main.yml  |   8 +-
 .../roles/build_qemu/tasks/install-deps/main.yml   |  14 +-
 .../build_qemu/tasks/install-deps/redhat/main.yml  |   4 +-
 .../build_qemu/tasks/install-deps/suse/main.yml    |   4 +-
 playbooks/roles/build_qemu/tasks/main.yml          |  62 +-
 playbooks/roles/common/defaults/main.yml           |   2 +-
 playbooks/roles/common/tasks/main.yml              |  28 +-
 playbooks/roles/compile_dbench/defaults/main.yml   |   2 +-
 .../tasks/install-deps/debian/main.yml             |  18 +-
 .../compile_dbench/tasks/install-deps/main.yml     |   6 +-
 playbooks/roles/compile_dbench/tasks/main.yml      |  45 +-
 .../roles/create_data_partition/tasks/main.yml     |  13 +-
 playbooks/roles/create_nfs_mount/tasks/main.yml    |   7 +-
 .../tasks/install-deps/debian/main.yml             |   6 +-
 .../create_partition/tasks/install-deps/main.yml   |   8 +-
 .../tasks/install-deps/redhat/main.yml             |  12 +-
 .../tasks/install-deps/suse/main.yml               |  38 +-
 playbooks/roles/create_partition/tasks/main.yml    |  87 +-
 playbooks/roles/create_tmpfs/tasks/main.yml        |   5 +-
 playbooks/roles/cxl/defaults/main.yml              |   4 +-
 .../roles/cxl/tasks/cxl-create-dc-region/main.yml  |  32 +-
 playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml   |  89 +-
 playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml   |  35 +-
 .../roles/cxl/tasks/install-deps/debian/main.yml   |  14 +-
 playbooks/roles/cxl/tasks/install-deps/generic.yml |   4 +-
 playbooks/roles/cxl/tasks/install-deps/main.yml    |  10 +-
 .../roles/cxl/tasks/install-deps/redhat/main.yml   |   6 +-
 .../roles/cxl/tasks/install-deps/suse/main.yml     |  40 +-
 playbooks/roles/cxl/tasks/main.yml                 | 176 ++--
 playbooks/roles/devconfig/defaults/main.yml        |  49 +-
 .../roles/devconfig/tasks/check-apt-mirrors.yml    | 108 +--
 .../config-custom-repos-and-packages/main.yml      |   3 +-
 .../redhat/main.yml                                |  11 +-
 .../devconfig/tasks/install-deps/debian/main.yml   | 135 +--
 .../roles/devconfig/tasks/install-deps/main.yml    |  14 +-
 .../devconfig/tasks/install-deps/redhat/main.yml   |  70 +-
 .../devconfig/tasks/install-deps/suse/main.yml     | 278 +++----
 .../tasks/kotd-rev-kernel/debian/main.yml          |  22 +-
 .../roles/devconfig/tasks/kotd-rev-kernel/main.yml |  46 +-
 .../tasks/kotd-rev-kernel/redhat/main.yml          |  30 +-
 .../devconfig/tasks/kotd-rev-kernel/suse/main.yml  |  76 +-
 playbooks/roles/devconfig/tasks/main.yml           | 459 +++++------
 playbooks/roles/fstests/defaults/main.yml          | 262 +++---
 playbooks/roles/fstests/handlers/main.yml          |   5 +-
 .../fstests/tasks/install-deps/debian/main.yml     |  34 +-
 .../roles/fstests/tasks/install-deps/main.yml      |  14 +-
 .../fstests/tasks/install-deps/redhat/main.yml     |  26 +-
 .../roles/fstests/tasks/install-deps/suse/main.yml |  90 +-
 playbooks/roles/fstests/tasks/main.yml             | 911 +++++++++++----------
 .../roles/fstests_prep_localhost/defaults/main.yml |   2 +-
 .../tasks/install-deps/debian/main.yml             |   4 +-
 .../tasks/install-deps/main.yml                    |   8 +-
 .../tasks/install-deps/redhat/main.yml             |  12 +-
 .../tasks/install-deps/suse/main.yml               |  18 +-
 .../roles/fstests_prep_localhost/tasks/main.yml    |  12 +-
 playbooks/roles/gen_hosts/defaults/main.yml        |  38 +-
 playbooks/roles/gen_hosts/tasks/main.yml           | 209 ++---
 playbooks/roles/gen_nodes/defaults/main.yml        | 113 ++-
 playbooks/roles/gen_nodes/tasks/main.yml           | 207 ++---
 playbooks/roles/gen_pci_kconfig/defaults/main.yml  |   2 +-
 playbooks/roles/gen_pci_kconfig/tasks/main.yml     |   4 +-
 playbooks/roles/gen_tfvars/defaults/main.yml       |   6 +-
 playbooks/roles/gen_tfvars/tasks/main.yml          |  30 +-
 playbooks/roles/gitr/defaults/main.yml             |   4 +-
 .../roles/gitr/tasks/install-deps/debian/main.yml  |   2 +-
 playbooks/roles/gitr/tasks/install-deps/main.yml   |   6 +-
 .../roles/gitr/tasks/install-deps/redhat/main.yml  |   6 +-
 .../roles/gitr/tasks/install-deps/suse/main.yml    |   2 +-
 playbooks/roles/gitr/tasks/main.yml                |  49 +-
 playbooks/roles/guestfs/defaults/main.yml          |   2 +-
 .../guestfs/tasks/bringup/console-permissions.yml  |   4 +-
 playbooks/roles/guestfs/tasks/bringup/main.yml     |   6 +-
 playbooks/roles/guestfs/tasks/bringup/network.yml  |   8 +-
 .../guestfs/tasks/bringup/storage-pool-path.yml    |  10 +-
 .../roles/hypervisor-tuning/defaults/main.yml      |   6 +-
 playbooks/roles/hypervisor-tuning/tasks/main.yml   |  62 +-
 .../install-menuconfig-deps/defaults/main.yml      |   2 +-
 .../tasks/install-deps/debian/main.yml             |  14 +-
 .../tasks/install-deps/fedora/main.yml             |   4 +-
 .../tasks/install-deps/main.yml                    |  14 +-
 .../tasks/install-deps/redhat/main.yml             |   4 +-
 .../tasks/install-deps/suse/main.yml               |   6 +-
 .../roles/install-menuconfig-deps/tasks/main.yml   |  12 +-
 .../defaults/main.yml                              |   4 +-
 .../tasks/install-deps/debian/main.yml             |   4 +-
 .../tasks/install-deps/main.yml                    |   8 +-
 .../tasks/install-deps/redhat/main.yml             |   6 +-
 .../tasks/install-deps/suse/main.yml               |   2 +-
 .../install_systemd_journal_remote/tasks/main.yml  |  69 +-
 .../install_systemd_timesyncd/defaults/main.yml    |  10 +-
 .../tasks/install-deps/debian/main.yml             |   4 +-
 .../tasks/install-deps/main.yml                    |   8 +-
 .../tasks/install-deps/redhat/main.yml             |   6 +-
 .../tasks/install-deps/suse/main.yml               |   2 +-
 .../roles/install_systemd_timesyncd/tasks/main.yml |  43 +-
 .../roles/install_terraform/defaults/main.yml      |   4 +-
 .../tasks/install-deps/debian/main.yml             |  10 +-
 .../install_terraform/tasks/install-deps/main.yml  |   6 +-
 .../tasks/install-deps/redhat/main.yml             |  10 +-
 .../tasks/install-deps/suse/main.yml               |  16 +-
 playbooks/roles/install_terraform/tasks/main.yml   |  12 +-
 playbooks/roles/iscsi/tasks/add_initiator.yml      |  16 +-
 playbooks/roles/iscsi/tasks/add_lun.yml            |  10 +-
 playbooks/roles/iscsi/tasks/main.yml               |  26 +-
 .../roles/kdc/tasks/install-deps/debian/main.yml   |   6 +-
 .../roles/kdc/tasks/install-deps/redhat/main.yml   |   6 +-
 .../roles/kdc/tasks/install-deps/suse/main.yml     |   2 +-
 playbooks/roles/kdc/tasks/main.yml                 |  46 +-
 playbooks/roles/kdc/vars/RedHat.yml                |   3 +-
 playbooks/roles/kdc/vars/default.yml               |   3 +-
 playbooks/roles/kdevops_archive/defaults/main.yml  |   4 +-
 playbooks/roles/kdevops_archive/tasks/main.yml     | 162 ++--
 .../roles/krb5/tasks/install-deps/debian/main.yml  |   6 +-
 .../roles/krb5/tasks/install-deps/redhat/main.yml  |   6 +-
 .../roles/krb5/tasks/install-deps/suse/main.yml    |   6 +-
 playbooks/roles/krb5/tasks/main.yml                |  20 +-
 .../roles/ktls/tasks/install-deps/debian/main.yml  |   6 +-
 playbooks/roles/ktls/tasks/install-deps/main.yml   |   8 +-
 .../roles/ktls/tasks/install-deps/redhat/main.yml  |   6 +-
 .../roles/ktls/tasks/install-deps/suse/main.yml    |   2 +-
 playbooks/roles/ktls/tasks/main.yml                |  42 +-
 .../libvirt_pcie_passthrough/defaults/main.yml     |   2 +-
 .../roles/libvirt_pcie_passthrough/tasks/main.yml  |  42 +-
 .../libvirt_storage_pool_create/defaults/main.yml  |   4 +-
 .../libvirt_storage_pool_create/tasks/main.yml     |  66 +-
 playbooks/roles/libvirt_user/defaults/main.yml     |  10 +-
 .../libvirt_user/tasks/enable-user/debian/main.yml |  32 +-
 .../libvirt_user/tasks/enable-user/redhat/main.yml |  34 +-
 .../libvirt_user/tasks/enable-user/suse/main.yml   |  24 +-
 .../tasks/install-deps/debian/main.yml             |  22 +-
 .../tasks/install-deps/fedora/main.yml             |  28 +-
 .../roles/libvirt_user/tasks/install-deps/main.yml |  14 +-
 .../tasks/install-deps/redhat/main.yml             |  16 +-
 .../libvirt_user/tasks/install-deps/suse/main.yml  |  14 +-
 playbooks/roles/libvirt_user/tasks/main.yml        |  22 +-
 playbooks/roles/linux-mirror/defaults/main.yml     |   4 +-
 .../tasks/install-deps/fedora/main.yml             |  10 +-
 playbooks/roles/linux-mirror/tasks/main.yml        | 140 ++--
 playbooks/roles/ltp/defaults/main.yml              |   2 +-
 playbooks/roles/ltp/tasks/main.yml                 | 103 +--
 playbooks/roles/mmtests/defaults/main.yml          |  18 +-
 .../mmtests/tasks/install-deps/debian/main.yml     |  34 +-
 .../roles/mmtests/tasks/install-deps/main.yml      |   8 +-
 .../mmtests/tasks/install-deps/redhat/main.yml     |  28 +-
 .../roles/mmtests/tasks/install-deps/suse/main.yml |  28 +-
 playbooks/roles/mmtests/tasks/main.yaml            | 154 ++--
 playbooks/roles/mmtests_compare/tasks/main.yml     | 156 ++--
 playbooks/roles/monitoring/tasks/main.yml          |  18 +-
 .../roles/monitoring/tasks/monitor_collect.yml     |  91 +-
 .../monitoring/tasks/monitor_collect_only.yml      | 115 +--
 playbooks/roles/monitoring/tasks/monitor_run.yml   |  24 +-
 .../roles/nfsd/tasks/install-deps/debian/main.yml  |  20 +-
 .../roles/nfsd/tasks/install-deps/redhat/main.yml  |  16 +-
 .../roles/nfsd/tasks/install-deps/suse/main.yml    |  16 +-
 playbooks/roles/nfsd/tasks/main.yml                |  58 +-
 playbooks/roles/nfsd_add_export/tasks/main.yml     |  50 +-
 .../roles/nfsd_add_export/tasks/storage/iscsi.yml  |  12 +-
 .../roles/nfsd_add_export/tasks/storage/local.yml  |   8 +-
 .../roles/nfsd_add_export/tasks/storage/tmpfs.yml  |   4 +-
 playbooks/roles/nfstest/defaults/main.yml          |   2 +-
 playbooks/roles/nfstest/tasks/main.yml             |  49 +-
 playbooks/roles/pkg/tasks/debian.yml               |   9 +-
 playbooks/roles/pkg/tasks/main.yml                 |   5 +-
 .../roles/postfix_relay_host/defaults/main.yml     |   4 +-
 playbooks/roles/postfix_relay_host/tasks/main.yml  |  40 +-
 playbooks/roles/pynfs/defaults/main.yml            |   4 +-
 .../roles/pynfs/tasks/install-deps/debian/main.yml |   8 +-
 playbooks/roles/pynfs/tasks/install-deps/main.yml  |   8 +-
 .../roles/pynfs/tasks/install-deps/redhat/main.yml |   6 +-
 .../roles/pynfs/tasks/install-deps/suse/main.yml   |   2 +-
 playbooks/roles/pynfs/tasks/main.yml               | 145 ++--
 playbooks/roles/reboot-limit/defaults/main.yml     |   4 +-
 .../roles/reboot-limit/tasks/do-reboot-compare.yml |  71 +-
 playbooks/roles/reboot-limit/tasks/do-reboot.yml   | 129 +--
 .../reboot-limit/tasks/handle-reboot-data.yml      |  60 +-
 .../tasks/install-deps/debian/main.yml             |   6 +-
 .../roles/reboot-limit/tasks/install-deps/main.yml |  10 +-
 .../tasks/install-deps/redhat/main.yml             |   8 +-
 .../reboot-limit/tasks/install-deps/suse/main.yml  |   8 +-
 playbooks/roles/reboot-limit/tasks/main.yml        | 126 +--
 playbooks/roles/selftests/defaults/main.yml        |  36 +-
 .../selftests/tasks/install-deps/debian/main.yml   |  14 +-
 .../roles/selftests/tasks/install-deps/main.yml    |   8 +-
 .../selftests/tasks/install-deps/redhat/main.yml   |   6 +-
 .../selftests/tasks/install-deps/suse/main.yml     |  34 +-
 playbooks/roles/selftests/tasks/main.yml           | 366 ++++-----
 playbooks/roles/siw/tasks/main.yml                 |  15 +-
 .../roles/smbd/tasks/install-deps/debian/main.yml  |  18 +-
 .../roles/smbd/tasks/install-deps/redhat/main.yml  |  16 +-
 .../roles/smbd/tasks/install-deps/suse/main.yml    |  12 +-
 playbooks/roles/smbd/tasks/main.yml                |  34 +-
 playbooks/roles/smbd_add_share/tasks/main.yml      |  57 +-
 playbooks/roles/steady_state/defaults/main.yml     |   4 +-
 playbooks/roles/steady_state/tasks/main.yaml       | 138 ++--
 playbooks/roles/sysbench/defaults/main.yml         |  14 +-
 .../sysbench/tasks/install-deps/debian/main.yml    |  40 +-
 .../roles/sysbench/tasks/install-deps/main.yml     |  10 +-
 .../sysbench/tasks/install-deps/redhat/main.yml    |   6 +-
 .../sysbench/tasks/install-deps/suse/main.yml      |  42 +-
 playbooks/roles/sysbench/tasks/main.yaml           |  13 +-
 .../roles/sysbench/tasks/mysql-docker/main.yaml    | 504 ++++++------
 .../sysbench/tasks/postgresql-native/main.yaml     | 175 ++--
 playbooks/roles/update_etc_hosts/defaults/main.yml |   3 +-
 playbooks/roles/update_etc_hosts/tasks/main.yml    |  50 +-
 .../roles/update_ssh_config_guestfs/tasks/main.yml |  25 +-
 playbooks/roles/volume_group/tasks/main.yml        |   2 +-
 .../roles/volume_group/tasks/terraform/aws.yml     |   5 +-
 playbooks/update_etc_hosts.yml                     |   2 +-
 245 files changed, 4915 insertions(+), 4912 deletions(-)
---
base-commit: 32d22bc035e472b047c00407f5cc3e97bd7cac15
change-id: 20250825-ansible-lint-fix-per-rule-3488fc7bd8fb

Best regards,
--  
Daniel Gomez <da.gomez@samsung.com>


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH RFT 1/8] playbooks: ansible-lint fix deprecated-local-action
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 2/8] playbooks: ansible-lint fix fqcn Daniel Gomez
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix deprecated-local-action ansible-lint rule violations

Fixed deprecated-local-action rule violations across 225 file(s).

Affected files include:
- playbooks/devconfig.yml
- playbooks/monitor-results.yml
- playbooks/roles/ansible_cfg/tasks/main.yml
- playbooks/roles/blktests/defaults/main.yml
- playbooks/roles/blktests/handlers/main.yml
... and 220 more files

Applied using ansible-lint --fix=deprecated-local-action.

Generated-by: Ansible Lint
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/devconfig.yml                            |   2 +-
 playbooks/monitor-results.yml                      |  14 +-
 playbooks/roles/ansible_cfg/tasks/main.yml         |   4 +-
 playbooks/roles/blktests/defaults/main.yml         |   8 +-
 playbooks/roles/blktests/handlers/main.yml         |   1 +
 .../blktests/tasks/install-deps/debian/main.yml    |  14 +-
 .../blktests/tasks/install-deps/redhat/main.yml    |   4 +-
 .../blktests/tasks/install-deps/suse/main.yml      |  76 +--
 playbooks/roles/blktests/tasks/main.yml            | 214 +++----
 playbooks/roles/bootlinux/defaults/main.yml        |  26 +-
 playbooks/roles/bootlinux/tasks/build/9p.yml       |  31 +-
 playbooks/roles/bootlinux/tasks/build/builder.yml  |   4 +-
 playbooks/roles/bootlinux/tasks/build/targets.yml  |  18 +-
 .../bootlinux/tasks/install-deps/debian/main.yml   |   6 +-
 .../bootlinux/tasks/install-deps/redhat/main.yml   |  10 +-
 .../bootlinux/tasks/install-deps/suse/main.yml     |   4 +-
 .../tasks/install-minimal-deps/debian/main.yml     |   8 +-
 .../tasks/install-minimal-deps/redhat/main.yml     |   4 +-
 .../tasks/install-minimal-deps/suse/main.yml       |   2 +-
 playbooks/roles/bootlinux/tasks/main.yml           |  80 +--
 .../roles/bootlinux/tasks/update-grub/debian.yml   |   7 +-
 .../roles/bootlinux/tasks/update-grub/install.yml  |  36 +-
 .../roles/bootlinux/tasks/update-grub/redhat.yml   |  21 +-
 .../roles/bootlinux/tasks/update-grub/suse.yml     |   7 +-
 playbooks/roles/btrfs_progs/defaults/main.yml      |   2 +-
 .../btrfs_progs/tasks/install-deps/debian/main.yml |  10 +-
 .../btrfs_progs/tasks/install-deps/redhat/main.yml |   2 +-
 .../btrfs_progs/tasks/install-deps/suse/main.yml   |   2 +-
 playbooks/roles/btrfs_progs/tasks/main.yml         |  32 +-
 playbooks/roles/build_qemu/defaults/main.yml       |   4 +-
 .../build_qemu/tasks/install-deps/debian/main.yml  |  10 +-
 .../build_qemu/tasks/install-deps/fedora/main.yml  |   4 +-
 .../roles/build_qemu/tasks/install-deps/main.yml   |   4 +-
 .../build_qemu/tasks/install-deps/redhat/main.yml  |   2 +-
 .../build_qemu/tasks/install-deps/suse/main.yml    |   2 +-
 playbooks/roles/build_qemu/tasks/main.yml          |  34 +-
 playbooks/roles/common/defaults/main.yml           |   2 +-
 playbooks/roles/common/tasks/main.yml              |  12 +-
 playbooks/roles/compile_dbench/defaults/main.yml   |   2 +-
 .../tasks/install-deps/debian/main.yml             |  12 +-
 playbooks/roles/compile_dbench/tasks/main.yml      |  26 +-
 .../roles/create_data_partition/tasks/main.yml     |   9 +-
 playbooks/roles/create_nfs_mount/tasks/main.yml    |   7 +-
 .../tasks/install-deps/debian/main.yml             |   4 +-
 .../tasks/install-deps/redhat/main.yml             |   8 +-
 .../tasks/install-deps/suse/main.yml               |  28 +-
 playbooks/roles/create_partition/tasks/main.yml    |  62 +-
 playbooks/roles/create_tmpfs/tasks/main.yml        |   5 +-
 playbooks/roles/cxl/defaults/main.yml              |   4 +-
 .../roles/cxl/tasks/cxl-create-dc-region/main.yml  |  30 +-
 playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml   |  69 +--
 playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml   |  19 +-
 .../roles/cxl/tasks/install-deps/debian/main.yml   |  10 +-
 playbooks/roles/cxl/tasks/install-deps/generic.yml |   2 +-
 .../roles/cxl/tasks/install-deps/redhat/main.yml   |   4 +-
 .../roles/cxl/tasks/install-deps/suse/main.yml     |  28 +-
 playbooks/roles/cxl/tasks/main.yml                 | 113 ++--
 playbooks/roles/devconfig/defaults/main.yml        |  49 +-
 .../roles/devconfig/tasks/check-apt-mirrors.yml    |  48 +-
 .../config-custom-repos-and-packages/main.yml      |   1 +
 .../redhat/main.yml                                |   7 +-
 .../devconfig/tasks/install-deps/debian/main.yml   |  95 +--
 .../roles/devconfig/tasks/install-deps/main.yml    |   8 +-
 .../devconfig/tasks/install-deps/redhat/main.yml   |  36 +-
 .../devconfig/tasks/install-deps/suse/main.yml     | 174 +++---
 .../tasks/kotd-rev-kernel/debian/main.yml          |  16 +-
 .../roles/devconfig/tasks/kotd-rev-kernel/main.yml |  28 +-
 .../tasks/kotd-rev-kernel/redhat/main.yml          |  22 +-
 .../devconfig/tasks/kotd-rev-kernel/suse/main.yml  |  56 +-
 playbooks/roles/devconfig/tasks/main.yml           | 370 ++++++------
 playbooks/roles/fstests/defaults/main.yml          | 262 ++++----
 playbooks/roles/fstests/handlers/main.yml          |   1 +
 .../fstests/tasks/install-deps/debian/main.yml     |  24 +-
 .../roles/fstests/tasks/install-deps/main.yml      |   2 +-
 .../fstests/tasks/install-deps/redhat/main.yml     |  18 +-
 .../roles/fstests/tasks/install-deps/suse/main.yml |  60 +-
 playbooks/roles/fstests/tasks/main.yml             | 665 +++++++++++----------
 .../roles/fstests_prep_localhost/defaults/main.yml |   2 +-
 .../tasks/install-deps/debian/main.yml             |   2 +-
 .../tasks/install-deps/redhat/main.yml             |   8 +-
 .../tasks/install-deps/suse/main.yml               |   8 +-
 .../roles/fstests_prep_localhost/tasks/main.yml    |   8 +-
 playbooks/roles/gen_hosts/defaults/main.yml        |  38 +-
 playbooks/roles/gen_hosts/tasks/main.yml           | 137 ++---
 playbooks/roles/gen_nodes/defaults/main.yml        | 113 ++--
 playbooks/roles/gen_nodes/tasks/main.yml           |  85 +--
 playbooks/roles/gen_pci_kconfig/defaults/main.yml  |   2 +-
 playbooks/roles/gen_tfvars/defaults/main.yml       |   6 +-
 playbooks/roles/gen_tfvars/tasks/main.yml          |  16 +-
 playbooks/roles/gitr/defaults/main.yml             |   4 +-
 .../roles/gitr/tasks/install-deps/debian/main.yml  |   2 +-
 playbooks/roles/gitr/tasks/install-deps/main.yml   |   6 +-
 .../roles/gitr/tasks/install-deps/redhat/main.yml  |   6 +-
 .../roles/gitr/tasks/install-deps/suse/main.yml    |   2 +-
 playbooks/roles/gitr/tasks/main.yml                |  35 +-
 playbooks/roles/guestfs/defaults/main.yml          |   2 +-
 .../guestfs/tasks/bringup/console-permissions.yml  |   4 +-
 playbooks/roles/guestfs/tasks/bringup/main.yml     |   4 +-
 playbooks/roles/guestfs/tasks/bringup/network.yml  |   8 +-
 .../guestfs/tasks/bringup/storage-pool-path.yml    |  10 +-
 .../roles/hypervisor-tuning/defaults/main.yml      |   6 +-
 playbooks/roles/hypervisor-tuning/tasks/main.yml   |  51 +-
 .../install-menuconfig-deps/defaults/main.yml      |   2 +-
 .../tasks/install-deps/debian/main.yml             |  10 +-
 .../tasks/install-deps/fedora/main.yml             |   2 +-
 .../tasks/install-deps/main.yml                    |   4 +-
 .../tasks/install-deps/redhat/main.yml             |   2 +-
 .../tasks/install-deps/suse/main.yml               |   4 +-
 .../roles/install-menuconfig-deps/tasks/main.yml   |   8 +-
 .../defaults/main.yml                              |   4 +-
 .../tasks/install-deps/debian/main.yml             |   2 +-
 .../tasks/install-deps/redhat/main.yml             |   4 +-
 .../tasks/install-deps/suse/main.yml               |   2 +-
 .../install_systemd_journal_remote/tasks/main.yml  |  58 +-
 .../install_systemd_timesyncd/defaults/main.yml    |  10 +-
 .../tasks/install-deps/debian/main.yml             |   2 +-
 .../tasks/install-deps/redhat/main.yml             |   4 +-
 .../tasks/install-deps/suse/main.yml               |   2 +-
 .../roles/install_systemd_timesyncd/tasks/main.yml |  32 +-
 .../roles/install_terraform/defaults/main.yml      |   4 +-
 .../tasks/install-deps/debian/main.yml             |   6 +-
 .../tasks/install-deps/redhat/main.yml             |   6 +-
 .../tasks/install-deps/suse/main.yml               |   8 +-
 playbooks/roles/install_terraform/tasks/main.yml   |   8 +-
 playbooks/roles/iscsi/tasks/add_initiator.yml      |  16 +-
 playbooks/roles/iscsi/tasks/add_lun.yml            |  10 +-
 playbooks/roles/iscsi/tasks/main.yml               |  26 +-
 .../roles/kdc/tasks/install-deps/debian/main.yml   |   4 +-
 .../roles/kdc/tasks/install-deps/redhat/main.yml   |   4 +-
 .../roles/kdc/tasks/install-deps/suse/main.yml     |   2 +-
 playbooks/roles/kdc/tasks/main.yml                 |  40 +-
 playbooks/roles/kdc/vars/RedHat.yml                |   3 +-
 playbooks/roles/kdc/vars/default.yml               |   3 +-
 playbooks/roles/kdevops_archive/defaults/main.yml  |   4 +-
 playbooks/roles/kdevops_archive/tasks/main.yml     |  32 +-
 .../roles/krb5/tasks/install-deps/debian/main.yml  |   4 +-
 .../roles/krb5/tasks/install-deps/redhat/main.yml  |   4 +-
 .../roles/krb5/tasks/install-deps/suse/main.yml    |   4 +-
 playbooks/roles/krb5/tasks/main.yml                |  18 +-
 .../roles/ktls/tasks/install-deps/debian/main.yml  |   4 +-
 .../roles/ktls/tasks/install-deps/redhat/main.yml  |   4 +-
 .../roles/ktls/tasks/install-deps/suse/main.yml    |   2 +-
 playbooks/roles/ktls/tasks/main.yml                |  33 +-
 .../libvirt_pcie_passthrough/defaults/main.yml     |   2 +-
 .../roles/libvirt_pcie_passthrough/tasks/main.yml  |  26 +-
 .../libvirt_storage_pool_create/defaults/main.yml  |   4 +-
 .../libvirt_storage_pool_create/tasks/main.yml     |  48 +-
 playbooks/roles/libvirt_user/defaults/main.yml     |  10 +-
 .../libvirt_user/tasks/enable-user/debian/main.yml |  24 +-
 .../libvirt_user/tasks/enable-user/redhat/main.yml |  20 +-
 .../libvirt_user/tasks/enable-user/suse/main.yml   |  14 +-
 .../tasks/install-deps/debian/main.yml             |  14 +-
 .../tasks/install-deps/fedora/main.yml             |  18 +-
 .../roles/libvirt_user/tasks/install-deps/main.yml |   4 +-
 .../tasks/install-deps/redhat/main.yml             |  10 +-
 .../libvirt_user/tasks/install-deps/suse/main.yml  |  10 +-
 playbooks/roles/libvirt_user/tasks/main.yml        |  16 +-
 playbooks/roles/linux-mirror/defaults/main.yml     |   4 +-
 .../tasks/install-deps/fedora/main.yml             |  10 +-
 playbooks/roles/linux-mirror/tasks/main.yml        | 110 ++--
 playbooks/roles/ltp/defaults/main.yml              |   2 +-
 playbooks/roles/ltp/tasks/main.yml                 |  89 +--
 playbooks/roles/mmtests/defaults/main.yml          |  18 +-
 .../mmtests/tasks/install-deps/debian/main.yml     |  24 +-
 .../mmtests/tasks/install-deps/redhat/main.yml     |  20 +-
 .../roles/mmtests/tasks/install-deps/suse/main.yml |  20 +-
 playbooks/roles/mmtests/tasks/main.yaml            | 124 ++--
 playbooks/roles/mmtests_compare/tasks/main.yml     |  98 +--
 playbooks/roles/monitoring/tasks/main.yml          |  12 +-
 .../roles/monitoring/tasks/monitor_collect.yml     |  49 +-
 .../monitoring/tasks/monitor_collect_only.yml      |  89 +--
 playbooks/roles/monitoring/tasks/monitor_run.yml   |  12 +-
 .../roles/nfsd/tasks/install-deps/debian/main.yml  |  12 +-
 .../roles/nfsd/tasks/install-deps/redhat/main.yml  |  10 +-
 .../roles/nfsd/tasks/install-deps/suse/main.yml    |   8 +-
 playbooks/roles/nfsd/tasks/main.yml                |  44 +-
 playbooks/roles/nfsd_add_export/tasks/main.yml     |  28 +-
 .../roles/nfsd_add_export/tasks/storage/iscsi.yml  |  12 +-
 .../roles/nfsd_add_export/tasks/storage/local.yml  |   8 +-
 .../roles/nfsd_add_export/tasks/storage/tmpfs.yml  |   4 +-
 playbooks/roles/nfstest/defaults/main.yml          |   2 +-
 playbooks/roles/nfstest/tasks/main.yml             |  35 +-
 playbooks/roles/pkg/tasks/debian.yml               |   1 +
 playbooks/roles/pkg/tasks/main.yml                 |   1 -
 .../roles/postfix_relay_host/defaults/main.yml     |   4 +-
 playbooks/roles/postfix_relay_host/tasks/main.yml  |  33 +-
 playbooks/roles/pynfs/defaults/main.yml            |   4 +-
 .../roles/pynfs/tasks/install-deps/debian/main.yml |   6 +-
 .../roles/pynfs/tasks/install-deps/redhat/main.yml |   4 +-
 .../roles/pynfs/tasks/install-deps/suse/main.yml   |   2 +-
 playbooks/roles/pynfs/tasks/main.yml               |  88 +--
 playbooks/roles/reboot-limit/defaults/main.yml     |   4 +-
 .../roles/reboot-limit/tasks/do-reboot-compare.yml |  39 +-
 playbooks/roles/reboot-limit/tasks/do-reboot.yml   |  79 +--
 .../reboot-limit/tasks/handle-reboot-data.yml      |  38 +-
 .../tasks/install-deps/debian/main.yml             |   6 +-
 .../tasks/install-deps/redhat/main.yml             |   6 +-
 .../reboot-limit/tasks/install-deps/suse/main.yml  |   6 +-
 playbooks/roles/reboot-limit/tasks/main.yml        |  84 +--
 playbooks/roles/selftests/defaults/main.yml        |  36 +-
 .../selftests/tasks/install-deps/debian/main.yml   |  10 +-
 .../selftests/tasks/install-deps/redhat/main.yml   |   4 +-
 .../selftests/tasks/install-deps/suse/main.yml     |  28 +-
 playbooks/roles/selftests/tasks/main.yml           | 217 +++----
 playbooks/roles/siw/tasks/main.yml                 |  13 +-
 .../roles/smbd/tasks/install-deps/debian/main.yml  |  12 +-
 .../roles/smbd/tasks/install-deps/redhat/main.yml  |  10 +-
 .../roles/smbd/tasks/install-deps/suse/main.yml    |   8 +-
 playbooks/roles/smbd/tasks/main.yml                |  32 +-
 playbooks/roles/smbd_add_share/tasks/main.yml      |  45 +-
 playbooks/roles/steady_state/defaults/main.yml     |   4 +-
 playbooks/roles/steady_state/tasks/main.yaml       | 126 ++--
 playbooks/roles/sysbench/defaults/main.yml         |  14 +-
 .../sysbench/tasks/install-deps/debian/main.yml    |  34 +-
 .../sysbench/tasks/install-deps/redhat/main.yml    |   4 +-
 .../sysbench/tasks/install-deps/suse/main.yml      |  30 +-
 playbooks/roles/sysbench/tasks/main.yaml           |   8 +-
 .../roles/sysbench/tasks/mysql-docker/main.yaml    | 422 ++++++-------
 .../sysbench/tasks/postgresql-native/main.yaml     | 175 +++---
 playbooks/roles/update_etc_hosts/defaults/main.yml |   3 +-
 playbooks/roles/update_etc_hosts/tasks/main.yml    |  28 +-
 .../roles/update_ssh_config_guestfs/tasks/main.yml |   9 +-
 playbooks/roles/volume_group/tasks/main.yml        |   2 +-
 .../roles/volume_group/tasks/terraform/aws.yml     |   3 +-
 playbooks/update_etc_hosts.yml                     |   2 +-
 225 files changed, 3392 insertions(+), 3429 deletions(-)

diff --git a/playbooks/devconfig.yml b/playbooks/devconfig.yml
index b0b9d420..cebaa87a 100644
--- a/playbooks/devconfig.yml
+++ b/playbooks/devconfig.yml
@@ -1,6 +1,6 @@
 ---
 - name: Configure developer environment on target systems
   hosts: baseline:dev
-  gather_facts: no
+  gather_facts: false
   roles:
     - role: devconfig
diff --git a/playbooks/monitor-results.yml b/playbooks/monitor-results.yml
index 30993253..1fbb469f 100644
--- a/playbooks/monitor-results.yml
+++ b/playbooks/monitor-results.yml
@@ -1,17 +1,17 @@
 ---
 - hosts: all
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   tasks:
     - name: Import optional extra_args file
       include_vars: "{{ item }}"
-      ignore_errors: yes
+      ignore_errors: true
       with_first_found:
         - files:
-          - "../extra_vars.yml"
-          - "../extra_vars.yaml"
-          - "../extra_vars.json"
+            - "../extra_vars.yml"
+            - "../extra_vars.yaml"
+            - "../extra_vars.json"
           skip: true
       tags: vars
 
@@ -21,4 +21,4 @@
         tasks_from: monitor_collect_only
       when:
         - enable_monitoring|default(false)|bool
-      tags: [ 'monitoring', 'monitor_collect' ]
+      tags: ["monitoring", "monitor_collect"]
diff --git a/playbooks/roles/ansible_cfg/tasks/main.yml b/playbooks/roles/ansible_cfg/tasks/main.yml
index c2b0db10..0ff0e456 100644
--- a/playbooks/roles/ansible_cfg/tasks/main.yml
+++ b/playbooks/roles/ansible_cfg/tasks/main.yml
@@ -15,10 +15,10 @@
   ansible.builtin.template:
     src: "ansible.cfg.j2"
     dest: "{{ ansible_cfg_file }}"
-    mode: '0755'
+    mode: "0755"
 
 - name: Update ansible.cfg access modification time so make sees it updated
   ansible.builtin.file:
     path: "{{ topdir_path }}/ansible.cfg"
     state: touch
-    mode: '0755'
+    mode: "0755"
diff --git a/playbooks/roles/blktests/defaults/main.yml b/playbooks/roles/blktests/defaults/main.yml
index 8c50bf6d..70544242 100644
--- a/playbooks/roles/blktests/defaults/main.yml
+++ b/playbooks/roles/blktests/defaults/main.yml
@@ -3,9 +3,9 @@
 # Our sensible defaults for the blktests role.
 #
 # We default to not run tests.
-kdevops_run_blktests: False
-run_tests_on_failures: False
-blktests_skip_run: False
+kdevops_run_blktests: false
+run_tests_on_failures: false
+blktests_skip_run: false
 
 # Ror instance you can use "-g quick" but note that this may produce
 # not results as all quick tests may be expunded.
@@ -21,5 +21,5 @@ nbd_git: "https://github.com/NetworkBlockDevice/nbd.git"
 nbd_version: "nbd-3.21"
 nbd_data: "{{data_path}}/nbd"
 
-compile_dbench: False
+compile_dbench: false
 blktests_dbench_git: "https://github.com/linux-kdevops/dbench.git"
diff --git a/playbooks/roles/blktests/handlers/main.yml b/playbooks/roles/blktests/handlers/main.yml
index 0b2342d2..5179f319 100644
--- a/playbooks/roles/blktests/handlers/main.yml
+++ b/playbooks/roles/blktests/handlers/main.yml
@@ -1,3 +1,4 @@
+---
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
   service: name="{{watchdog_service_name}}" state=restarted
diff --git a/playbooks/roles/blktests/tasks/install-deps/debian/main.yml b/playbooks/roles/blktests/tasks/install-deps/debian/main.yml
index 4afa429f..7e9f7bd3 100644
--- a/playbooks/roles/blktests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/debian/main.yml
@@ -1,21 +1,21 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: linux
 
 - name: Install nvme tools
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
       - nvme-cli
-    update_cache: yes
+    update_cache: true
 
 - name: Install blktests build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -65,5 +65,5 @@
       - libnl-utils
       - zlib1g-dev
     state: present
-    update_cache: yes
-  tags: [ 'blktests', 'deps' ]
+    update_cache: true
+  tags: ["blktests", "deps"]
diff --git a/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml b/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml
index 3b321e73..0002817f 100644
--- a/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install build dependencies for blktests
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   vars:
     packages:
diff --git a/playbooks/roles/blktests/tasks/install-deps/suse/main.yml b/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
index 22c92539..1c67d710 100644
--- a/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
@@ -25,19 +25,19 @@
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle12sp5: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle15sp2: False
-    is_sle15sp3: False
-    is_sle15sp4: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle12sp5: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle15sp2: false
+    is_sle15sp3: false
+    is_sle15sp4: false
   when:
     - not is_sle|bool
 
@@ -64,7 +64,7 @@
     - is_sle10|bool or is_sle11|bool or is_sle12sp1|bool
 
 - name: Install NVMe tools
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -75,7 +75,7 @@
     - not lacks_nvme_utils|bool
 
 - name: Install build dependencies for blktests
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -120,7 +120,7 @@
     - repos_present|bool
 
 - name: Install tumblweed packages
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -131,7 +131,7 @@
     - is_tumbleweed|bool
 
 - name: Install leap packages
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -143,7 +143,7 @@
     - is_tumbleweed|bool
 
 - name: Install libgdbm4
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -156,7 +156,7 @@
 # to find way to get autoconf-archive for sles15sp4
 # as it is required...
 - name: Install autoconf-archive for building nbd
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -168,16 +168,16 @@
 
 - name: The default is to assume we do not want to add the benchmark repo
   set_fact:
-    add_benchmark_repo: False
+    add_benchmark_repo: false
 
 - name: Does this release require the benchmark repo
   set_fact:
-    add_benchmark_repo: True
+    add_benchmark_repo: true
   when:
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool or is_sle12sp5|bool
 
 - name: Add benchmark sles12sp5 opensuse repo when needed
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_12_SP5/ benchmark benchmark"
@@ -185,7 +185,7 @@
     - is_sle12sp5|bool
 
 - name: Add benchmark sles15sp2 opensuse repo when needed
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP2/ benchmark benchmark"
@@ -193,7 +193,7 @@
     - is_sle15sp2|bool
 
 - name: Add benchmark sles15sp3 opensuse repo when needed
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP3/ benchmark benchmark"
@@ -201,7 +201,7 @@
     - is_sle15sp3|bool or is_sle15sp4|bool
 
 - name: Install dbench when needed
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -212,16 +212,16 @@
 
 - name: The default is to assume we do not want to to compile nbd manually
   set_fact:
-    compile_nbd: False
+    compile_nbd: false
 
 - name: Set when we need to compile nbd
   set_fact:
-    compile_nbd: True
+    compile_nbd: true
   when:
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool or is_leap|bool
 
 - name: Install build dependencies for nbd
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -235,12 +235,12 @@
   git:
     repo: "{{ nbd_git }}"
     dest: "{{ nbd_data }}"
-    update: yes
+    update: true
     version: "{{ nbd_version }}"
   when:
     - repos_present|bool
     - compile_nbd|bool
-  tags: [ 'git', 'blktests', 'nbd' ]
+  tags: ["git", "blktests", "nbd"]
 
 - name: Skip documentation for nbd as we lack the requirement of docbook2man
   file:
@@ -254,39 +254,39 @@
     - "nbdtab.5.sh.in"
   loop_control:
     label: "Faking generation of documentation for nbd{{ item }}"
-  tags: [ 'blktests', 'nbd' ]
+  tags: ["blktests", "nbd"]
   when:
     - repos_present|bool
     - compile_nbd|bool
 
 - name: Run autogen for nbd
   command: "./autogen.sh"
-  tags: [ 'blktests', 'nbd' ]
+  tags: ["blktests", "nbd"]
   args:
     chdir: "{{ nbd_data }}"
 
 - name: Run configure for nbd
   command: "./configure"
-  tags: [ 'blktests', 'nbd' ]
+  tags: ["blktests", "nbd"]
   args:
     chdir: "{{ nbd_data }}"
 
 - name: Get nproc
   command: "{{ num_jobs }}"
-  tags: [ 'git', 'blktests', 'nbd' ]
+  tags: ["git", "blktests", "nbd"]
   register: nproc
 
 - name: Build nbd
-  tags: [ 'git', 'blktests', 'nbd' ]
+  tags: ["git", "blktests", "nbd"]
   make:
     chdir: "{{ nbd_data }}"
     jobs: "{{ nproc.stdout }}"
 
 - name: Install nbd
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{  make }} install"
-  tags: [ 'git', 'blktests', 'nbd' ]
+  tags: ["git", "blktests", "nbd"]
   args:
     chdir: "{{ nbd_data }}"
diff --git a/playbooks/roles/blktests/tasks/main.yml b/playbooks/roles/blktests/tasks/main.yml
index 7ca492c9..254d7096 100644
--- a/playbooks/roles/blktests/tasks/main.yml
+++ b/playbooks/roles/blktests/tasks/main.yml
@@ -1,37 +1,37 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - include_role:
     name: create_data_partition
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
 
 # Distro specific
 - include_tasks: install-deps/main.yml
 
 - name: git clone kdevops
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
-    update: yes
+    update: true
     version: main
-  tags: [ 'install', 'git']
+  tags: ["install", "git"]
 
 - name: Copy over our .config
   copy:
     src: "{{ playbook_dir }}/../.config"
     dest: "{{ kdevops_dir }}"
-  tags: [ 'install', 'root', 'config']
+  tags: ["install", "root", "config"]
 
 # We do this *after* the /data/ partition is set up so
 # we can house the dbench source code there and so that
@@ -43,89 +43,89 @@
   vars:
     dbench_data: "{{ data_path }}/dbench"
     dbench_git: "{{ blktests_dbench_git }}"
-  tags: [ 'oscheck', 'git', 'dbench']
+  tags: ["oscheck", "git", "dbench"]
 
 - name: Remove any old blktrace as we always clone a fresh tree
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ blktrace_data }}"
     state: absent
-  tags: [ 'git', 'blktests', 'blktrace' ]
+  tags: ["git", "blktests", "blktrace"]
 
 - name: git clone blktrace
   git:
     repo: "{{ blktrace_git }}"
     dest: "{{ blktrace_data }}"
-    update: yes
+    update: true
     version: master
-  tags: [ 'git', 'blktests', 'blktrace' ]
+  tags: ["git", "blktests", "blktrace"]
 
 - name: Get nproc
   command: "{{ num_jobs }}"
-  tags: [ 'blktests', 'build', 'bltkrace' ]
+  tags: ["blktests", "build", "bltkrace"]
   register: nproc
 
 - name: Build blktrace
-  tags: [ 'blktests', 'build', 'bltkrace' ]
+  tags: ["blktests", "build", "bltkrace"]
   make:
     chdir: "{{ blktrace_data }}"
     jobs: "{{ nproc.stdout }}"
 
 - name: Install blktrace
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{  make }} install"
-  tags: [ 'blktests', 'install', 'root', 'blktrace' ]
+  tags: ["blktests", "install", "root", "blktrace"]
   args:
     chdir: "{{ blktrace_data }}"
 
 - name: Remove any old blktets as we always clone a fresh tree
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ blktests_data }}"
     state: absent
-  tags: [ 'git', 'blktests']
+  tags: ["git", "blktests"]
 
 - name: git clone blktests
   git:
     repo: "{{ blktests_git }}"
     dest: "{{ blktests_data }}"
-    update: yes
+    update: true
     version: master
-  tags: [ 'git', 'blktests']
+  tags: ["git", "blktests"]
 
 - name: Build blktests
-  tags: [ 'blktests', 'build']
+  tags: ["blktests", "build"]
   make:
     chdir: "{{ blktests_data }}"
     jobs: "{{ nproc.stdout }}"
 
 - name: Install blktests
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{  make }} install"
-  tags: [ 'blktests', 'install', 'root']
+  tags: ["blktests", "install", "root"]
   args:
     chdir: "{{ blktests_data }}"
 
 - name: git pull latest kdevops to ensure expunge list is up to date
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
-    update: yes
+    update: true
     version: main
-  tags: [ 'install', 'git', 'git_update', 'run_tests' ]
+  tags: ["install", "git", "git_update", "run_tests"]
 
 - name: Create a symbolic links needed
-  become: yes
+  become: true
   become_method: sudo
   file:
     src: "{{ kdevops_dir }}/workflows/blktests/scripts/{{ item }}"
@@ -135,20 +135,20 @@
     - "oscheck.sh"
   loop_control:
     label: "{{ item }}"
-  tags: [ 'blktests', 'install' ]
+  tags: ["blktests", "install"]
 
 - name: Disable multipathd service for srp blktests tests
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: multipathd
-    enabled: no
+    enabled: false
     state: stopped
   tags: multipathd
 
 - name: Reboot system before our test so we know everything is sane
-  tags: [ 'blktests', 'run_tests', 'reboot' ]
-  become: yes
+  tags: ["blktests", "run_tests", "reboot"]
+  become: true
   become_method: sudo
   reboot:
     post_reboot_delay: 10
@@ -156,36 +156,36 @@
 - name: Set the path to blktests workflow
   set_fact:
     blktests_workflow_target: "../workflows/blktests/"
-  tags: [ 'blktests', 'run_tests', 'copy_results', 'prior_run', 'print_results' , 'augment_expunge_list' ]
+  tags: ["blktests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Set the path where we collect our blktests results
   set_fact:
     blktests_results_target: "../workflows/blktests/results/"
     blktests_results_full_path: "{{ topdir_path }}/workflows/blktests/results/"
-  tags: [ 'blktests', 'run_tests', 'copy_results', 'prior_run', 'print_results' , 'augment_expunge_list' ]
+  tags: ["blktests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Set the path where we collect blktests expunges
   set_fact:
     blktests_expunges_target: "../workflows/blktests/expunges/"
-  tags: [ 'blktests', 'run_tests', 'copy_results', 'prior_run', 'print_results' , 'augment_expunge_list' ]
+  tags: ["blktests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Print uname for each host
-  tags: [ 'blktests', 'run_tests' ]
+  tags: ["blktests", "run_tests"]
   debug: var=ansible_kernel
 
 - name: Get used target kernel version
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Create {{ blktests_results_target }} if it does not exist
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ blktests_results_target }}"
@@ -193,27 +193,28 @@
   run_once: true
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ blktests_results_target }}/last-kernel.txt"
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  shell: echo {{ last_kernel }} > {{ blktests_results_target }}/last-kernel.txt
+  delegate_to: localhost
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Load configfs module
-  tags: [ 'blktests', 'run_tests', 'configfs' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["blktests", "run_tests", "configfs"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "modprobe configfs"
   when:
     - kdevops_run_blktests|bool
 
 - name: Clear out old results directory on target hosts
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     state: absent
     path: "{{ blktests_data_target }}/results/"
-  tags: [ 'blktests', 'run_tests', 'clean_results' ]
+  tags: ["blktests", "run_tests", "clean_results"]
 
 - name: Verify target test devices are defined
   fail:
@@ -221,21 +222,21 @@
   when:
     - kdevops_run_blktests|bool
     - blktests_test_devs is not defined
-  tags: [ 'blktests', 'run_tests' ]
+  tags: ["blktests", "run_tests"]
 
 - name: Verify target test device is not /dev/null
   fail:
     msg: "The variable blktests_test_devs must not be /dev/null"
   when:
     - blktests_test_devs == "/dev/null"
-  tags: [ 'blktests', 'run_tests' ]
+  tags: ["blktests", "run_tests"]
 
 - name: Verify target test devices exist {{ blktests_test_devs }}
   vars:
     verify_dev_list: "{{ blktests_test_devs | regex_replace(' ', ' -a -e ') }}"
-  tags: [ 'blktests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["blktests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "test -e {{ verify_dev_list }}"
   when:
@@ -245,9 +246,9 @@
 - name: Verify target test devices are block devices {{ blktests_test_devs }}
   vars:
     verify_dev_list: "{{ blktests_test_devs | regex_replace(' ', ' -a -b ') }}"
-  tags: [ 'blktests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["blktests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "test -b {{ verify_dev_list }}"
   when:
@@ -256,22 +257,23 @@
     - blktests_test_devs|length != 0
 
 - name: Hint to watchdog tests are about to kick off
-  local_action: file path="{{ blktests_workflow_target }}/.begin" state=touch
-  tags: [ 'blktests', 'run_tests' ]
+  file: path="{{ blktests_workflow_target }}/.begin" state=touch
+  delegate_to: localhost
+  tags: ["blktests", "run_tests"]
   when:
     - kdevops_run_blktests|bool
   run_once: true
 
 - name: Enable low-level messages on console
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: sysctl kernel.printk="8 8 1 7"
 
 - name: Check to see if dynamic test limit scope was set
   set_fact:
     dynamic_limit_tests: "{{ lookup('ansible.builtin.env', 'LIMIT_TESTS') }}"
-  tags: [ 'blktests', 'run_tests', 'limit-tests' ]
+  tags: ["blktests", "run_tests", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_blktests|bool
@@ -279,7 +281,7 @@
 - name: Allow dynamic test override
   set_fact:
     all_limit_tests: "{{ dynamic_limit_tests }}"
-  tags: [ 'blktests', 'run_tests', 'limit-tests' ]
+  tags: ["blktests", "run_tests", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_blktests|bool
@@ -290,7 +292,7 @@
 - name: Empty out test limit if None is set
   set_fact:
     all_limit_tests: ""
-  tags: [ 'blktests', 'run_tests', 'limit-tests' ]
+  tags: ["blktests", "run_tests", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_blktests|bool
@@ -300,7 +302,7 @@
 - name: Empty out test no limits have been set
   set_fact:
     all_limit_tests: ""
-  tags: [ 'blktests', 'run_tests', 'limit-tests' ]
+  tags: ["blktests", "run_tests", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_blktests|bool
@@ -309,7 +311,7 @@
 - name: Run oscheck-get-failures.sh to get list of known failed tests
   vars:
     group: "{{ ansible_host | regex_replace('blktests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
-  tags: [ 'blktests', 'run_tests' ]
+  tags: ["blktests", "run_tests"]
   command: "{{ kdevops_data }}/workflows/blktests/scripts/oscheck-get-failures.sh --test-group {{ group }}"
   args:
     chdir: "{{ blktests_data_target }}"
@@ -321,7 +323,7 @@
 - name: Inform user no failures are known
   fail:
     msg: "No known failures for this run! Go find bugs!"
-  tags: [ 'blktests', 'run_tests' ]
+  tags: ["blktests", "run_tests"]
   when:
     - run_tests_on_failures|bool
     - kdevops_run_blktests|bool
@@ -330,7 +332,7 @@
 - name: Set test limit to known failed tests
   set_fact:
     all_limit_tests: "{{ failed_tests_limit.stdout | replace('\n', ' ') }}"
-  tags: [ 'blktests', 'run_tests' ]
+  tags: ["blktests", "run_tests"]
   when:
     - run_tests_on_failures|bool
     - kdevops_run_blktests|bool
@@ -338,7 +340,7 @@
 - name: Print list of test limits for this run
   debug:
     msg: "all_limit_tests: {{ all_limit_tests }}"
-  tags: [ 'blktests', 'run_tests', 'limit-tests' ]
+  tags: ["blktests", "run_tests", "limit-tests"]
   when:
     - kdevops_run_blktests|bool
     - all_limit_tests is defined
@@ -347,20 +349,20 @@
 
 - name: Stop blktests if we're debbugging limit_tests
   ansible.builtin.meta: end_play
-  tags: [ 'blktests', 'run_tests' ]
+  tags: ["blktests", "run_tests"]
   when:
     - blktests_skip_run|bool
 
 - name: Run blktests using oscheck.sh
   vars:
     group: "{{ ansible_host | regex_replace('blktests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
-  tags: [ 'blktests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["blktests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "./oscheck.sh --print-start --print-done --test-group {{ group }} {{ oscheck_extra_args }} {{ all_limit_tests }}"
-  ignore_errors: yes
-  no_log: True
+  ignore_errors: true
+  no_log: true
   args:
     chdir: "{{ blktests_data_target }}"
   environment:
@@ -370,41 +372,43 @@
     - kdevops_run_blktests|bool
 
 - name: Remove watchdog hint that tests have started
-  local_action: file path="{{ blktests_workflow_target }}/.begin" state=absent
-  tags: [ 'blktests', 'run_tests' ]
+  file: path="{{ blktests_workflow_target }}/.begin" state=absent
+  delegate_to: localhost
+  tags: ["blktests", "run_tests"]
   when:
     - kdevops_run_blktests|bool
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ blktests_results_target }}/{{ item }}" state=absent
+  file: path="{{ blktests_results_target }}/{{ item }}" state=absent
+  delegate_to: localhost
   with_items:
     - "last-run"
   loop_control:
     label: "{{ item }}"
   run_once: true
-  tags: [ 'blktests', 'copy_results', 'clean_local_results' ]
+  tags: ["blktests", "copy_results", "clean_local_results"]
 
 - name: Look for results for the last run
-  tags: [ 'blktests', 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["blktests", "copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ blktests_data_target }}/results/"
-    recurse: yes
+    recurse: true
     patterns: "*"
   register: last_run_results
 
 - name: Copy all test results
-  tags: [ 'blktests', 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["blktests", "copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   fetch:
     src: "{{ item.path }}"
     dest: "{{ blktests_results_target }}/last-run/{{ item.path | regex_replace(blktests_data_target + 'results/' | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
+    flat: true
   with_items: "{{ last_run_results.files }}"
   loop_control:
     label: "{{ item.path | regex_replace(blktests_data_target + 'results/' | regex_escape()) | regex_replace('^/', '') }}"
@@ -412,33 +416,37 @@
     - last_run_results.matched > 0
 
 - name: Augment expunge list just run git diff after this to see new failures found
-  local_action: "shell ./python/workflows/blktests/augment_expunge_list.py {{ blktests_results_target }}/last-run/ {{ blktests_expunges_target }}"
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/blktests/augment_expunge_list.py {{ blktests_results_target }}/last-run/ {{ blktests_expunges_target }}
+  delegate_to: localhost
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Copy last-run files to results directory for target kernel and in place only bad and dmesg files
-  local_action: "shell ./python/workflows/blktests/gen-results-dir.py"
-  tags: [ 'blktests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/blktests/gen-results-dir.py
+  delegate_to: localhost
+  tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
   when:
     - not blktests_results_all
 
 - name: Copy all last-run files to results directory for full results
-  local_action: "shell ./python/workflows/blktests/gen-results-dir.py --copy-all"
-  tags: [ 'blktests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/blktests/gen-results-dir.py --copy-all
+  delegate_to: localhost
+  tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
   when:
     - blktests_results_all | bool
 
 - name: Print blktests new expunge files for which are not yet committed
-  local_action: "shell ./python/workflows/blktests/get_new_expunge_files.py {{ blktests_expunges_target }}"
+  shell: ./python/workflows/blktests/get_new_expunge_files.py {{ blktests_expunges_target }}
+  delegate_to: localhost
   register: new_expunges
-  tags: [ 'blktests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
 
 - name: Inform user if new expunge files have been found
   run_once: true
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   debug:
     msg: "New expunge files found: {{ new_expunges.stdout_lines }}"
   when:
@@ -451,14 +459,14 @@
   register: result_dir_check
   delegate_to: localhost
   run_once: true
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
 
 - name: Inform user if results directory is empty
   debug:
     msg: "Skipping compression: {{ blktests_results_full_path }}/{{ last_kernel }} is empty."
   when: result_dir_check.matched == 0
   run_once: true
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   delegate_to: localhost
 
 # You are encouraged to commit the compressed results of failed tests
@@ -470,5 +478,5 @@
     format: xz
   when: result_dir_check.matched != 0
   run_once: true
-  tags: [ 'blktests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["blktests", "copy_results", "augment_expunge_list"]
   delegate_to: localhost
diff --git a/playbooks/roles/bootlinux/defaults/main.yml b/playbooks/roles/bootlinux/defaults/main.yml
index bbb85f00..84b61b8e 100644
--- a/playbooks/roles/bootlinux/defaults/main.yml
+++ b/playbooks/roles/bootlinux/defaults/main.yml
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-kdevops_bootlinux: False
-infer_uid_and_group: False
+kdevops_bootlinux: false
+infer_uid_and_group: false
 
 data_path: "/data"
 data_user: "root"
@@ -19,7 +19,7 @@ target_linux_git: "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.
 target_linux_shallow_depth: 0
 target_linux_tree: "linux-stable"
 target_linux_dir_path: "{{ data_path }}/{{ target_linux_tree }}"
-kdevops_baseline_and_dev: False
+kdevops_baseline_and_dev: false
 
 target_linux_ref: "v4.19.133"
 target_linux_delta_file:
@@ -33,36 +33,36 @@ make: "make"
 target_linux_make_cmd: "{{ make }} -j{{ ansible_processor_vcpus }}"
 target_linux_make_install_cmd: "{{ target_linux_make_cmd }} modules_install install"
 
-uninstall_kernel_enable: False
+uninstall_kernel_enable: false
 
 # If defined we'll apply this delta for you.
 # target_linux_extra_patch: foo.patch
 
-bootlinux_b4_am_this_host: False
+bootlinux_b4_am_this_host: false
 
-bootlinux_9p: False
+bootlinux_9p: false
 bootlinux_targets: false
 bootlinux_builder: false
 
-kdevops_workflow_enable_cxl: False
+kdevops_workflow_enable_cxl: false
 
-bootlinux_cxl_test: False
-bootlinux_tree_set_by_cli: False
+bootlinux_cxl_test: false
+bootlinux_tree_set_by_cli: false
 
 bootlinux_artifacts_dir: "{{ topdir_path }}/workflows/linux/artifacts"
 kernel_packages: []
 workflow_linux_packaged: false
 
 # A/B testing defaults
-bootlinux_ab_same_ref: True
-bootlinux_ab_different_ref: False
+bootlinux_ab_same_ref: true
+bootlinux_ab_different_ref: false
 
 # Development kernel settings (used when bootlinux_ab_different_ref is True)
 bootlinux_dev_tree: ""
 target_linux_dev_ref: "master"
 target_linux_dev_kernelrelease: ""
 target_linux_dev_localversion: ""
-bootlinux_tree_custom_kernelrelease: False
+bootlinux_tree_custom_kernelrelease: false
 bootlinux_tree_custom_localversion: false
-bootlinux_is_dev_node: False
+bootlinux_is_dev_node: false
 bootlinux_debug_ref: "{{ lookup('env', 'DEBUG_REF') | default(false, true) | bool }}"
diff --git a/playbooks/roles/bootlinux/tasks/build/9p.yml b/playbooks/roles/bootlinux/tasks/build/9p.yml
index ed954483..b2b52b30 100644
--- a/playbooks/roles/bootlinux/tasks/build/9p.yml
+++ b/playbooks/roles/bootlinux/tasks/build/9p.yml
@@ -6,7 +6,7 @@
     file: install-deps/main.yml
 
 - name: Install b4 on host
-  become: yes
+  become: true
   become_method: sudo
   pip:
     name:
@@ -20,7 +20,7 @@
 
 - name: Add safe exception for a clone
   command: "git config --global --add safe.directory {{ target_linux_git }}"
-  tags: [ 'clone']
+  tags: ["clone"]
   when:
     - target_linux_git is string and target_linux_git.startswith('/')
   run_once: true
@@ -48,14 +48,14 @@
   git:
     repo: "{{ target_linux_git }}"
     dest: "{{ bootlinux_9p_host_path }}"
-    update: yes
+    update: true
     depth: "{{ target_linux_shallow_depth }}"
     version: "{{ active_linux_ref | default(target_linux_ref) }}"
   retries: 3
   delay: 5
   register: result
   until: not result.failed
-  tags: [ 'clone']
+  tags: ["clone"]
   when:
     - not bootlinux_tree_set_by_cli|bool
   run_once: true
@@ -65,7 +65,7 @@
   template:
     src: "{{ target_linux_extra_patch }}"
     dest: "{{ bootlinux_9p_host_path }}/{{ target_linux_extra_patch }}"
-    mode: 0644
+    mode: "0644"
   when:
     - target_linux_extra_patch is defined
   run_once: true
@@ -101,7 +101,7 @@
   template:
     src: "{{ linux_config }}"
     dest: "{{ bootlinux_9p_host_path }}/.config"
-    mode: 0644
+    mode: "0644"
   run_once: true
   delegate_to: localhost
 
@@ -127,7 +127,7 @@
 
 - name: Get nproc on the control node
   command: "{{ num_jobs }}"
-  tags: [ 'build-linux', 'cxl-build' ]
+  tags: ["build-linux", "cxl-build"]
   register: nproc_9p
   run_once: true
   delegate_to: localhost
@@ -137,7 +137,7 @@
     chdir: "{{ bootlinux_9p_host_path }}"
     target: kernelversion
   register: target_linux_kernelversion
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
   when:
     - (active_linux_kernelrelease | default(target_linux_kernelrelease)) | length > 0
   run_once: true
@@ -146,7 +146,7 @@
 - name: Generate user kernelrelease {{ target_linux_kernelversion.stdout | default('') }}-{{ active_linux_kernelrelease | default(target_linux_kernelrelease) }}
   set_fact:
     target_user_kernelrelease: "{{ target_linux_kernelversion.stdout }}-{{ active_linux_kernelrelease | default(target_linux_kernelrelease) }}"
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
   when:
     - (active_linux_kernelrelease | default(target_linux_kernelrelease)) | length > 0
   run_once: true
@@ -156,9 +156,8 @@
   make:
     jobs: "{{ nproc_9p.stdout }}"
     chdir: "{{ bootlinux_9p_host_path }}"
-    params:
-      KERNELRELEASE={{ target_user_kernelrelease }}
-  tags: [ 'build-linux' ]
+    params: KERNELRELEASE={{ target_user_kernelrelease }}
+  tags: ["build-linux"]
   when:
     - (active_linux_kernelrelease | default(target_linux_kernelrelease)) | length > 0
   run_once: true
@@ -168,7 +167,7 @@
   make:
     jobs: "{{ nproc_9p.stdout }}"
     chdir: "{{ bootlinux_9p_host_path }}"
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
   when:
     - (active_linux_kernelrelease | default(target_linux_kernelrelease)) | length == 0
   run_once: true
@@ -180,7 +179,7 @@
     chdir: "{{ bootlinux_9p_host_path }}"
     params:
       M: "tools/testing/cxl"
-  tags: [ 'build-linux', 'cxl-build' ]
+  tags: ["build-linux", "cxl-build"]
   when:
     - bootlinux_cxl_test|bool
   run_once: true
@@ -190,7 +189,7 @@
   stat:
     path: "{{ bootlinux_9p_host_path }}/certs/signing_key.pem"
   register: snaik_oil_file_9p
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
   run_once: true
   delegate_to: localhost
 
@@ -198,7 +197,7 @@
   file:
     path: "{{ bootlinux_9p_host_path }}/certs/signing_key.pem"
     mode: "0755"
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
   when:
     - snaik_oil_file_9p.stat.exists
   run_once: true
diff --git a/playbooks/roles/bootlinux/tasks/build/builder.yml b/playbooks/roles/bootlinux/tasks/build/builder.yml
index c4c4b950..9ab73bf7 100644
--- a/playbooks/roles/bootlinux/tasks/build/builder.yml
+++ b/playbooks/roles/bootlinux/tasks/build/builder.yml
@@ -214,7 +214,7 @@
         jobs: "{{ ansible_processor_nproc }}"
         target: "binrpm-pkg"
         params:
-          RPMOPTS: '--without devel'
+          RPMOPTS: "--without devel"
       when:
         - bootlinux_compiler_gcc|bool
 
@@ -224,7 +224,7 @@
         jobs: "{{ ansible_processor_nproc }}"
         target: "binrpm-pkg"
         params:
-          RPMOPTS: '--without devel'
+          RPMOPTS: "--without devel"
           LLVM: 1
       when:
         - bootlinux_compiler_clang|bool
diff --git a/playbooks/roles/bootlinux/tasks/build/targets.yml b/playbooks/roles/bootlinux/tasks/build/targets.yml
index 36339876..24b2662d 100644
--- a/playbooks/roles/bootlinux/tasks/build/targets.yml
+++ b/playbooks/roles/bootlinux/tasks/build/targets.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install b4
-  become: yes
+  become: true
   become_method: sudo
   pip:
     name:
@@ -14,14 +14,14 @@
   git:
     repo: "{{ target_linux_git }}"
     dest: "{{ target_linux_dir_path }}"
-    update: yes
+    update: true
     depth: "{{ target_linux_shallow_depth }}"
     version: "{{ target_linux_ref }}"
   retries: 3
   delay: 5
   register: result
   until: not result.failed
-  tags: [ 'clone']
+  tags: ["clone"]
 
 - name: Copy kernel delta if requested on the target nodes
   template:
@@ -29,7 +29,7 @@
     dest: "{{ target_linux_dir_path }}/{{ target_linux_extra_patch }}"
     owner: "{{ data_user }}"
     group: "{{ data_group }}"
-    mode: 0644
+    mode: "0644"
   when:
     - target_linux_extra_patch is defined
 
@@ -74,7 +74,7 @@
     dest: "{{ target_linux_dir_path }}/.config"
     owner: "{{ data_user }}"
     group: "{{ data_group }}"
-    mode: 0644
+    mode: "0644"
 
 - name: Set kernel localversion if requested on the target nodes
   shell: "echo {{ target_linux_localversion }} > {{ target_linux_dir_path }}/localversion"
@@ -98,7 +98,7 @@
   changed_when: "build.rc == 0"
   args:
     chdir: "{{ target_linux_dir_path }}"
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
 
 - name: Build {{ target_linux_tree }} cxl_test on the target nodes
   command: "{{ target_linux_make_cmd }} M=tools/testing/cxl"
@@ -106,7 +106,7 @@
   changed_when: "build_cxl_test.rc == 0"
   args:
     chdir: "{{ target_linux_dir_path }}"
-  tags: [ 'build-linux', 'cxl-build' ]
+  tags: ["build-linux", "cxl-build"]
   when:
     - bootlinux_cxl_test|bool
 
@@ -114,12 +114,12 @@
   stat:
     path: "{{ target_linux_dir_path }}/certs/signing_key.pem"
   register: snaik_oil_file
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
 
 - name: Ensure we allow world to read the snake oil in case of NFS or 9p read only usage
   file:
     path: "{{ target_linux_dir_path }}/certs/signing_key.pem"
     mode: "0755"
-  tags: [ 'build-linux' ]
+  tags: ["build-linux"]
   when:
     - snaik_oil_file.stat.exists
diff --git a/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml b/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml
index dd1e53da..6df6ce09 100644
--- a/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 # Install dependencies for building linux on Debian
 
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
 
 # apt-get build-dep does not capture all requirements
 - name: Install Linux kernel build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
diff --git a/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml b/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml
index dc4a5433..6b4a2715 100644
--- a/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml
@@ -6,10 +6,10 @@
     - ansible_distribution != "Fedora"
 
 - name: Install packages we care about
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
@@ -54,10 +54,10 @@
       - zstd
 
 - name: Install btrfs-progs
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
@@ -103,7 +103,7 @@
     - bootlinux_builder|bool
 
 - name: Remove packages that mess with initramfs
-  become: yes
+  become: true
   become_method: sudo
   yum:
     state: absent
diff --git a/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml b/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml
index 204a181b..5f7ddefc 100644
--- a/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install Linux kernel build dependencies for SUSE sources
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -28,4 +28,4 @@
       - portmap
       - hwinfo
       - open-iscsi
-    disable_recommends: no
+    disable_recommends: false
diff --git a/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml b/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml
index 32ff0a61..7e1fcb70 100644
--- a/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml
@@ -3,7 +3,7 @@
 # This is used when bootlinux_9p is enabled and the build happens on the host
 
 - name: Update apt cache accepting release info changes
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command:
     cmd: apt-get update --allow-releaseinfo-change
@@ -11,13 +11,13 @@
   ignore_errors: true
 
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
 
 - name: Install minimal build tools for kernel installation
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
diff --git a/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml b/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml
index e077f5e8..8c5cef46 100644
--- a/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml
@@ -3,7 +3,7 @@
 # This is used when bootlinux_9p is enabled and the build happens on the host
 
 - name: Install minimal build tools for kernel installation
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name:
@@ -15,7 +15,7 @@
     - ansible_facts['distribution_major_version']|int < 8
 
 - name: Install minimal build tools for kernel installation (dnf)
-  become: yes
+  become: true
   become_method: sudo
   dnf:
     name:
diff --git a/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml b/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml
index ce73ddd1..f2f0b8f9 100644
--- a/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml
@@ -3,7 +3,7 @@
 # This is used when bootlinux_9p is enabled and the build happens on the host
 
 - name: Install minimal build tools for kernel installation
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
diff --git a/playbooks/roles/bootlinux/tasks/main.yml b/playbooks/roles/bootlinux/tasks/main.yml
index 769bd100..90a90711 100644
--- a/playbooks/roles/bootlinux/tasks/main.yml
+++ b/playbooks/roles/bootlinux/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -34,7 +34,7 @@
 
 # We do this regardless of what distro you use
 - name: Install b4
-  become: yes
+  become: true
   become_method: sudo
   pip:
     name:
@@ -54,7 +54,7 @@
 
 - name: Enable b4 am all hosts if not deploying dev and baseline nodes
   set_fact:
-    bootlinux_b4_am_this_host: True
+    bootlinux_b4_am_this_host: true
   when:
     - not kdevops_baseline_and_dev|bool
     - not workflow_linux_packaged|bool
@@ -112,8 +112,10 @@
   set_fact:
     target_linux_git: "{{ bootlinux_dev_tree if bootlinux_dev_tree != '' else target_linux_git }}"
     active_linux_ref: "{{ target_linux_dev_ref if targeting_dev_nodes|default(false)|bool else target_linux_ref }}"
-    active_linux_kernelrelease: "{{ target_linux_dev_kernelrelease if (targeting_dev_nodes|default(false)|bool and bootlinux_tree_custom_kernelrelease|bool) else target_linux_kernelrelease }}"
-    active_linux_localversion: "{{ target_linux_dev_localversion if (targeting_dev_nodes|default(false)|bool and bootlinux_tree_custom_localversion|bool) else target_linux_localversion }}"
+    active_linux_kernelrelease: "{{ target_linux_dev_kernelrelease if (targeting_dev_nodes|default(false)|bool and bootlinux_tree_custom_kernelrelease|bool) else
+      target_linux_kernelrelease }}"
+    active_linux_localversion: "{{ target_linux_dev_localversion if (targeting_dev_nodes|default(false)|bool and bootlinux_tree_custom_localversion|bool) else target_linux_localversion
+      }}"
     target_linux_config: "config-{{ target_linux_dev_ref }}"
   when:
     - kdevops_baseline_and_dev|bool
@@ -178,8 +180,8 @@
     - not workflow_linux_packaged|bool
 
 - name: Mount bootlinux 9p on each target node
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   mount:
     name: "{{ target_linux_dir_path }}"
@@ -187,7 +189,7 @@
     fstype: "9p"
     opts: "ro,trans=virtio,version=9p2000.L,posixacl,cache=none"
     state: "mounted"
-  tags: [ 'data_partition', '9p_mount' ]
+  tags: ["data_partition", "9p_mount"]
   when:
     - bootlinux_9p|bool
 
@@ -212,26 +214,26 @@
 - name: Run uname before
   command: "uname -r"
   register: uname_cmd_before
-  tags: [ 'uninstall-linux' ]
+  tags: ["uninstall-linux"]
 
 - name: Check kernel uname for uninstall
   debug:
     msg: "Target kernel {{ target_linux_ref }} Running kernel {{ running_kernel }}"
   vars:
     running_kernel: "{{ uname_cmd_before.stdout_lines.0 }}"
-  tags: [ 'uninstall-linux' ]
+  tags: ["uninstall-linux"]
 
 - name: Set kernel version if user did not provide one with KVER command line argument
   set_fact:
     uninstall_kernel_ver: "{{ uname_cmd_before.stdout_lines.0 }}"
-  tags: [ 'uninstall-linux' ]
+  tags: ["uninstall-linux"]
   when:
     - uninstall_kernel_enable|bool
     - uninstall_kernel_ver is not defined
 
 - name: Check if files for old kernel exist
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.find:
     paths:
@@ -253,19 +255,19 @@
       - "{{ uninstall_kernel_ver }}"
       - "{{ uninstall_kernel_ver }}+"
   register: found_uninstall_kfiles
-  tags: [ 'uninstall-linux' ]
+  tags: ["uninstall-linux"]
   when:
     - uninstall_kernel_enable|bool
     - uninstall_kernel_ver is defined
 
 - name: Remove an old version of Linux manually specified
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     state: absent
     path: "{{ item.path }}"
-  tags: [ 'uninstall-linux' ]
+  tags: ["uninstall-linux"]
   with_items:
     - "{{ found_uninstall_kfiles.files }}"
   loop_control:
@@ -279,28 +281,28 @@
 # option. This let's us work with hardware serial consoles
 # say on IPMIs and virtual guests ('virsh console').
 - name: Ensure we can get the GRUB prompt on reboot
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
-    regexp: '^GRUB_TERMINAL='
+    regexp: "^GRUB_TERMINAL="
     line: GRUB_TERMINAL="console serial"
 
 - name: Update your boot GRUB file if necessary
-  tags: [ 'uninstall-linux', 'manual-update-grub' ]
+  tags: ["uninstall-linux", "manual-update-grub"]
   import_tasks: update-grub/main.yml
 
 - name: Ensure we have DEFAULTDEBUG set
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: grub_default_saved_cmd
   lineinfile:
     path: /etc/sysconfig/kernel
-    regexp: '^DEFAULTDEBUG='
+    regexp: "^DEFAULTDEBUG="
     line: DEFAULTDEBUG=yes
-  tags: [ 'saved' ]
+  tags: ["saved"]
   when: ansible_facts['os_family']|lower == 'redhat'
 
 - name: Install packages on each target node
@@ -310,52 +312,52 @@
     - workflow_linux_packaged|bool
 
 - name: Install {{ target_linux_tree }} on the target nodes
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ target_linux_make_install_cmd }}"
   register: install_done
   changed_when: "install_done.rc == 0"
   args:
     chdir: "{{ target_linux_dir_path }}"
-  tags: [ 'install-linux' ]
+  tags: ["install-linux"]
   when:
     - not workflow_linux_packaged|bool
 
 - name: Install {{ target_linux_tree }} cxl_test on the target nodes
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ target_linux_make_install_cmd }} M=tools/testing/cxl INSTALL_MOD_DIR=updates"
   register: install_done
   changed_when: "install_done.rc == 0"
   args:
     chdir: "{{ target_linux_dir_path }}"
-  tags: [ 'install-linux', 'cxl-install' ]
+  tags: ["install-linux", "cxl-install"]
   when:
     - kdevops_workflow_enable_cxl|bool
     - not workflow_linux_packaged|bool
 
 - name: Set the default kernel if necessary
-  tags: [ 'saved' ]
+  tags: ["saved"]
   import_tasks: update-grub/install.yml
   # when:
   #   - ansible_facts['os_family']|lower != 'redhat'
 
 - name: Reboot into Linux {{ target_linux_tree }}
-  become: yes
+  become: true
   become_method: sudo
   reboot:
-  tags: [ 'reboot' ]
+  tags: ["reboot"]
 
 - name: Run uname
   command: "uname -r"
   register: uname_cmd
-  tags: [ 'uname' ]
+  tags: ["uname"]
 
 - name: Check kernel uname
   debug:
     msg: "Target kernel {{ target_linux_ref }} Running kernel {{ running_kernel }}"
   vars:
     running_kernel: "{{ uname_cmd.stdout_lines.0 }}"
-  tags: [ 'uname' ]
+  tags: ["uname"]
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/debian.yml b/playbooks/roles/bootlinux/tasks/update-grub/debian.yml
index 54646345..fb862b3a 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/debian.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/debian.yml
@@ -1,8 +1,9 @@
+---
 - name: Run update-grub
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "update-grub"
   register: grub_update
   changed_when: "grub_update.rc == 0"
-  tags: [ 'manual-update-grub' ]
+  tags: ["manual-update-grub"]
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/install.yml b/playbooks/roles/bootlinux/tasks/update-grub/install.yml
index f765bc20..0b0cb907 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/install.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/install.yml
@@ -1,3 +1,4 @@
+---
 # There is slightly confusing user-experience and not complete documentation
 # about the requirements for using grub-set-default in light of the fact that
 # most Linux distributions use sub-menus. You need to use GRUB_DEFAULT=saved
@@ -68,29 +69,29 @@
 #
 #   grub-set-default 2
 - name: Ensure we have GRUB_DEFAULT=saved
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: grub_default_saved_cmd
   lineinfile:
     path: /etc/default/grub
-    regexp: '^GRUB_DEFAULT='
+    regexp: "^GRUB_DEFAULT="
     line: GRUB_DEFAULT=saved
-  tags: [ 'saved' ]
+  tags: ["saved"]
 
 - name: Use GRUB_DISABLE_SUBMENU=y to enable grub-set-default use with one digit
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: grub_disable_submenu_cmd
   lineinfile:
     path: /etc/default/grub
-    regexp: '^GRUB_DISABLE_SUBMENU='
+    regexp: "^GRUB_DISABLE_SUBMENU="
     line: GRUB_DISABLE_SUBMENU=y
-  tags: [ 'saved' ]
+  tags: ["saved"]
 
 - name: Update your boot GRUB file if necessary to ensure GRUB flat earth
-  tags: [ 'uninstall-linux', 'manual-update-grub' ]
+  tags: ["uninstall-linux", "manual-update-grub"]
   import_tasks: update-grub/main.yml
 
 - name: Get the name of the kernel release to install (source tree)
@@ -191,7 +192,7 @@
   tags:
     - saved
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.shell:
     cmd: "{{ determine_default_kernel_id }}"
@@ -205,23 +206,21 @@
 - name: Obtain command to set default kernel to boot
   set_fact:
     grub_set_default_boot_kernel: grub-set-default
-  when:
-    ansible_facts['os_family']|lower != 'redhat' or ansible_facts['distribution_major_version'] | int < 8
+  when: ansible_facts['os_family']|lower != 'redhat' or ansible_facts['distribution_major_version'] | int < 8
 
 - name: Obtain command to set default kernel to boot for RHEL >= 8
   set_fact:
     grub_set_default_boot_kernel: grub2-set-default
-  when:
-    ansible_facts['os_family']|lower == 'redhat' and ansible_facts['distribution_major_version'] | int >= 8
+  when: ansible_facts['os_family']|lower == 'redhat' and ansible_facts['distribution_major_version'] | int >= 8
 
 - name: Set the target kernel to be booted by default moving forward if the above command worked
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ grub_set_default_boot_kernel }} \"{{ target_boot_entry }}\""
   vars:
     target_boot_entry: "{{ grub_boot_number_cmd.stdout_lines.0 if (grub_boot_number_cmd is defined and grub_boot_number_cmd.stdout_lines is defined) else '' }}"
-  tags: [ 'saved' ]
+  tags: ["saved"]
   when:
     - grub_boot_number_cmd is defined
     - grub_boot_number_cmd.rc is defined
@@ -235,11 +234,10 @@
   vars:
     target_kernel: "{{ target_linux_ref | replace('v', '') }}"
     target_boot_entry: "{{ grub_boot_number_cmd.stdout_lines.0 }}"
-  tags: [ 'saved' ]
+  tags: ["saved"]
   when:
     - grub_boot_number_cmd is defined
     - grub_boot_number_cmd.rc is defined
     - grub_boot_number_cmd.rc == 0
     - grub_boot_number_cmd.stdout is defined
     - grub_boot_number_cmd.stdout != ""
-
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml b/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml
index 1ccc0b23..dbcff18f 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml
@@ -1,6 +1,7 @@
+---
 - name: Disable Grub menu auto-hide
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: grub2-editenv - unset menu_auto_hide
 
@@ -11,21 +12,19 @@
 
 - name: Use /etc/grub2.cfg as the grub configuration file
   set_fact:
-    grub_config_file: '/etc/grub2.cfg'
-  when:
-    not efi_boot.stat.exists
+    grub_config_file: "/etc/grub2.cfg"
+  when: not efi_boot.stat.exists
 
 - name: Use /etc/grub2-efi.cfg as the configuration file
   set_fact:
-    grub_config_file: '/etc/grub2-efi.cfg'
-  when:
-    efi_boot.stat.exists
+    grub_config_file: "/etc/grub2-efi.cfg"
+  when: efi_boot.stat.exists
 
 - name: Run update-grub
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "grub2-mkconfig -o {{ grub_config_file }}"
   register: grub_update
   changed_when: "grub_update.rc == 0"
-  tags: [ 'manual-update-grub' ]
+  tags: ["manual-update-grub"]
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/suse.yml b/playbooks/roles/bootlinux/tasks/update-grub/suse.yml
index e0185581..38f84174 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/suse.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/suse.yml
@@ -1,8 +1,9 @@
+---
 - name: Run update-grub
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "update-bootloader --refresh"
   register: grub_update
   changed_when: "grub_update.rc == 0"
-  tags: [ 'manual-update-grub' ]
+  tags: ["manual-update-grub"]
diff --git a/playbooks/roles/btrfs_progs/defaults/main.yml b/playbooks/roles/btrfs_progs/defaults/main.yml
index d3d65078..f3d20866 100644
--- a/playbooks/roles/btrfs_progs/defaults/main.yml
+++ b/playbooks/roles/btrfs_progs/defaults/main.yml
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
 
-btrfs_progs_build: False
+btrfs_progs_build: false
 
 btrfs_progs_data: "{{ data_path }}/btrfs-progs"
 btrfs_progs_git: "https://github.com/kdave/btrfs-progs.git"
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml
index 1852f05f..177fc20f 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
-  tags: [ 'btrfs-progs', 'update-cache' ]
+    update_cache: true
+  tags: ["btrfs-progs", "update-cache"]
 
 - name: Install btrfs-progs build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -18,4 +18,4 @@
       - libudev-dev
       - liblzo2-dev
     state: present
-  tags: [ 'btrfs-progs', 'build-deps' ]
+  tags: ["btrfs-progs", "build-deps"]
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml
index c828fd62..28e7289a 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install btrfs-progs build dependencies
-  become: yes
+  become: true
   become_method: sudo
   dnf:
     name:
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml
index ae230b88..99eaef87 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml
@@ -6,7 +6,7 @@
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Install btrfs-progs build dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/btrfs_progs/tasks/main.yml b/playbooks/roles/btrfs_progs/tasks/main.yml
index f8a92417..cc5958df 100644
--- a/playbooks/roles/btrfs_progs/tasks/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/main.yml
@@ -1,18 +1,18 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - include_role:
     name: create_data_partition
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
 
 - name: Install build-deps for btrfs_progs as per each Linux distribution
   include_tasks: install-deps/main.yml
@@ -21,12 +21,12 @@
 
 - name: Assume we won't build btrfs_progs first
   set_fact:
-    build_btrfs_progs_now: False
+    build_btrfs_progs_now: false
   tags: vars
 
 - name: Annotate when we are building btrfs_progs
   set_fact:
-    build_btrfs_progs_now: True
+    build_btrfs_progs_now: true
   when:
     - btrfs_progs_build|bool
   tags: vars
@@ -45,7 +45,7 @@
 
 - name: git clone btrfs_progs
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "{{ btrfs_progs_git }}"
     dest: "{{ btrfs_progs_data }}"
@@ -57,11 +57,11 @@
   make:
     chdir: "{{ btrfs_progs_data }}"
     target: clean-all
-  ignore_errors: yes
+  ignore_errors: true
 
 - name: Run autogen.sh for btrfs_progs
   command: "./autogen.sh"
-  tags: [ 'btrfs_progs', 'configure' ]
+  tags: ["btrfs_progs", "configure"]
   args:
     chdir: "{{ btrfs_progs_data }}"
   when:
@@ -69,7 +69,7 @@
 
 - name: Run configure for btrfs_progs
   command: "./configure --disable-documentation --enable-experimental --bindir={{ bindir }} --prefix=/usr --exec-prefix=/usr --disable-python"
-  tags: [ 'btrfs_progs', 'configure' ]
+  tags: ["btrfs_progs", "configure"]
   args:
     chdir: "{{ btrfs_progs_data }}"
   when:
@@ -77,7 +77,7 @@
 
 - name: Get nproc
   command: "{{ num_jobs }}"
-  tags: [ 'btrfs_progs', 'configure' ]
+  tags: ["btrfs_progs", "configure"]
   register: nproc
   when:
     - build_btrfs_progs_now|bool
@@ -86,17 +86,17 @@
   make:
     chdir: "{{ btrfs_progs_data }}"
     jobs: "{{ nproc.stdout }}"
-  tags: [ 'btrfs_progs', 'build' ]
+  tags: ["btrfs_progs", "build"]
   when:
     - build_btrfs_progs_now|bool
 
 - name: Install btrfs_progs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ make }} install"
   args:
     chdir: "{{ btrfs_progs_data }}"
-  tags: [ 'btrfs_progs', 'install' ]
+  tags: ["btrfs_progs", "install"]
   when:
     - build_btrfs_progs_now|bool
diff --git a/playbooks/roles/build_qemu/defaults/main.yml b/playbooks/roles/build_qemu/defaults/main.yml
index 006d669c..1cb90d0f 100644
--- a/playbooks/roles/build_qemu/defaults/main.yml
+++ b/playbooks/roles/build_qemu/defaults/main.yml
@@ -1,11 +1,11 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
 
-qemu_build: False
+qemu_build: false
 
 # Forces to build and install even if the file
 # /usr/local/bin/qemu-system-x86_64 is already present
-qemu_force_install_if_present: False
+qemu_force_install_if_present: false
 qemu_bin_path: "/usr/local/bin/qemu-system-x86_64"
 qemu_data: "{{ data_path }}/qemu"
 qemu_git: "https://github.com/qemu/qemu.git"
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml
index c3ab7a01..a314514e 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
-  tags: [ 'qemu', 'update-cache' ]
+    update_cache: true
+  tags: ["qemu", "update-cache"]
 
 - name: Install QEMU build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -71,4 +71,4 @@
       - fcode-utils
       - xsltproc
     state: present
-  tags: [ 'qemu', 'build-deps' ]
+  tags: ["qemu", "build-deps"]
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml
index a46d401d..94a78bc2 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml
@@ -4,10 +4,10 @@
   register: qemu_present
   changed_when: qemu_present.rc == 1
   failed_when: qemu_present.rc != 0 and qemu_present.rc != 1
-  tags: [ 'qemu', 'verify' ]
+  tags: ["qemu", "verify"]
 
 - name: Install QEMU build dependencies
-  become: yes
+  become: true
   become_method: sudo
   dnf:
     name:
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/main.yml
index c652ab2c..871908a2 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Import optional distribution specific variables
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family']|lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml
index 00a08d9c..91772697 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install QEMU build dependencies
-  become: yes
+  become: true
   become_method: sudo
   dnf:
     name:
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml
index e9ff529b..865c83fa 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml
@@ -6,7 +6,7 @@
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Install QEMU build dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/build_qemu/tasks/main.yml b/playbooks/roles/build_qemu/tasks/main.yml
index c826c9cf..706ce729 100644
--- a/playbooks/roles/build_qemu/tasks/main.yml
+++ b/playbooks/roles/build_qemu/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -16,7 +16,7 @@
   register: qemu_present
   changed_when: true
   failed_when: qemu_present.stat.exists and not qemu_present.stat.executable
-  tags: [ 'qemu', 'verify' ]
+  tags: ["qemu", "verify"]
   when:
     - qemu_build|bool
 
@@ -28,12 +28,12 @@
 
 - name: Assume we won't build QEMU first
   set_fact:
-    build_qemu_now: False
+    build_qemu_now: false
   tags: vars
 
 - name: Annotate when we are building QEMU
   set_fact:
-    build_qemu_now: True
+    build_qemu_now: true
   when:
     - qemu_build|bool
     - qemu_force_install_if_present|bool or (qemu_present.stat is not defined)
@@ -43,13 +43,13 @@
   file:
     path: "{{ local_dev_path }}"
     state: directory
-  tags: [ 'qemu', 'build-deps' ]
+  tags: ["qemu", "build-deps"]
   when:
     - build_qemu_now|bool
 
 - name: git clone QEMU using {{ qemu_git }} on {{ qemu_data }}
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "{{ qemu_git }}"
     dest: "{{ qemu_data }}"
@@ -61,13 +61,13 @@
   file:
     path: "{{ qemu_build_dir }}"
     state: absent
-  tags: [ 'qemu', 'build-deps' ]
+  tags: ["qemu", "build-deps"]
   when:
     - build_qemu_now|bool
 
 - name: Disable downloads
   command: "meson subprojects download"
-  tags: [ 'qemu', 'configure' ]
+  tags: ["qemu", "configure"]
   args:
     chdir: "{{ qemu_data }}"
   when:
@@ -75,7 +75,7 @@
 
 - name: Run configure for QEMU
   command: "./configure --target-list={{ qemu_target }} --disable-download"
-  tags: [ 'qemu', 'configure' ]
+  tags: ["qemu", "configure"]
   args:
     chdir: "{{ qemu_data }}"
   when:
@@ -83,7 +83,7 @@
 
 - name: Get nproc
   command: "{{ num_jobs }}"
-  tags: [ 'qemu', 'configure', 'build' ]
+  tags: ["qemu", "configure", "build"]
   register: nproc
   when:
     - build_qemu_now|bool
@@ -92,17 +92,17 @@
   make:
     chdir: "{{ qemu_data }}"
     jobs: "{{ nproc.stdout }}"
-  tags: [ 'qemu', 'build' ]
+  tags: ["qemu", "build"]
   when:
     - build_qemu_now|bool
 
 - name: Install QEMU
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ make }} install"
   args:
     chdir: "{{ qemu_data }}"
-  tags: [ 'qemu', 'install' ]
+  tags: ["qemu", "install"]
   when:
     - build_qemu_now|bool
diff --git a/playbooks/roles/common/defaults/main.yml b/playbooks/roles/common/defaults/main.yml
index 69cd0af3..ab496e8e 100644
--- a/playbooks/roles/common/defaults/main.yml
+++ b/playbooks/roles/common/defaults/main.yml
@@ -4,4 +4,4 @@
 kdevops_data: "/data/kdevops"
 kdevops_git: "https://github.com/linux-kdevops/kdevops.git"
 
-kdevops_git_reset: False
+kdevops_git_reset: false
diff --git a/playbooks/roles/common/tasks/main.yml b/playbooks/roles/common/tasks/main.yml
index 20a1f446..6c379362 100644
--- a/playbooks/roles/common/tasks/main.yml
+++ b/playbooks/roles/common/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -14,7 +14,7 @@
 
 - name: git reset kdevops
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
@@ -22,7 +22,7 @@
   delay: 5
   register: result
   until: not result.failed
-  tags: [ 'kdevops_reset']
+  tags: ["kdevops_reset"]
   when:
     - kdevops_git_reset|bool
 
diff --git a/playbooks/roles/compile_dbench/defaults/main.yml b/playbooks/roles/compile_dbench/defaults/main.yml
index 50bf395b..b544bd4c 100644
--- a/playbooks/roles/compile_dbench/defaults/main.yml
+++ b/playbooks/roles/compile_dbench/defaults/main.yml
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier GPL-2.0+
 ---
 # Our sensible defaults.
-compile_dbench: False
+compile_dbench: false
 dbench_data: "{{ data_path }}/dbench"
 dbench_git: "https://github.com/linux-kdevops/dbench.git"
diff --git a/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml b/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml
index 977b18ba..7c24cc8b 100644
--- a/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml
@@ -1,17 +1,17 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: linux
 
 - name: Force dbench compilation on Debian
   set_fact:
-    compile_dbench: False
+    compile_dbench: false
 
 - name: Install dbench build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -46,5 +46,5 @@
       - libsmbclient-dev
       - libiscsi-dev
     state: present
-    update_cache: yes
-  tags: [ 'dbench', 'deps' ]
+    update_cache: true
+  tags: ["dbench", "deps"]
diff --git a/playbooks/roles/compile_dbench/tasks/main.yml b/playbooks/roles/compile_dbench/tasks/main.yml
index 15a8bb4f..d06d3f29 100644
--- a/playbooks/roles/compile_dbench/tasks/main.yml
+++ b/playbooks/roles/compile_dbench/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -18,14 +18,14 @@
   git:
     repo: "{{ dbench_git }}"
     dest: "{{ dbench_data }}"
-    update: yes
-  tags: [ 'git', 'dbench' ]
+    update: true
+  tags: ["git", "dbench"]
   when:
     - compile_dbench|bool
 
 - name: Run autogen for dbench
   command: "./autogen.sh"
-  tags: [ 'dbench' ]
+  tags: ["dbench"]
   args:
     chdir: "{{ dbench_data }}"
   when:
@@ -33,7 +33,7 @@
 
 - name: Run configure for dbench
   command: "./configure"
-  tags: [ 'dbench' ]
+  tags: ["dbench"]
   args:
     chdir: "{{ dbench_data }}"
   when:
@@ -41,13 +41,13 @@
 
 - name: Get nproc
   command: "{{ num_jobs }}"
-  tags: [ 'git', 'dbench' ]
+  tags: ["git", "dbench"]
   register: nproc
   when:
     - compile_dbench|bool
 
 - name: Build dbench
-  tags: [ 'git', 'dbench' ]
+  tags: ["git", "dbench"]
   make:
     chdir: "{{ dbench_data }}"
     jobs: "{{ nproc.stdout }}"
@@ -55,11 +55,11 @@
     - compile_dbench|bool
 
 - name: Install dbench
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{  make }} install"
-  tags: [ 'git', 'dbench' ]
+  tags: ["git", "dbench"]
   args:
     chdir: "{{ dbench_data }}"
   when:
diff --git a/playbooks/roles/create_data_partition/tasks/main.yml b/playbooks/roles/create_data_partition/tasks/main.yml
index 417c3fa4..c1a52299 100644
--- a/playbooks/roles/create_data_partition/tasks/main.yml
+++ b/playbooks/roles/create_data_partition/tasks/main.yml
@@ -5,7 +5,7 @@
     - infer_uid_and_group|bool
 
 - name: Establish the fixed device name of the data device
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
   when:
     - kdevops_enable_terraform|bool
     - kdevops_terraform_provider == "aws"
@@ -26,8 +26,7 @@
         local_map: "{{ block_device_dict[inventory_hostname] }}"
       ansible.builtin.set_fact:
         data_volume_id: "{{ 'nvme-Amazon_Elastic_Block_Store_' + item.value | regex_replace('-', '') }}"
-      when:
-        item.key == "/dev/sdf"
+      when: item.key == "/dev/sdf"
       with_dict: "{{ local_map }}"
 
     # This task replaces the value of data_device only in the scope of this role
@@ -46,9 +45,9 @@
   vars:
     disk_setup_device: "{{ data_device }}"
     disk_setup_fstype: "{{ data_fstype }}"
-    disk_setup_label : "{{ data_label }}"
+    disk_setup_label: "{{ data_label }}"
     disk_setup_fs_opts: "{{ data_fs_opts }}"
     disk_setup_path: "{{ data_path }}"
     disk_setup_user: "{{ data_user }}"
     disk_setup_group: "{{ data_group }}"
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
diff --git a/playbooks/roles/create_nfs_mount/tasks/main.yml b/playbooks/roles/create_nfs_mount/tasks/main.yml
index 94945df5..a47129b7 100644
--- a/playbooks/roles/create_nfs_mount/tasks/main.yml
+++ b/playbooks/roles/create_nfs_mount/tasks/main.yml
@@ -22,7 +22,7 @@
       RedHat:
         - "nfs-utils"
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ packages[ansible_os_family] }}"
@@ -38,7 +38,7 @@
 
 - name: Mount {{ nfs_mounted_on }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   throttle: 1
   ansible.posix.mount:
@@ -47,5 +47,4 @@
     fstype: "nfs"
     opts: "{{ nfs_mount_options }}"
     state: mounted
-  when:
-    mountpoint_stat != 0
+  when: mountpoint_stat != 0
diff --git a/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml b/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml
index eee21ee5..365156ed 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Install partition creation base tools
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
       - btrfs-progs
       - e2fsprogs
       - xfsprogs
-    update_cache: yes
+    update_cache: true
diff --git a/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml b/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml
index 135c0325..fb2b8079 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install partition creation base tools
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   vars:
     packages:
@@ -11,10 +11,10 @@
       - e2fsprogs
 
 - name: Install btrfs-progs
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml b/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml
index a616712e..19c30f98 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml
@@ -25,19 +25,19 @@
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle12sp5: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle15sp2: False
-    is_sle15sp3: False
-    is_sle15sp4: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle12sp5: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle15sp2: false
+    is_sle15sp3: false
+    is_sle15sp4: false
   when:
     - not is_sle|bool
 
@@ -53,7 +53,7 @@
     - is_sle10|bool or is_sle11|bool
 
 - name: Install partition creation base tools
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/create_partition/tasks/main.yml b/playbooks/roles/create_partition/tasks/main.yml
index 8e72263c..beee1ecb 100644
--- a/playbooks/roles/create_partition/tasks/main.yml
+++ b/playbooks/roles/create_partition/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -15,54 +15,54 @@
   import_tasks: install-deps/main.yml
 
 - name: Check if {{ disk_setup_path }} is mounted
-  become: yes
+  become: true
   become_method: sudo
   command: mountpoint -q {{ disk_setup_path }}
   register: mountpoint_stat
-  failed_when: False
-  changed_when: False
-  tags: [ 'partition' ]
+  failed_when: false
+  changed_when: false
+  tags: ["partition"]
 
 - name: Check if {{ disk_setup_path }} is present on /etc/fstab
-  become: yes
+  become: true
   become_method: sudo
   shell: |
     set -o pipefail
     awk '{print $2}' /etc/fstab  | grep -q ^"{{ disk_setup_path }}"
   register: fstab_grep_stat
-  failed_when: False
-  changed_when: False
+  failed_when: false
+  changed_when: false
   args:
     executable: /bin/bash
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Partitions | Read all partitions labels and see if they match {{ disk_setup_label }}
-  become: yes
+  become: true
   become_method: sudo
   shell: |
     set -o pipefail
     lsblk -npr -oLABEL | grep -q ^"{{ disk_setup_label }}"
   register: label_grep
-  failed_when: False
-  changed_when: False
+  failed_when: false
+  changed_when: false
   args:
     executable: /bin/bash
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Partitions | Check if block {{ disk_setup_device }} exists
   stat:
     path: "{{ disk_setup_device }}"
-    follow: yes
+    follow: true
   register: stat_result
   when: >
     mountpoint_stat.rc != 0 and
     fstab_grep_stat.rc != 0 and
     label_grep.rc != 0
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Wipe old filesystem if {{ disk_setup_device }} was not on /etc/fstab
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   filesystem:
     state: absent
@@ -74,7 +74,7 @@
     (mountpoint_stat.rc != 0 and
      label_grep.rc != 0)
   register: create_data_fs
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Partitions | Read {{ disk_setup_device }} partitions and mountpoints
   shell: |
@@ -88,7 +88,7 @@
     stat_result.stat.isblk
   args:
     executable: /bin/bash
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Partitions | Collect partition information onto part_mounts
   set_fact:
@@ -96,11 +96,11 @@
   when: >
     result is success and
     result.stdout_lines is defined
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Create filesystem if {{ disk_setup_device }} has no partitions and is not mounted
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   filesystem:
     fstype: "{{ disk_setup_fstype }}"
@@ -118,11 +118,11 @@
      (part_mounts_item[0] is not defined and
      part_mounts_item[1] is not defined)))
   register: create_data_fs
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Mount data filesystem if {{ disk_setup_path }} is not mounted
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   mount:
     path: "{{ disk_setup_path }}"
@@ -145,10 +145,10 @@
      (part_mounts_item is defined and
      part_mounts_item | length <= 1 or
      part_mounts_item[1] is not defined))
-  tags: [ 'partition' ]
+  tags: ["partition"]
 
 - name: Ensure directory {{ disk_setup_path }} is created and with correct permissions
-  become: yes
+  become: true
   become_method: sudo
   file:
     state: directory
@@ -156,4 +156,4 @@
     owner: "{{ disk_setup_user }}"
     group: "{{ disk_setup_group }}"
     mode: "{{ disk_setup_mode }}"
-  tags: [ 'partition' ]
+  tags: ["partition"]
diff --git a/playbooks/roles/create_tmpfs/tasks/main.yml b/playbooks/roles/create_tmpfs/tasks/main.yml
index e8bcfcff..5f7df16f 100644
--- a/playbooks/roles/create_tmpfs/tasks/main.yml
+++ b/playbooks/roles/create_tmpfs/tasks/main.yml
@@ -33,7 +33,7 @@
 
 - name: Mount {{ tmpfs_mounted_on }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   throttle: 1
   ansible.posix.mount:
@@ -42,8 +42,7 @@
     fstype: "tmpfs"
     opts: "{{ tmpfs_mount_options }}"
     state: mounted
-  when:
-    mountpoint_stat != 0
+  when: mountpoint_stat != 0
 
 - name: Update permissions on {{ tmpfs_mounted_on }}
   become: true
diff --git a/playbooks/roles/cxl/defaults/main.yml b/playbooks/roles/cxl/defaults/main.yml
index 8bed9594..a53fbb9d 100644
--- a/playbooks/roles/cxl/defaults/main.yml
+++ b/playbooks/roles/cxl/defaults/main.yml
@@ -4,6 +4,6 @@ ndctl_git: "https://github.com/pmem/ndctl.git"
 ndctl_data: "{{ data_path }}/ndctl"
 ndctl_version: "pending"
 ndctl_meson_testlog: "build/meson-logs/testlog.txt"
-kdevops_run_cxl_tests: False
-kdevops_enable_cxl_dcd: False
+kdevops_run_cxl_tests: false
+kdevops_enable_cxl_dcd: false
 kdevops_qmp_str: "tcp:localhost:4444,server"
diff --git a/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml b/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml
index daed8fa5..8f3a19ec 100644
--- a/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml
@@ -1,27 +1,19 @@
 ---
-
 - name: Create a DC region before DC extents can be added
-  become: yes
+  become: true
   become_method: sudo
-  shell: "rid=0; \
-          region=$(cat /sys/bus/cxl/devices/decoder0.0/create_dc_region); \
-          echo $region > /sys/bus/cxl/devices/decoder0.0/create_dc_region; \
-          echo 256 > /sys/bus/cxl/devices/$region/interleave_granularity; \
-          echo 1 > /sys/bus/cxl/devices/$region/interleave_ways; \
-          echo dc$rid >/sys/bus/cxl/devices/decoder2.0/mode; \
-          echo 0x40000000 >/sys/bus/cxl/devices/decoder2.0/dpa_size; \
-          echo 0x40000000 > /sys/bus/cxl/devices/$region/size; \
-          echo  decoder2.0 > /sys/bus/cxl/devices/$region/target0; \
-          echo 1 > /sys/bus/cxl/devices/$region/commit; \
-          echo $region > /sys/bus/cxl/drivers/cxl_region/bind"
-  tags: [ 'cxl-create-dc-region' ]
+  shell: "rid=0; region=$(cat /sys/bus/cxl/devices/decoder0.0/create_dc_region); echo $region > /sys/bus/cxl/devices/decoder0.0/create_dc_region; echo 256 > /sys/bus/cxl/devices/$region/interleave_granularity;
+    echo 1 > /sys/bus/cxl/devices/$region/interleave_ways; echo dc$rid >/sys/bus/cxl/devices/decoder2.0/mode; echo 0x40000000 >/sys/bus/cxl/devices/decoder2.0/dpa_size;
+    echo 0x40000000 > /sys/bus/cxl/devices/$region/size; echo  decoder2.0 > /sys/bus/cxl/devices/$region/target0; echo 1 > /sys/bus/cxl/devices/$region/commit; echo
+    $region > /sys/bus/cxl/drivers/cxl_region/bind"
+  tags: ["cxl-create-dc-region"]
 
 - name: Show the DC region created
-  become: no
-  shell: "cxl list -uR"
+  become: false
+  ansible.builtin.command: "cxl list -uR"
   register: command_output
-  tags: [ 'cxl-create-dc-region' ]
+  tags: ["cxl-create-dc-region"]
 
 - debug:
-      var: command_output.stdout_lines
-  tags: [ 'cxl-create-dc-region' ]
+    var: command_output.stdout_lines
+  tags: ["cxl-create-dc-region"]
diff --git a/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml b/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
index 39660efb..8adeba6a 100644
--- a/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
@@ -1,79 +1,58 @@
 ---
-
 - name: Add DC extents to the hosts
-  shell: " \
-          qmp_port_str={{ qmp_port_str }}; \
-          qmp_port=`echo $qmp_port_str | awk -F'[^0-9]+' '{ print $2 }'`;\
-          qmp_str=' \
-          { \"execute\": \"qmp_capabilities\" } \
-          { \"execute\": \"cxl-add-dynamic-capacity\",
-            \"arguments\": {
-              \"path\": \"/machine/peripheral/kdevops-cxl-dcd0\",
-              \"region-id\": 0,
-              \"extents\": [
-                {
-                  \"offset\": 0,
-                  \"len\": 128
-                },
-                {
-                  \"offset\": 128,
-                  \"len\": 256
-                }
-                ]
-            }
-          } '; \
-          echo $qmp_str | ncat localhost $qmp_port"
+  shell: " qmp_port_str={{ qmp_port_str }}; qmp_port=`echo $qmp_port_str | awk -F'[^0-9]+' '{ print $2 }'`;qmp_str=' { \"execute\": \"qmp_capabilities\" } { \"execute\"\
+    : \"cxl-add-dynamic-capacity\", \"arguments\": { \"path\": \"/machine/peripheral/kdevops-cxl-dcd0\", \"region-id\": 0, \"extents\": [ { \"offset\": 0, \"len\"\
+    : 128 }, { \"offset\": 128, \"len\": 256 } ] } } '; echo $qmp_str | ncat localhost $qmp_port"
   register: command_output
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
   delegate_to: localhost
 
 - debug: var=command_output.stdout_lines
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - name: Show DC extents added
-  become: no
-  shell: "ls /sys/bus/cxl/devices/decoder0.0/region0/dax_region0/ -lt"
+  become: false
+  ansible.builtin.command: "ls /sys/bus/cxl/devices/decoder0.0/region0/dax_region0/ -lt"
   register: command_output
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - debug: var=command_output.stdout_lines
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - name: Create dax devices for DC region
-  become: yes
+  become: true
   become_method: sudo
-  shell: "daxctl create-device region0"
+  ansible.builtin.command: "daxctl create-device region0"
   register: command_output
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - debug: var=command_output.stdout_lines
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - name: Show dax devices added
-  become: no
+  become: false
   shell: "ls /dev/dax* -lt"
   register: command_output
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - debug: var=command_output.stdout_lines
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - name: Convert dax devices to system RAM and online
-  become: yes
+  become: true
   become_method: sudo
-  shell: "daxctl reconfigure-device --mode=system-ram --no-online dax0.1; \
-          daxctl online-memory dax0.1;"
+  shell: "daxctl reconfigure-device --mode=system-ram --no-online dax0.1; daxctl online-memory dax0.1;"
   register: command_output
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - debug: var=command_output.stdout_lines
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - name: Show system memory with lsmem
-  become: no
-  shell: "lsmem"
+  become: false
+  ansible.builtin.command: "lsmem"
   register: command_output
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
 
 - debug: var=command_output.stdout_lines
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
diff --git a/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml b/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
index fe7db130..1e5532f1 100644
--- a/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
@@ -1,23 +1,20 @@
 ---
-
 - name: create a region from cxl memory
-  become: yes
+  become: true
   command: "cxl create-region -m -d decoder0.0 -w 1 mem0 -s 256M"
-  tags: [ 'cxl-mem-setup' ]
+  tags: ["cxl-mem-setup"]
 
 - name: create a namespace from cxl memory
-  become: yes
+  become: true
   command: "ndctl create-namespace -m dax -r region0"
-  tags: [ 'cxl-mem-setup' ]
+  tags: ["cxl-mem-setup"]
 
 - name: switch daxdevice to be used for system-ram
-  become: yes
+  become: true
   command: "daxctl reconfigure-device --mode=system-ram --no-online dax0.0"
-  tags: [ 'cxl-mem-setup' ]
+  tags: ["cxl-mem-setup"]
 
 - name: online newly created daxdevice
-  become: yes
+  become: true
   command: "daxctl online-memory dax0.0"
-  tags: [ 'cxl-mem-setup' ]
-
-
+  tags: ["cxl-mem-setup"]
diff --git a/playbooks/roles/cxl/tasks/install-deps/debian/main.yml b/playbooks/roles/cxl/tasks/install-deps/debian/main.yml
index 8e3c07d5..49d50b18 100644
--- a/playbooks/roles/cxl/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/debian/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: linux
 
 - name: Install ndctl build deps
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -28,5 +28,5 @@
       - libtraceevent-dev
       - libtracefs-dev
     state: present
-    update_cache: yes
-  tags: [ 'cxl', 'deps' ]
+    update_cache: true
+  tags: ["cxl", "deps"]
diff --git a/playbooks/roles/cxl/tasks/install-deps/generic.yml b/playbooks/roles/cxl/tasks/install-deps/generic.yml
index 5f9bb651..27c20855 100644
--- a/playbooks/roles/cxl/tasks/install-deps/generic.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/generic.yml
@@ -1,7 +1,7 @@
 ---
 # task to install packages common across supported distros
 - name: Install packages common to all supported distros
-  become: yes
+  become: true
   package:
     name:
       - numactl
diff --git a/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml b/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml
index e1a94a2b..bcc09c99 100644
--- a/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install build dependencies for ndctl
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   vars:
     packages:
diff --git a/playbooks/roles/cxl/tasks/install-deps/suse/main.yml b/playbooks/roles/cxl/tasks/install-deps/suse/main.yml
index 50eb51bf..e8e4ea62 100644
--- a/playbooks/roles/cxl/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/suse/main.yml
@@ -25,19 +25,19 @@
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle12sp5: False
-    is_sle15sp2: False
-    is_sle15sp3: False
-    is_sle15sp4: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle12sp5: false
+    is_sle15sp2: false
+    is_sle15sp3: false
+    is_sle15sp4: false
   when:
     - not is_sle|bool
 
@@ -53,7 +53,7 @@
     - is_sle10|bool or is_sle11|bool
 
 - name: Install build dependencies for ndctl
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
diff --git a/playbooks/roles/cxl/tasks/main.yml b/playbooks/roles/cxl/tasks/main.yml
index 9ac95fd9..cd5bf95d 100644
--- a/playbooks/roles/cxl/tasks/main.yml
+++ b/playbooks/roles/cxl/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -16,52 +16,52 @@
 
 - include_role:
     name: create_data_partition
-  tags: [ 'ndctl', 'data_partition' ]
+  tags: ["ndctl", "data_partition"]
 
 - name: git clone ndctl
   git:
     repo: "{{ ndctl_git }}"
     dest: "{{ ndctl_data }}"
     version: "{{ ndctl_version }}"
-    update: yes
-  tags: [ 'git', 'ndctl' ]
+    update: true
+  tags: ["git", "ndctl"]
 
 - name: Run meson setup build for ndctl
   command: "meson setup build"
-  tags: [ 'ndctl' ]
+  tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
 
 - name: Enable unit tests as per meson
   command: "meson configure -Dtest=enabled -Ddestructive=enabled build"
-  tags: [ 'ndctl' ]
+  tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
 
 - name: Run meson compile -C build for ndctl
   command: "meson compile -C build"
-  tags: [ 'ndctl' ]
+  tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
 
 - name: Run meson install -C build
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "meson install -C build"
-  tags: [ 'ndctl' ]
+  tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
 
 - name: Convert cxl memory to kernel managed memory
   include_tasks: cxl-mem-setup/main.yml
-  tags: [ 'cxl-mem-setup' ]
+  tags: ["cxl-mem-setup"]
   when:
     - not kdevops_enable_cxl_dcd|bool
 
 - name: Create a dynamic capacity region for further dc extent add operations
   include_tasks: cxl-create-dc-region/main.yml
-  tags: [ 'cxl-create-dc-region' ]
+  tags: ["cxl-create-dc-region"]
   when:
     - kdevops_enable_cxl_dcd|bool
 
@@ -69,24 +69,24 @@
   include_tasks: cxl-dcd-setup/main.yml
   vars:
     qmp_port_str: "{{ kdevops_qmp_str }}"
-  tags: [ 'cxl-dcd-setup' ]
+  tags: ["cxl-dcd-setup"]
   when:
     - kdevops_enable_cxl_dcd|bool
 
 - name: Set the path to cxl workflow
   set_fact:
     cxl_workflow_target: "../workflows/cxl/"
-  tags: [ 'ndctl', 'cxl-test-prep', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-prep", "copy_results"]
 
 - name: Get used target kernel version
-  tags: [ 'ndctl', 'cxl-test-prep', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-prep", "copy_results"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
-  tags: [ 'ndctl', 'cxl-test-prep', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-prep", "copy_results"]
   run_once: true
 
 - name: Set the path where we collect our cxl results
@@ -94,116 +94,119 @@
     cxl_results_full_path: "{{ topdir_path }}/workflows/selftests/results/"
     cxl_workflow_dir: "../workflows/cxl"
     cxl_results_target: "../workflows/cxl/results/last-run/{{ last_kernel }}"
-  tags: [ 'ndctl', 'cxl-test-prep', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-prep", "copy_results"]
 
 - name: Print uname for each host
-  tags: [ 'ndctl', 'cxl-test-prep', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-prep", "copy_results"]
   debug: var=ansible_kernel
 
 - name: Clear out old meson results directory on target hosts
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     state: absent
     path: "{{ ndctl_data }}/{{ ndctl_meson_testlog }}"
-  tags: [ 'ndctl', 'cxl-test-prep', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-prep", "copy_results"]
 
 - name: Load configfs module
-  tags: [ 'ndctl', 'cxl-test-prep', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["ndctl", "cxl-test-prep", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "modprobe configfs"
   when:
     - kdevops_run_cxl_tests|bool
 
 - name: Enable low-level messages on console
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: sysctl kernel.printk="8 8 1 7"
-  tags: [ 'ndctl', 'cxl-test-prep', 'run_tests' ]
+  tags: ["ndctl", "cxl-test-prep", "run_tests"]
   when:
     - kdevops_run_cxl_tests|bool
 
 - name: modprobe cxl_test
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "modprobe cxl_test"
-  tags: [ 'ndctl', 'cxl-test-probe', 'run_tests' ]
+  tags: ["ndctl", "cxl-test-probe", "run_tests"]
   args:
     chdir: "{{ ndctl_data }}"
   when:
     - kdevops_run_cxl_tests|bool
 
 - name: modprobe -r cxl_test
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "modprobe -r cxl_test"
-  tags: [ 'ndctl', 'cxl-test-probe', 'run_test' ]
+  tags: ["ndctl", "cxl-test-probe", "run_test"]
   args:
     chdir: "{{ ndctl_data }}"
   when:
     - kdevops_run_cxl_tests|bool
 
 - name: Run meson cxl unit test suite
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  ignore_errors: yes
-  no_log: True
+  ignore_errors: true
+  no_log: true
   command: "meson test -C build --suite cxl"
-  tags: [ 'ndctl', 'cxl-test-meson', 'run_tests' ]
+  tags: ["ndctl", "cxl-test-meson", "run_tests"]
   args:
     chdir: "{{ ndctl_data }}"
   when:
     - kdevops_run_cxl_tests|bool
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ cxl_results_target }}/{{ item }}" state=absent
+  file: path="{{ cxl_results_target }}/{{ item }}" state=absent
+  delegate_to: localhost
   with_items:
     - "last-run"
   loop_control:
     label: "{{ item }}"
   run_once: true
-  tags: [ 'ndctl', 'cxl-test-meson', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-meson", "copy_results"]
 
 - name: Create empty last-run directory
-  local_action: file path="{{ cxl_results_target }}/" state=directory
+  file: path="{{ cxl_results_target }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'ndctl', 'cxl-test-meson', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-meson", "copy_results"]
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ cxl_results_target }}/last-kernel.txt"
+  shell: echo {{ last_kernel }} > {{ cxl_results_target }}/last-kernel.txt
+  delegate_to: localhost
   run_once: true
-  tags: [ 'ndctl', 'cxl-test-meson', 'copy_results' ]
+  tags: ["ndctl", "cxl-test-meson", "copy_results"]
 
 - name: Look for our test results {{ ndctl_meson_testlog | basename }}
-  tags: [ 'ndctl', 'cxl-test-meson', 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["ndctl", "cxl-test-meson", "copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ ndctl_data }}"
-    recurse: yes
+    recurse: true
     patterns:
       - "{{ ndctl_meson_testlog | basename }}"
   register: output_log_files
 
 - name: Copy over our test result into {{ cxl_results_target }}
-  tags: [ 'ndctl', 'cxl-test-meson', 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["ndctl", "cxl-test-meson", "copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     item_with_target: "{{ item.path | basename }}"
   fetch:
     src: "{{ item.path }}"
     dest: "{{ cxl_results_target }}/{{ item_with_target }}"
-    flat: yes
+    flat: true
   with_items: "{{ output_log_files.files }}"
   loop_control:
     label: "Copying {{ item_with_target }} ..."
diff --git a/playbooks/roles/devconfig/defaults/main.yml b/playbooks/roles/devconfig/defaults/main.yml
index 246ebcc2..98dce312 100644
--- a/playbooks/roles/devconfig/defaults/main.yml
+++ b/playbooks/roles/devconfig/defaults/main.yml
@@ -10,8 +10,8 @@ dev_gitconfig_src: "~/.gitconfig"
 dev_gitconfig_dest: "{{ data_home_dir }}/.gitconfig"
 
 # The bash script we check for on the virtual machine
-dev_bash_config:  "{{ data_home_dir }}/.bashrc"
-dev_bash_config_root:  "/root/.bashrc"
+dev_bash_config: "{{ data_home_dir }}/.bashrc"
+dev_bash_config_root: "/root/.bashrc"
 
 dev_bash_config_hacks_name: "enhance-bash"
 dev_bash_config_hacks_src: "~/.{{ dev_bash_config_hacks_name }}"
@@ -19,42 +19,41 @@ dev_bash_config_hacks_generic: "~/.{{ dev_bash_config_hacks_name }}"
 dev_bash_config_hacks_dest: "{{ data_home_dir }}/.{{ dev_bash_config_hacks_name }}"
 dev_bash_config_hacks_root: "/root/.{{ dev_bash_config_hacks_name }}"
 
-devconfig_try_refresh_repos: False
-devconfig_try_upgrade: False
-devconfig_try_install_kdevtools: False
+devconfig_try_refresh_repos: false
+devconfig_try_upgrade: false
+devconfig_try_install_kdevtools: false
 
-devconfig_repos_addon: False
+devconfig_repos_addon: false
 devconfig_repos_addon_list:
-
-suse_register_system: False
+suse_register_system: false
 suse_registration_code: 0
 
-devconfig_enable_console: False
-devconfig_enable_kotd: False
-devconfig_has_kotd_repo: False
+devconfig_enable_console: false
+devconfig_enable_kotd: false
+devconfig_has_kotd_repo: false
 devconfig_kotd_repo: "http://ignore.com"
 devconfig_kotd_repo_name: "ignore"
-devconfig_enable_systemd_watchdog: False
+devconfig_enable_systemd_watchdog: false
 
-devconfig_enable_sysctl_tuning: False
-devconfig_enable_sysctl_mm_overcommit_memory: False
+devconfig_enable_sysctl_tuning: false
+devconfig_enable_sysctl_mm_overcommit_memory: false
 devconfig_sysctl_conf: "/etc/sysctl.conf"
 devconfig_sysctl_mm_overcommit_memory: 0
 
 rhel_org_id: ""
 rhel_activation_key: ""
 
-kdevops_cli_install: False
-devconfig_enable_systemd_journal_remote: False
+kdevops_cli_install: false
+devconfig_enable_systemd_journal_remote: false
 devconfig_systemd_journal_remote_url: "http://192.168.124.1"
 devconfig_systemd_journal_remote_path: "/var/log/journal/remote/"
 
-devconfig_enable_systemd_timesyncd: False
-devconfig_enable_systemd_timesyncd_ntp: False
-devconfig_enable_systemd_timesyncd_ntp_google: False
-devconfig_enable_systemd_timesyncd_ntp_debian: False
-devconfig_enable_systemd_timesyncd_ntp_google_debian: False
-kdevops_enable_guestfs: False
-guestfs_copy_sources_from_host_to_guest: False
-distro_debian_has_hop1_sources: False
-unattended_upgrades_installed: False
+devconfig_enable_systemd_timesyncd: false
+devconfig_enable_systemd_timesyncd_ntp: false
+devconfig_enable_systemd_timesyncd_ntp_google: false
+devconfig_enable_systemd_timesyncd_ntp_debian: false
+devconfig_enable_systemd_timesyncd_ntp_google_debian: false
+kdevops_enable_guestfs: false
+guestfs_copy_sources_from_host_to_guest: false
+distro_debian_has_hop1_sources: false
+unattended_upgrades_installed: false
diff --git a/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml b/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
index d86196f1..a8e67778 100644
--- a/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
+++ b/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
@@ -6,7 +6,7 @@
     {{ topdir_path }}/scripts/get-distro-has-hop-count-sources.sh 1
   register: localhost_hop_count
   changed_when: false
-  ignore_errors: yes
+  ignore_errors: true
 
 - name: Extract hop1 mirror info from control host (DEB822 format)
   delegate_to: localhost
@@ -17,7 +17,7 @@
     fi
   register: localhost_hop1_mirror_deb822
   changed_when: false
-  ignore_errors: yes
+  ignore_errors: true
   when: localhost_hop_count.stdout == 'y'
 
 - name: Extract hop1 mirror info from control host (legacy format)
@@ -32,7 +32,7 @@
     fi
   register: localhost_hop1_mirror_legacy
   changed_when: false
-  ignore_errors: yes
+  ignore_errors: true
   when: localhost_hop_count.stdout == 'y'
 
 - name: Set hop1 mirror variables
@@ -60,7 +60,7 @@
     grep -E "^URIs:" /etc/apt/sources.list.d/debian.sources | head -1 | awk '{print $2}' | sed -E 's|https?://||' | cut -d'/' -f1
   register: apt_mirror_host_deb822
   changed_when: false
-  ignore_errors: yes
+  ignore_errors: true
   when: deb822_sources.stat.exists
 
 - name: Extract current APT mirror hostname (legacy format)
@@ -68,7 +68,7 @@
     grep -E "^deb\s+http" /etc/apt/sources.list | head -1 | awk '{print $2}' | sed 's|http://||' | cut -d'/' -f1
   register: apt_mirror_host_legacy
   changed_when: false
-  ignore_errors: yes
+  ignore_errors: true
   when: not deb822_sources.stat.exists
 
 - name: Set unified mirror hostname
@@ -82,7 +82,7 @@
     port: 80
     timeout: 10
   register: mirror_connectivity
-  ignore_errors: yes
+  ignore_errors: true
   when: apt_mirror_host.stdout != ""
 
 - name: Display mirror check results
@@ -100,7 +100,7 @@
         port: 80
         timeout: 10
       register: hop1_mirror_connectivity
-      ignore_errors: yes
+      ignore_errors: true
       when:
         - has_hop1_mirror is defined
         - has_hop1_mirror | bool
@@ -112,12 +112,12 @@
           copy:
             src: "{{ item }}"
             dest: "{{ item }}.backup"
-            remote_src: yes
-          become: yes
+            remote_src: true
+          become: true
           loop:
             - /etc/apt/sources.list
             - /etc/apt/sources.list.d/debian.sources
-          ignore_errors: yes
+          ignore_errors: true
 
         - name: Apply hop1 mirror configuration using DEB822 format
           template:
@@ -125,21 +125,21 @@
             dest: /etc/apt/sources.list.d/debian.sources
             owner: root
             group: root
-            mode: '0644'
-          become: yes
+            mode: "0644"
+          become: true
 
         - name: Remove legacy sources.list if migrating to DEB822
           file:
             path: /etc/apt/sources.list
             state: absent
-          become: yes
+          become: true
           when: not deb822_sources.stat.exists
 
         - name: Update APT cache with hop1 mirror
           apt:
-            update_cache: yes
+            update_cache: true
             cache_valid_time: 0
-          become: yes
+          become: true
 
         - name: Inform user about hop1 mirror usage
           debug:
@@ -161,16 +161,16 @@
       copy:
         src: /etc/apt/sources.list.d/debian.sources
         dest: /etc/apt/sources.list.d/debian.sources.backup
-        remote_src: yes
-      become: yes
+        remote_src: true
+      become: true
       when: deb822_sources.stat.exists
 
     - name: Backup current sources (legacy format)
       copy:
         src: /etc/apt/sources.list
         dest: /etc/apt/sources.list.backup
-        remote_src: yes
-      become: yes
+        remote_src: true
+      become: true
       when: not deb822_sources.stat.exists
 
     - name: Apply Debian testing fallback sources using modern DEB822 format
@@ -179,21 +179,21 @@
         dest: /etc/apt/sources.list.d/debian.sources
         owner: root
         group: root
-        mode: '0644'
-      become: yes
+        mode: "0644"
+      become: true
 
     - name: Remove legacy sources.list if migrating to DEB822
       file:
         path: /etc/apt/sources.list
         state: absent
-      become: yes
+      become: true
       when: not deb822_sources.stat.exists
 
     - name: Update APT cache after mirror change
       apt:
-        update_cache: yes
+        update_cache: true
         cache_valid_time: 0
-      become: yes
+      become: true
 
     - name: Inform user about mirror fallback
       debug:
diff --git a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml
index 68ef9fb7..184f2b8a 100644
--- a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml
+++ b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml
@@ -1,3 +1,4 @@
+---
 - name: Distribution specific setup
   import_tasks: redhat/main.yml
   when:
diff --git a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml
index 93f40faa..0da05c92 100644
--- a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml
+++ b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml
@@ -1,19 +1,20 @@
+---
 - name: Add custom repositories
-  become: yes
+  become: true
   become_method: sudo
   copy:
     src: "{{ item }}"
     dest: "/etc/yum.repos.d/{{ item | basename }}"
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
   with_items: "{{ kdevops_devconfig_custom_repos | trim | split(',') }}"
   when:
     - kdevops_devconfig_custom_repos
     - kdevops_devconfig_custom_repos | trim | length > 1
 
 - name: Install custom packages
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name: "{{ item }}"
diff --git a/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml b/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml
index ef9580b3..aced29ec 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml
@@ -27,14 +27,14 @@
   tags: firstconfig
 
 - name: Stop and disable unattended-upgrades related services
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   systemd:
     name: "{{ item }}"
     state: stopped
-    enabled: no
-    daemon_reload: yes
+    enabled: false
+    daemon_reload: true
   loop:
     - unattended-upgrades
     - apt-daily.service
@@ -42,11 +42,11 @@
     - apt-daily-upgrade.service
     - apt-daily-upgrade.timer
     - systemd-networkd-wait-online.service
-  ignore_errors: yes
+  ignore_errors: true
   tags: firstconfig
 
 - name: Update apt cache accepting release info changes
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command:
     cmd: apt-get update --allow-releaseinfo-change
@@ -55,7 +55,7 @@
   tags: firstconfig
 
 - name: Upgrade Packages
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.apt:
     update_cache: false
@@ -68,8 +68,8 @@
   tags: firstconfig
 
 - name: Remove unattended-upgrades package in case upgrade installed it
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   apt:
     name: unattended-upgrades
@@ -81,8 +81,8 @@
   tags: firstconfig
 
 - name: Remove optional unattended-upgrades configuration files if they exist
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ item }}"
@@ -92,18 +92,18 @@
     - /etc/apt/apt.conf.d/02periodic
     - /etc/apt/apt.conf.d/50unattended-upgrades
     - /etc/apt/apt.conf.d/52unattended-upgrades-local
-  ignore_errors: yes
+  ignore_errors: true
   tags: firstconfig
 
 - name: Stop and disable unattended-upgrades related services
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   systemd:
     name: "{{ item }}"
     state: stopped
-    enabled: no
-    daemon_reload: yes
+    enabled: false
+    daemon_reload: true
   loop:
     - unattended-upgrades
     - apt-daily.service
@@ -111,17 +111,18 @@
     - apt-daily-upgrade.service
     - apt-daily-upgrade.timer
     - systemd-networkd-wait-online.service
-  ignore_errors: yes
+  ignore_errors: true
   tags: firstconfig
 
 - name: Allow for distro source change / upgrade
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  command: "apt-get update  --allow-releaseinfo-change -o Acquire::Check-Valid-Until=false -o Acquire::Check-Date=false -o Acquire::AllowInsecureRepositories=true -o Acquire::MaxDate=10"
+  command: "apt-get update  --allow-releaseinfo-change -o Acquire::Check-Valid-Until=false -o Acquire::Check-Date=false -o Acquire::AllowInsecureRepositories=true
+    -o Acquire::MaxDate=10"
   register: release_info_changed
   changed_when: release_info_changed.rc == 0
-  tags: [ 'apt', 'release-info-change' ]
+  tags: ["apt", "release-info-change"]
   when:
     - devconfig_try_upgrade|bool
 
@@ -135,8 +136,8 @@
     - guestfs_copy_sources_from_host_to_guest|bool
 
 - name: Write custom nsswitch.conf for hop1 mirror heuristic
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.copy:
     content: |
@@ -155,7 +156,7 @@
     dest: /etc/nsswitch.conf
     owner: root
     group: root
-    mode: '0644'
+    mode: "0644"
   when:
     - distro_debian_has_hop1_sources|bool
     - guestfs_copy_sources_from_host_to_guest|bool
@@ -164,7 +165,7 @@
 - name: Configure APT to ignore `Valid-Until` timestamps on the host
   delegate_to: localhost
   run_once: true
-  become: yes
+  become: true
   become_method: sudo
   copy:
     content: |
@@ -178,7 +179,7 @@
     - guestfs_copy_sources_from_host_to_guest|bool
 
 - name: Configure APT to ignore `Valid-Until` timestamps on the target node
-  become: yes
+  become: true
   become_method: sudo
   copy:
     content: |
@@ -194,43 +195,43 @@
 - name: Ensure we make Valid-Until trick take effect on host
   delegate_to: localhost
   run_once: true
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   when:
     - distro_debian_has_hop1_sources|bool
     - guestfs_copy_sources_from_host_to_guest|bool
 
 - name: Ensure we make Valid-Until trick take effect on target node
-  become: yes
+  become: true
   become_method: sudo
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   apt:
-    update_cache: yes
+    update_cache: true
   when:
     - distro_debian_has_hop1_sources|bool
     - guestfs_copy_sources_from_host_to_guest|bool
 
 - name: Update apt cache and do dist-upgrade
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
     upgrade: full
-  tags: [ 'apt', 'cache' ]
+  tags: ["apt", "cache"]
   when:
     - devconfig_try_upgrade|bool
 
 - name: Reboot system to make the new kernel and modules take effect
-  become: yes
+  become: true
   become_method: sudo
   reboot:
   when:
     - devconfig_try_upgrade|bool
 
 - name: Install our generic dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -264,13 +265,13 @@
       - trace-cmd
       - linux-perf
     state: present
-    update_cache: yes
-  tags: [ 'kdevops', 'deps' ]
+    update_cache: true
+  tags: ["kdevops", "deps"]
   when:
     - devconfig_try_install_kdevtools|bool
 
 - name: Set up snmp
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: snmpd.conf
@@ -280,18 +281,18 @@
   tags: snmpd
 
 - name: Enable snmpd service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: snmpd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
   tags: snmpd
   when:
     - devconfig_try_install_kdevtools|bool
 
 - name: Start snmpd service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: snmpd
@@ -301,7 +302,7 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Install and sets up kdump
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -311,18 +312,18 @@
   tags: kdump
 
 - name: Install systemd-journal-remote
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
       - systemd-journal-remote
-    update_cache: yes
+    update_cache: true
   when:
     - devconfig_enable_systemd_journal_remote|bool
   tags: journal
 
 - name: Install systemd-timesyncd
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
diff --git a/playbooks/roles/devconfig/tasks/install-deps/main.yml b/playbooks/roles/devconfig/tasks/install-deps/main.yml
index bd5fa6d4..9dcbab3c 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/main.yml
@@ -8,19 +8,19 @@
 
 - name: Import optional user secret specific variables
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "secret.yml"
+        - "secret.yml"
       skip: true
   tags: vars
 
 - name: Import optional distribution specific variables
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family']|lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml b/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
index 6c38d55c..f18cc5b8 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 # Install dependenciesfor oscheck on Red Hat based systems
 
 - name: Register system with Red Hat
-  become: yes
+  become: true
   community.general.redhat_subscription:
     state: present
     org_id: "{{ rhel_org_id }}"
@@ -20,14 +20,14 @@
   when: devconfig_custom_yum_repofile
 
 - name: Add custom yum repo
-  become: yes
+  become: true
   become_method: sudo
   copy:
     src: "{{ devconfig_custom_yum_repofile }}"
     dest: "/etc/yum.repos.d/{{ devconfig_custom_yum_repofile | basename }}"
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
   when:
     - devconfig_custom_yum_repofile
     - custom_repofile.stat.exists
@@ -51,11 +51,11 @@
     state: present
 
 - name: Refresh cache and upgrade all present packages
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
-    name: '*'
+    update_cache: true
+    name: "*"
     state: latest
   retries: 3
   delay: 5
@@ -65,7 +65,7 @@
     - devconfig_try_upgrade|bool
 
 - name: Reboot system to make the new kernel and modules take effect
-  become: yes
+  become: true
   become_method: sudo
   reboot:
   when:
@@ -129,10 +129,10 @@
     - ansible_facts['os_family']|lower == 'redhat' or ansible_facts['distribution_major_version'] | int >= 8
 
 - name: Install packages we typically care about
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
@@ -142,7 +142,7 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Set up snmp
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: snmpd.conf
@@ -152,18 +152,18 @@
   tags: snmpd
 
 - name: Enable snmpd service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: snmpd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
   tags: snmpd
   when:
     - devconfig_try_install_kdevtools|bool
 
 - name: Start snmpd service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: snmpd
@@ -173,10 +173,10 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Install systemd-journal-remote
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "systemd-journal-remote"
   retries: 3
   delay: 5
@@ -188,10 +188,10 @@
   tags: journal
 
 - name: Install systemd-timesyncd
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: systemd-udev
   retries: 3
   delay: 5
diff --git a/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml b/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml
index 5c723370..cfebb587 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml
@@ -4,7 +4,7 @@
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier
   set_fact:
@@ -23,26 +23,26 @@
     is_sle15sp4: '{{ ansible_distribution_version == "15.4" }}'
   when:
     - is_sle|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle12sp5: False
-    is_sle15sp2: False
-    is_sle15sp3: False
-    is_sle15sp4: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle12sp5: false
+    is_sle15sp2: false
+    is_sle15sp3: false
+    is_sle15sp4: false
   when:
     - not is_sle|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume we have figured out how to add repos for each
   set_fact:
@@ -56,7 +56,7 @@
     - not devconfig_repos_addon|bool
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume we are not on sle11 or sle10
   set_fact:
@@ -69,12 +69,12 @@
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume all distros supports nvme-utils
   set_fact:
     lacks_nvme_utils: false
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Does this release lack nvme-utils
   set_fact:
@@ -82,12 +82,12 @@
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool or is_sle12sp1|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume all distros supports git-core
   set_fact:
     lacks_git_core: false
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Does this release lack git-core
   set_fact:
@@ -95,12 +95,12 @@
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool or is_sle12sp1|bool or is_sle12sp3|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Does this release use the package name git assume false
   set_fact:
     use_git_package: false
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 # This needs perl-Error, so fix that first
 - name: Does this release use the package name git
@@ -110,12 +110,12 @@
     - is_sle|bool
     - is_sle12sp3|bool
     - false
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume all distros supports xfsdump
   set_fact:
     lacks_xfsdump: false
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Does this release lack xfsdump
   set_fact:
@@ -123,12 +123,12 @@
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume all distros have fio on the main repo
   set_fact:
-    lacks_fio_main_repo: False
-  tags: [ 'vars' ]
+    lacks_fio_main_repo: false
+  tags: ["vars"]
 
 # SLES12-SP1 has fio but on ses/2.1/x86_64 repo, and you need another
 # registration key for that. We simply skip fio on it, but only if
@@ -136,23 +136,23 @@
 # be available.
 - name: Does this release lack fio on the main repository
   set_fact:
-    lacks_fio_main_repo: True
+    lacks_fio_main_repo: true
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool or is_sle12sp1|bool or is_sle12sp3|bool or is_sle12sp5|bool
     - suse_register_system|bool or devconfig_repos_addon|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Verify SLE/SLED systems are being registered
   fail:
     msg: "System is SLE/SLED, must include SUSE registration info on playbooks/secret.yml with suse_register_system and suse_registration_code variables set."
   when:
     - not devconfig_repos_addon|bool
-    - 'is_sle|bool'
-    - 'not suse_register_system|bool'
+    - "is_sle|bool"
+    - "not suse_register_system|bool"
 
 - name: Prepare packages source list and register machine
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/prepare_suse_repos.sh --register-system-code {{ suse_registration_code }}"
@@ -163,28 +163,28 @@
 
 - name: Assume we have the python2 product for sles15sp first
   set_fact:
-    sle15_has_python2_product: True
+    sle15_has_python2_product: true
   when:
     - suse_register_system|bool
     - repos_will_be_added|bool
     - suse_registration_code != 0
     - is_sle15|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Disable the python2 product for sles15sp4
   set_fact:
-    sle15_has_python2_product: False
+    sle15_has_python2_product: false
   when:
     - suse_register_system|bool
     - repos_will_be_added|bool
     - suse_registration_code != 0
     - is_sle15|bool
     - is_sle15sp4|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 
 - name: Register for python2 module product when needed
-  become: yes
+  become: true
   become_method: sudo
   command: "SUSEConnect -p sle-module-python2/{{ ansible_distribution_version }}/{{ ansible_architecture }}"
   when:
@@ -195,7 +195,7 @@
     - sle15_has_python2_product|bool
 
 - name: Add extra addon repositories when enabled
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh {{ item.url }} {{ item.name }}"
@@ -207,11 +207,11 @@
     - devconfig_repos_addon|bool
 
 - name: Install missing python-xml for releases that need it manually
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: "zypper in -y python-xml"
-    warn: no
+    warn: false
   when:
     - (suse_register_system|bool and suse_registration_code != 0) or devconfig_repos_addon|bool
     - repos_will_be_added|bool
@@ -219,7 +219,7 @@
     - is_sle15|bool
 
 - name: Prepare packages source list
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/prepare_suse_repos.sh"
@@ -229,17 +229,17 @@
     - repos_will_be_added|bool
 
 - name: Do full upgrade
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     state: dist-upgrade
-    name: '*'
+    name: "*"
   when:
     - repos_will_be_added|bool
     - devconfig_try_upgrade|bool
 
 - name: Reboot system to make the new kernel and modules take effect
-  become: yes
+  become: true
   become_method: sudo
   reboot:
   when:
@@ -247,7 +247,7 @@
     - devconfig_try_upgrade|bool
 
 - name: Install nvme tools
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -259,7 +259,7 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Install fio when possible
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -271,7 +271,7 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Install git-core when possible
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -283,7 +283,7 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Install git when possible
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -295,7 +295,7 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Install xfsdump when possible
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -307,7 +307,7 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Install packages on newer distro when possible
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -322,7 +322,7 @@
 
 # sle12sp3 needs m4 to install flex, fix that first
 - name: Install packages not available on sle11 or sle10
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -338,7 +338,7 @@
 
 # fix this for sle12sp3
 - name: Install packages we typically care about
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -368,20 +368,20 @@
 
 - name: Set default values for if we install snmp / kdump
   set_fact:
-    install_snmp: False
-    install_kdump: False
-  tags: [ 'vars' ]
+    install_snmp: false
+    install_kdump: false
+  tags: ["vars"]
 
 - name: Set if we install snmp / kdump
   set_fact:
-    install_snmp: True
-    install_kdump: True
+    install_snmp: true
+    install_kdump: true
   when:
     - is_sle15|bool or is_tumbleweed
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Install snmp
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -393,7 +393,7 @@
   tags: snmpd
 
 - name: Set up snmp
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: snmpd.conf
@@ -405,12 +405,12 @@
   tags: snmpd
 
 - name: Enable snmpd service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: snmpd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
   when:
     - install_snmp|bool
     - repos_will_be_added|bool
@@ -418,7 +418,7 @@
   tags: snmpd
 
 - name: Start snmpd service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: snmpd
@@ -430,7 +430,7 @@
   tags: snmpd
 
 - name: Install kdump
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -442,8 +442,8 @@
   tags: kdump
 
 - name: Get kdump calibration high
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   shell: kdumptool calibrate | grep ^High | awk '{print $2}'
   register: kdump_high
@@ -454,8 +454,8 @@
   tags: kdump
 
 - name: Get kdump calibration low
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   shell: kdumptool calibrate | grep ^Low | awk '{print $2}'
   register: kdump_low
@@ -466,36 +466,36 @@
   tags: kdump
 
 - name: Check to see if kdump is configured on your GRUB config
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: kdump_grep
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)(\s*)crashkernel(.*)'
-    line: ''
-  check_mode: yes
+    line: ""
+  check_mode: true
   when:
     - install_kdump|bool
     - repos_will_be_added|bool
     - devconfig_try_install_kdevtools|bool
-  tags: [ 'kdump' ]
+  tags: ["kdump"]
 
 - name: Update GRUB configuration to add kdump knobs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")((\s*)(.*)*)(\s*)"$'
-    backrefs: yes
+    backrefs: true
     line: '\1\2 crashkernel={{ kdump_high.stdout }}M,high crashkernel={{ kdump_low.stdout }}M,low"'
   when:
     - not kdump_grep.changed
     - install_kdump|bool
     - repos_will_be_added|bool
     - devconfig_try_install_kdevtools|bool
-  tags: [ 'kdump' ]
+  tags: ["kdump"]
 
 - name: Update your boot GRUB file if necessary
   import_tasks: update-grub/main.yml
@@ -506,18 +506,18 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Reboot system to ensure kdump is effective
-  become: yes
+  become: true
   become_method: sudo
   reboot:
-  tags: [ 'kdump' ]
+  tags: ["kdump"]
 
 - name: Enable kdump service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: kdump
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
   when:
     - install_kdump|bool
     - repos_will_be_added|bool
@@ -525,7 +525,7 @@
   tags: kdump
 
 - name: Start kdump service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: kdump
@@ -537,7 +537,7 @@
   tags: kdump
 
 - name: Install systemd-journal-remote
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -548,7 +548,7 @@
   tags: journal
 
 - name: Install systemd-timesyncd
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml
index 914bb97c..60b7187d 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml
@@ -1,29 +1,29 @@
 ---
 - name: Allow for distro source change / upgrade
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "apt-get update  --allow-releaseinfo-change"
   register: release_info_changed
   changed_when: "release_info_changed.rc == 0"
   args:
-    warn: no
-  tags: [ 'apt', 'release-info-change' ]
+    warn: false
+  tags: ["apt", "release-info-change"]
   when:
     - devconfig_try_upgrade|bool
 
 - name: Update apt cache and do dist-upgrade
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
     upgrade: full
-  tags: [ 'apt', 'cache' ]
+  tags: ["apt", "cache"]
   when:
     - devconfig_try_upgrade|bool
 
 - name: Reboot system to make the new kernel and modules take effect
-  become: yes
+  become: true
   become_method: sudo
   reboot:
   when:
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
index f453afb2..146d2058 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
@@ -1,36 +1,37 @@
 ---
 - name: Import optional user secret specific variables
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "secret.yml"
+        - "secret.yml"
       skip: true
   tags: vars
 
 - name: Import optional distribution specific variables
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family']|lower }}.yml"
       skip: true
   tags: vars
 
 - name: Set the path where we collect our kotd updates
   set_fact:
     kotd_uname_before: "../.kotd.uname-before.txt"
-    kotd_uname_after:  "../.kotd.uname-after.txt"
-  tags: [ 'vars' ]
+    kotd_uname_after: "../.kotd.uname-after.txt"
+  tags: ["vars"]
 
 - name: Get used target kernel version prior to reving kernel
-  tags: [ 'kotd' ]
+  tags: ["kotd"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Document used target kernel version prior to reving kernel
-  local_action: "shell echo {{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') }} > {{ kotd_uname_before }}"
-  tags: [ 'kotd' ]
+  shell: echo {{ uname_cmd.stdout_lines | regex_replace('\]') | regex_replace('\[') }} > {{ kotd_uname_before }}
+  delegate_to: localhost
+  tags: ["kotd"]
   run_once: true
 
 # tasks to setup up repos, register system if needed and install
@@ -50,18 +51,19 @@
     - devconfig_try_refresh_repos|bool
 
 - name: Check kernel uname
-  tags: [ 'kotd' ]
+  tags: ["kotd"]
   debug:
     msg: "Running kernel {{ running_kernel }}"
   vars:
     running_kernel: "{{ uname_cmd.stdout_lines.0 }}"
 
 - name: Get used target kernel version after reving kernel
-  tags: [ 'kotd' ]
+  tags: ["kotd"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Document used target kernel version after reving kernel
-  local_action: "shell echo {{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') }} > {{ kotd_uname_after }}"
-  tags: [ 'kotd' ]
+  shell: echo {{ uname_cmd.stdout_lines | regex_replace('\]') | regex_replace('\[') }} > {{ kotd_uname_after }}
+  delegate_to: localhost
+  tags: ["kotd"]
   run_once: true
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml
index a23af0f3..53937616 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Add KOTD repository
-  become: yes
+  become: true
   become_method: sudo
   get_url:
     url: "{{ devconfig_kotd_repo }}"
@@ -10,10 +10,10 @@
     - devconfig_has_kotd_repo|bool
 
 - name: Parse repository id from repo file
-  become: yes
+  become: true
   become_method: sudo
   vars:
-    repo_file: '{{ devconfig_kotd_repo | basename }}'
+    repo_file: "{{ devconfig_kotd_repo | basename }}"
   shell: grep -E '\[.*\]' /etc/yum.repos.d/{{ repo_file }} | tr -d '[]'
   register: result
   changed_when: false
@@ -22,10 +22,10 @@
     - devconfig_has_kotd_repo|bool
 
 - name: Get kernel version from repository-packages
-  become: yes
+  become: true
   become_method: sudo
   vars:
-    repo_id: '{{ result.stdout }}'
+    repo_id: "{{ result.stdout }}"
   shell: dnf -q --repo={{ repo_id }} repoquery --qf "%{version}-%{release}" kernel.x86_64
   register: result
   changed_when: false
@@ -34,14 +34,14 @@
     - devconfig_has_kotd_repo|bool
 
 - name: Install KOTD
-  become: yes
+  become: true
   become_method: sudo
   vars:
-    kernel_version: '{{ result.stdout }}'
-    arch: 'x86_64'
+    kernel_version: "{{ result.stdout }}"
+    arch: "x86_64"
   ansible.builtin.dnf:
-    update_cache: yes
-    name: 'kernel-{{ kernel_version }}.{{ arch }}'
+    update_cache: true
+    name: "kernel-{{ kernel_version }}.{{ arch }}"
     disable_gpg_check: true
     sslverify: false
     state: present
@@ -50,7 +50,7 @@
     - devconfig_has_kotd_repo|bool
 
 - name: Reboot system to make the new kernel and modules take effect
-  become: yes
+  become: true
   become_method: sudo
   reboot:
   when:
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml
index a0c78d97..51705004 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml
@@ -4,7 +4,7 @@
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier
   set_fact:
@@ -22,25 +22,25 @@
     is_sle15sp3: '{{ ansible_distribution_version == "15.3" }}'
   when:
     - is_sle|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle12sp5: False
-    is_sle15sp2: False
-    is_sle15sp3: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle12sp5: false
+    is_sle15sp2: false
+    is_sle15sp3: false
   when:
     - not is_sle|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume we can add repos for a release
   set_fact:
@@ -53,7 +53,7 @@
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: The default is to assume we are not on sle11 or sle10
   set_fact:
@@ -66,10 +66,10 @@
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Add extra addon repositories when enabled
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh {{ devconfig_kotd_repo }} {{ devconfig_kotd_repo_name }}"
@@ -77,26 +77,26 @@
     - devconfig_enable_kotd|bool
     - repos_can_be_added|bool
     - devconfig_has_kotd_repo|bool
-  tags: [ 'kotd' ]
+  tags: ["kotd"]
 
 - name: Install kotd
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
       - kernel-default
-    update_cache: yes
-    allow_vendor_change: yes
-    disable_recommends: no
-    force_resolution: yes
+    update_cache: true
+    allow_vendor_change: true
+    disable_recommends: false
+    force_resolution: true
     state: latest
-    force: yes
+    force: true
   when:
     - devconfig_enable_kotd|bool
-  tags: [ 'kotd' ]
+  tags: ["kotd"]
 
 - name: Reboot into kotd
-  tags: [ 'kotd' ]
-  become: yes
+  tags: ["kotd"]
+  become: true
   become_method: sudo
   reboot:
diff --git a/playbooks/roles/devconfig/tasks/main.yml b/playbooks/roles/devconfig/tasks/main.yml
index c7bb5352..fda2f730 100644
--- a/playbooks/roles/devconfig/tasks/main.yml
+++ b/playbooks/roles/devconfig/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars,vars_simple,vars_extra
 
@@ -21,8 +21,8 @@
 # that occurs during the distro-specific tasks
 
 - name: Ensure /etc/hostname is set
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: hostname
@@ -31,7 +31,7 @@
 
 - name: Ensure locales-all package is installed
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.package:
     name: locales-all
@@ -42,26 +42,26 @@
 
 - name: Configure en_US.UTF-8 locale files
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.lineinfile:
     path: "{{ item.path }}"
     line: "{{ item.line }}"
     create: true
-    mode: '0644'
+    mode: "0644"
     owner: root
     group: root
   loop:
-    - { path: '/etc/default/locale', line: 'LANG=en_US.UTF-8' }
-    - { path: '/etc/default/locale', line: 'LANGUAGE=en_US:en' }
-    - { path: '/etc/locale.gen', line: 'en_US.UTF-8 UTF-8' }
+    - { path: "/etc/default/locale", line: "LANG=en_US.UTF-8" }
+    - { path: "/etc/default/locale", line: "LANGUAGE=en_US:en" }
+    - { path: "/etc/locale.gen", line: "en_US.UTF-8 UTF-8" }
   when:
     - ansible_facts['os_family']|lower == 'debian'
   tags: firstconfig
 
 - name: Generate and update locales
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.shell: |
     locale-gen en_US.UTF-8
@@ -82,7 +82,7 @@
 
 - name: Install dependencies
   ansible.builtin.include_tasks: install-deps/main.yml
-  tags: ['vars', 'vars_simple']
+  tags: ["vars", "vars_simple"]
 
 - name: Configure custom repositories and install packages
   ansible.builtin.import_tasks: config-custom-repos-and-packages/main.yml
@@ -103,7 +103,7 @@
   file:
     path: "{{ dev_gitconfig_src }}"
     state: touch
-    mode: '0644'
+    mode: "0644"
   when:
     - mirror_dir.stat.exists
   run_once: true
@@ -127,30 +127,23 @@
 
 - name: Check if the developer has a git config
   delegate_to: localhost
-  stat:
-    path={{ dev_gitconfig_src }}
+  stat: path={{ dev_gitconfig_src }}
   run_once: true
   register: dev_git_config_file
 
 - name: Copy the developer's gitconfig *if* it exists
-  copy:
-    src={{ dev_gitconfig_src }}
-    dest={{ dev_gitconfig_dest }}
+  copy: src={{ dev_gitconfig_src }} dest={{ dev_gitconfig_dest }}
   when: dev_git_config_file.stat.exists
 
 - name: Copy the developer's gitconfig *if* it exists to root
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  copy:
-    src={{ dev_gitconfig_dest }}
-    dest=/root/
-    remote_src=yes
+  copy: src={{ dev_gitconfig_dest }} dest=/root/ remote_src=yes
   when: dev_git_config_file.stat.exists
 
 - name: Check if the system has a user vimrc file
-  stat:
-    path=~/.vimrc
+  stat: path=~/.vimrc
   register: dev_vimrc_file
   tags: vimrc
 
@@ -162,17 +155,16 @@
   when: not dev_vimrc_file.stat.exists
 
 - name: Check if the system has a user vimrc file as root
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  stat:
-    path=~/.vimrc
+  stat: path=~/.vimrc
   register: dev_root_vimrc_file
   tags: vimrc
 
 - name: Copy over our default kernel hacking vimrc for root
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: vimrc
@@ -182,14 +174,11 @@
 
 - name: Check if the developer has a configuration file with favorite bash hacks
   delegate_to: localhost
-  stat:
-    path={{ dev_bash_config_hacks_src }}
+  stat: path={{ dev_bash_config_hacks_src }}
   register: dev_bash_config_file
 
 - name: Copy the developer's favorite bash hacks over *if* it exists
-  copy:
-    src={{ dev_bash_config_hacks_src }}
-    dest={{ dev_bash_config_hacks_dest }}
+  copy: src={{ dev_bash_config_hacks_src }} dest={{ dev_bash_config_hacks_dest }}
   when: dev_bash_config_file.stat.exists
   register: dev_bash_config_file_copied
 
@@ -210,18 +199,16 @@
   when: dev_bash_config_file_copied is success
 
 - name: Copy the developer's favorite bash hacks over for root *if* it exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  copy:
-    src={{ dev_bash_config_hacks_src }}
-    dest=/root/
+  copy: src={{ dev_bash_config_hacks_src }} dest=/root/
   when: dev_bash_config_file.stat.exists
   register: dev_bash_config_file_copied_root
 
 - name: Source the developer's bash hack script for root
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   shell: |
     SOURCE_BASH_HACKS="test -s {{ dev_bash_config_hacks_generic }}  && . {{ dev_bash_config_hacks_generic }} || true"
@@ -239,131 +226,129 @@
   when: dev_bash_config_file_copied_root is success
 
 - name: Check to see if system has GRUB2
-  stat:
-    path=/etc/default/grub
+  stat: path=/etc/default/grub
   register: grub2_config_file
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if stupid /etc/default/grub.d/15_timeout.cfg exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  stat:
-    path=/etc/default/grub.d/15_timeout.cfg
+  stat: path=/etc/default/grub.d/15_timeout.cfg
   register: stupid_cloud_grub_timeout
   when:
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Remove stupid cloud /etc/default/grub.d/15_timeout.cfg
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: /etc/default/grub.d/15_timeout.cfg
     state: absent
   when:
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if the GRUB GRUB_CMDLINE_LINUX is present
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: grub_cmdline_linux_grep
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)'
-    line: ''
-  check_mode: yes
+    line: ""
+  check_mode: true
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if the GRUB GRUB_CMDLINE_LINUX is empty
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: cmdline_linux_empty_grep
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX)=\"\"'
-    line: ''
-  check_mode: yes
+    line: ""
+  check_mode: true
   when:
     - grub2_config_file.stat.exists
     - grub_cmdline_linux_grep.changed
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if the consoleblank is used
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: console_blank_grep
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)(\s*)consoleblank(.*)'
-    line: ''
-  check_mode: yes
+    line: ""
+  check_mode: true
   when:
     - grub2_config_file.stat.exists
     - grub_cmdline_linux_grep.changed
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if the console is already configured on your GRUB config
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: console_grep
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)(\s*)console(.*)'
-    line: ''
-  check_mode: yes
+    line: ""
+  check_mode: true
   when:
     - grub2_config_file.stat.exists
     - grub_cmdline_linux_grep.changed
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Update GRUB configuration to add console kernel parameters
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")((\s*)(.*)*)(\s*)"$'
-    backrefs: yes
+    backrefs: true
     line: '\1\2 {{ devconfig_kernel_console }}"'
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - not console_grep.changed
     - not cmdline_linux_empty_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Update GRUB configuration to add console kernel parameters for consoleblank configs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")((\s*)(.*)*)(\s*)"$'
-    backrefs: yes
+    backrefs: true
     line: '\1 {{ devconfig_kernel_console }}"'
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - console_blank_grep.changed|bool
     - not cmdline_linux_empty_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Add new GRUB console kernel parameters to your empty GRUB_CMDLINE_LINUX
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
@@ -376,11 +361,11 @@
     - devconfig_enable_console|bool
     - cmdline_linux_empty_grep.changed
     - not console_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Add new GRUB GRUB_CMDLINE_LINUX with console kernel parameters
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
@@ -391,85 +376,85 @@
     - grub2_config_file.stat.exists
     - not grub_cmdline_linux_grep.changed
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if the GRUB timeout is defined in your configuration
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: grub_timeout_grep
   lineinfile:
     path: /etc/default/grub
-    regexp: '^(GRUB_TIMEOUT=)(.*)'
-    line: ''
-  check_mode: yes
+    regexp: "^(GRUB_TIMEOUT=)(.*)"
+    line: ""
+  check_mode: true
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Update GRUB timeout
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
-    regexp: '^(GRUB_TIMEOUT=)(.*)'
-    line: 'GRUB_TIMEOUT={{ devconfig_grub_timeout }}'
+    regexp: "^(GRUB_TIMEOUT=)(.*)"
+    line: "GRUB_TIMEOUT={{ devconfig_grub_timeout }}"
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - grub_timeout_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Add GRUB timeout
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
     insertafter: EOF
-    regexp: '^(GRUB_TIMEOUT=)(.*)'
-    line: 'GRUB_TIMEOUT={{ devconfig_grub_timeout }}'
+    regexp: "^(GRUB_TIMEOUT=)(.*)"
+    line: "GRUB_TIMEOUT={{ devconfig_grub_timeout }}"
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - not grub_timeout_grep
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if the GRUB serial command is defined
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: serial_command_grep
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_SERIAL_COMMAND=\")(.*)\"\s*"'
-    line: ''
-  check_mode: yes
+    line: ""
+  check_mode: true
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Update GRUB configuration to add GRUB console parameters if set
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_SERIAL_COMMAND=\")((\s*)(.*)*)(\s*)"$'
-    backrefs: yes
+    backrefs: true
     line: '\1{{ devconfig_grub_console }}"'
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - serial_command_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Add GRUB console parameters
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
@@ -480,56 +465,56 @@
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - not serial_command_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Check to see if the GRUB terminal settings is defined
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: grub_terminal_grep
   lineinfile:
     path: /etc/default/grub
-    regexp: '^(GRUB_TERMINAL)=(.*)'
-    line: ''
-  check_mode: yes
+    regexp: "^(GRUB_TERMINAL)=(.*)"
+    line: ""
+  check_mode: true
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
-  tags: [ 'console' ]
+  tags: ["console"]
 
 # We use "console serial" so to enable real consoles to be
 # preferred first, and fallback to the serial as secondary
 # option. This let's us work with hardware serial consoles
 # say on IPMIs and virtual guests ('virsh console').
 - name: Update GRUB terminal to be serial
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
-    regexp: '^(GRUB_TERMINAL=)(.*)$'
-    backrefs: yes
+    regexp: "^(GRUB_TERMINAL=)(.*)$"
+    backrefs: true
     line: '\1"console serial"'
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - grub_terminal_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Add GRUB terminal setting
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/default/grub
     insertafter: EOF
-    regexp: '^(GRUB_TERMINAL=)(.*)$'
+    regexp: "^(GRUB_TERMINAL=)(.*)$"
     line: 'GRUB_TERMINAL="console serial"'
   when:
     - grub2_config_file.stat.exists
     - devconfig_enable_console|bool
     - not grub_terminal_grep.changed
-  tags: [ 'console' ]
+  tags: ["console"]
 
 - name: Update your boot GRUB file if necessary
   ansible.builtin.import_tasks: update-grub/main.yml
@@ -539,23 +524,23 @@
     - not console_grep.changed or console_blank_grep.changed
 
 - name: Set up the client /etc/systemd/journal-upload.conf
-  tags: [ 'journal' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "journal-upload.conf.j2"
     dest: "/etc/systemd/journal-upload.conf"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Enable and restart systemd-journal-upload.service on the client
-  tags: [ 'journal', 'journal-upload-restart' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal", "journal-upload-restart"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-journal-upload.service
@@ -566,10 +551,10 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Ensure systemd-journal-remote.service is running on the server
-  tags: [ 'journal-status' ]
+  tags: ["journal-status"]
   delegate_to: localhost
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-journal-remote.service
@@ -579,9 +564,9 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Ensure systemd-journal-upload.service is running
-  tags: [ 'journal-status' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal-status"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-journal-upload.service
@@ -590,30 +575,30 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Set up the client /etc/systemd/timesyncd.conf
-  tags: [ 'timesyncd' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["timesyncd"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "timesyncd.conf.j2"
     dest: "/etc/systemd/timesyncd.conf"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - devconfig_enable_systemd_timesyncd|bool
 
 - name: Enable NTP on client
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "timedatectl set-ntp true"
   when:
     - devconfig_enable_systemd_timesyncd_ntp|bool
 
 - name: Restart systemd-timesyncd.service on the client
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-timesyncd.service
@@ -624,15 +609,15 @@
     - devconfig_enable_systemd_timesyncd|bool
 
 - name: Ensure systemd-timesyncd.service is running on the client
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "timedatectl status"
   when:
     - devconfig_enable_systemd_timesyncd|bool
 
 - name: Gather ipv4 address
-  tags: [ 'journal_ln', 'vars_extra' ]
+  tags: ["journal_ln", "vars_extra"]
   setup:
     gather_subset:
       - "all_ipv4_addresses"
@@ -640,89 +625,86 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: "Group up facts we'll give to the host"
-  tags: [ 'journal_ln' ]
+  tags: ["journal_ln"]
   set_fact:
     node_host_ip: "{{ ansible_ssh_host}} {{ ansible_default_ipv4.address }}"
   delegate_facts: true
-  when:
-    devconfig_enable_systemd_journal_remote|bool
+  when: devconfig_enable_systemd_journal_remote|bool
 
 - name: Set up symlinks for journals
-  tags: [ 'journal_ln' ]
+  tags: ["journal_ln"]
   delegate_to: localhost
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ topdir_path }}/workflows/kdevops/scripts/jounal-ln.sh {{ devconfig_systemd_journal_remote_path }} {{ node_host_ip }}"
-  when:
-    devconfig_enable_systemd_journal_remote|bool
+  when: devconfig_enable_systemd_journal_remote|bool
 
 - name: Enables systemd's watchdog
-  stat:
-    path=/etc/systemd/system.conf
+  stat: path=/etc/systemd/system.conf
   register: systemd_config_file
-  tags: [ 'systemd_watchdog' ]
+  tags: ["systemd_watchdog"]
 
 - name: Add systemd watchdog RuntimeWatchdogSec setting
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/systemd/system.conf
     insertafter: EOF
-    regexp: '^(RuntimeWatchdogSec=)(.*)$'
-    line: 'RuntimeWatchdogSec={{ devconfig_systemd_watchdog_runtime_timeout }}'
+    regexp: "^(RuntimeWatchdogSec=)(.*)$"
+    line: "RuntimeWatchdogSec={{ devconfig_systemd_watchdog_runtime_timeout }}"
   when:
     - systemd_config_file.stat.exists
     - devconfig_enable_systemd_watchdog|bool
-  tags: [ 'systemd_watchdog' ]
+  tags: ["systemd_watchdog"]
 
 - name: Add systemd watchdog RebootWatchdogSec setting
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/systemd/system.conf
     insertafter: EOF
-    regexp: '^(RebootWatchdogSec=)(.*)$'
-    line: 'RebootWatchdogSec={{ devconfig_systemd_watchdog_reboot_timeout }}'
+    regexp: "^(RebootWatchdogSec=)(.*)$"
+    line: "RebootWatchdogSec={{ devconfig_systemd_watchdog_reboot_timeout }}"
   when:
     - systemd_config_file.stat.exists
     - devconfig_enable_systemd_watchdog|bool
-  tags: [ 'systemd_watchdog' ]
+  tags: ["systemd_watchdog"]
 
 - name: Add systemd watchdog KExecWatchdogSec setting
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/systemd/system.conf
     insertafter: EOF
-    regexp: '^(KExecWatchdogSec=)(.*)$'
-    line: 'KExecWatchdogSec={{ devconfig_systemd_watchdog_kexec_timeout }}'
+    regexp: "^(KExecWatchdogSec=)(.*)$"
+    line: "KExecWatchdogSec={{ devconfig_systemd_watchdog_kexec_timeout }}"
   when:
     - systemd_config_file.stat.exists
     - devconfig_enable_systemd_watchdog|bool
-  tags: [ 'systemd_watchdog' ]
+  tags: ["systemd_watchdog"]
 
 - name: Set sysctl vm.overcommit_memory={{ devconfig_sysctl_mm_overcommit_memory }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.posix.sysctl:
     name: vm.overcommit_memory
     sysctl_file: "{{ devconfig_sysctl_conf }}"
     value: "{{ devconfig_sysctl_mm_overcommit_memory }}"
     state: present
-    sysctl_set: yes
-    reload: yes
+    sysctl_set: true
+    reload: true
   when:
     - devconfig_enable_sysctl_tuning
     - devconfig_enable_sysctl_mm_overcommit_memory
-  tags: [ 'sysctl' ]
+  tags: ["sysctl"]
 
 - name: Rev the kernel to the latest distribution kotd
   ansible.builtin.import_tasks: kotd-rev-kernel/main.yml
   when:
     - devconfig_enable_kotd|bool
-  tags: [ 'kotd' ]
+  tags: ["kotd"]
diff --git a/playbooks/roles/fstests/defaults/main.yml b/playbooks/roles/fstests/defaults/main.yml
index 17a7e521..2e910232 100644
--- a/playbooks/roles/fstests/defaults/main.yml
+++ b/playbooks/roles/fstests/defaults/main.yml
@@ -3,9 +3,9 @@
 # Our sensible defaults for the fstests role.
 #
 # We default to not run tests.
-kdevops_run_fstests: False
-fstests_skip_run: False
-infer_uid_and_group: False
+kdevops_run_fstests: false
+fstests_skip_run: false
+infer_uid_and_group: false
 
 # Ror instance you can use "-g quick" but note that this may produce
 # not results as all quick tests may be expunded.
@@ -14,14 +14,14 @@ limit_tests: ""
 dynamic_limit_tests:
 badname_arg: ""
 
-fstests_start_after: False
+fstests_start_after: false
 fstests_start_after_test: ""
 
-fstests_skip_tests_enable: False
+fstests_skip_tests_enable: false
 fstests_skip_tests: ""
 fstests_skip_tests_args: ""
 
-fstests_initial_baseline: False
+fstests_initial_baseline: false
 fstests_initial_baseline_args: ""
 
 fstests_git: "https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git"
@@ -34,37 +34,35 @@ fstests_test_dev: "/dev/null"
 fstests_test_logdev: "/dev/null"
 fstests_test_logdev_mkfs_opts: "/dev/null"
 fstests_test_dev_zns: "/dev/null"
-fstests_zns_enabled: False
+fstests_zns_enabled: false
 
-fstests_soak_duration_enable: False
+fstests_soak_duration_enable: false
 fstests_soak_duration: 0
 
-fstests_journal: False
+fstests_journal: false
 
-fstests_uses_no_devices: False
-fstests_generate_simple_config_enable: False
-fstests_generate_nvme_live_config_enable: False
+fstests_uses_no_devices: false
+fstests_generate_simple_config_enable: false
+fstests_generate_nvme_live_config_enable: false
 
-fstests_testdev_under_development: False
-fstests_testdev_sparsefile_generation: False
-fstests_testdev_nvme_partition_euis: False
-fstests_testdev_nvme_euis: False
+fstests_testdev_under_development: false
+fstests_testdev_sparsefile_generation: false
+fstests_testdev_nvme_partition_euis: false
+fstests_testdev_nvme_euis: false
 
-fstests_testdev_nvme_fallback_model_serial: False
+fstests_testdev_nvme_fallback_model_serial: false
 
 nvmes:
 nvme_symlinks: []
-
-sparsefiles_generation: False
+sparsefiles_generation: false
 sparsefiles_size: 0
 sparsefiles_filename_prefix: "sparse-disk"
 fstests_test_dir: "/media/test"
 
-fstests_debug: False
+fstests_debug: false
 
-compile_dbench: False
+compile_dbench: false
 run_large_disk_tests:
-
 kdevops_fstests_setup_name: "kdevops_fstests_setup"
 kdevops_fstests_setup: ".{{ kdevops_fstests_setup_name }}"
 
@@ -79,123 +77,123 @@ fstests_scratch_devpool: "/dev/loop5 /dev/loop6 /dev/loop7 /dev/loop8 /dev/loop9
 fstests_scratch_devpool_rtlogdev: "/dev/loop5 /dev/loop6 /dev/loop7 /dev/loop8 /dev/loop9 /dev/loop10 /dev/loop11"
 fstests_scratch_devpool_zns: "/dev/nvme5n1 /dev/nvme6n1 /dev/nvme7n1 /dev/nvme8n1 /dev/nvme9n1 /dev/nvme10n1 /dev/nvme11n1 /dev/nvme12n1"
 
-run_auto_group_tests: 'n'
-run_custom_group_tests: ''
-exclude_test_groups: ''
-run_tests_on_failures: False
-fstests_debug_localhost: False
+run_auto_group_tests: "n"
+run_custom_group_tests: ""
+exclude_test_groups: ""
+run_tests_on_failures: false
+fstests_debug_localhost: false
 
-kdevops_bootlinux: False
+kdevops_bootlinux: false
 
-fstests_tfp_copy_enable: False
-fstests_tfp_copy_enable_list: False
+fstests_tfp_copy_enable: false
+fstests_tfp_copy_enable_list: false
 fstests_tfp_copy_size_limit_bytes: 10485760
 
-fstests_xfs_build_custom_xfsprogs: False
+fstests_xfs_build_custom_xfsprogs: false
 fstests_xfs_xfsprogs_data: "{{ data_path }}/xfsprogs"
-fstests_xfs_section_crc: False
-fstests_xfs_section_crc_logdev: False
-fstests_xfs_section_crc_rtdev: False
-fstests_xfs_section_crc_rtdev_extsize_28k: False
-fstests_xfs_section_crc_rtdev_extsize_64k: False
-fstests_xfs_section_crc_logdev_rtdev: False
-fstests_xfs_section_nocrc: False
-fstests_xfs_section_nocrc_512: False
-fstests_xfs_section_nocrc_1k: False
-fstests_xfs_section_nocrc_2k: False
-fstests_xfs_section_nocrc_4k: False
-fstests_xfs_section_nocrc_8k: False
-fstests_xfs_section_nocrc_8k_4ks: False
-fstests_xfs_section_nocrc_16k: False
-fstests_xfs_section_nocrc_16k_4ks: False
-fstests_xfs_section_nocrc_32k: False
-fstests_xfs_section_nocrc_32k_4ks: False
-fstests_xfs_section_nocrc_64k: False
-fstests_xfs_section_nocrc_64k_4ks: False
-fstests_xfs_section_reflink: False
-fstests_xfs_section_reflink_1024: False
-fstests_xfs_section_reflink_normapbt: False
-fstests_xfs_section_reflink_stripe_len: False
-fstests_xfs_section_reflink_nrext64: False
-fstests_xfs_section_reflink_logdev: False
-fstests_xfs_section_reflink_2k: False
-fstests_xfs_section_reflink_4k: False
-fstests_xfs_section_reflink_8k: False
-fstests_xfs_section_reflink_8k_4ks: False
-fstests_xfs_section_reflink_16k: False
-fstests_xfs_section_reflink_16k_4ks: False
-fstests_xfs_section_reflink_32k: False
-fstests_xfs_section_reflink_32k_4ks: False
-fstests_xfs_section_reflink_64k: False
-fstests_xfs_section_reflink_64k_4ks: False
-fstests_xfs_section_reflink_dir_bsize_8k: False
-
-fstests_xfs_section_bigblock: False
-
-fstests_btrfs_enables_raid56: False
-fstests_btrfs_enables_compression: False
-fstests_btrfs_enables_compression_zlib: False
-fstests_btrfs_enables_compression_lzo: False
-fstests_btrfs_enables_compression_zstd: False
-fstests_btrfs_enables_holes: False
-fstests_btrfs_enables_noholes: False
-fstests_btrfs_enables_fspace: False
-fstests_btrfs_enables_nohofspace: False
-fstests_btrfs_section_holes: False
-fstests_btrfs_section_holes_zlib: False
-fstests_btrfs_section_holes_lzo: False
-fstests_btrfs_section_holes_zstd: False
-fstests_btrfs_section_noholes: False
-fstests_btrfs_section_noholes_zlib: False
-fstests_btrfs_section_noholes_lzo: False
-fstests_btrfs_section_noholes_zstd: False
-fstests_btrfs_section_fspace: False
-fstests_btrfs_section_fspace_dsync: False
-fstests_btrfs_section_fspace_zlib: False
-fstests_btrfs_section_fspace_lzo: False
-fstests_btrfs_section_fspace_zstd: False
-fstests_btrfs_section_nohofspace: False
-fstests_btrfs_section_nohofspace_zlib: False
-fstests_btrfs_section_nohofspace_lzo: False
-fstests_btrfs_section_nohofspace_zstd: False
-fstests_btrfs_section_simple: False
-fstests_btrfs_section_simple_zns: False
-
-fstests_nfs_enable: False
-fstests_nfs_use_kdevops_nfsd: False
-fstests_nfs_section_pnfs: False
-fstests_nfs_section_rdma: False
-fstests_nfs_section_tls: False
-fstests_nfs_section_nfsd: False
-fstests_nfs_section_default: False
-fstests_nfs_section_v42: False
-fstests_nfs_section_v41: False
-fstests_nfs_section_v40: False
-fstests_nfs_section_v3: False
-
-fstests_cifs_enable: False
-fstests_cifs_use_kdevops_smbd: False
-fstests_cifs_section_smb3: False
-fstests_cifs_section_smb3_seal: False
-fstests_cifs_section_smb3_sign: False
-
-fstests_tmpfs_enable: False
+fstests_xfs_section_crc: false
+fstests_xfs_section_crc_logdev: false
+fstests_xfs_section_crc_rtdev: false
+fstests_xfs_section_crc_rtdev_extsize_28k: false
+fstests_xfs_section_crc_rtdev_extsize_64k: false
+fstests_xfs_section_crc_logdev_rtdev: false
+fstests_xfs_section_nocrc: false
+fstests_xfs_section_nocrc_512: false
+fstests_xfs_section_nocrc_1k: false
+fstests_xfs_section_nocrc_2k: false
+fstests_xfs_section_nocrc_4k: false
+fstests_xfs_section_nocrc_8k: false
+fstests_xfs_section_nocrc_8k_4ks: false
+fstests_xfs_section_nocrc_16k: false
+fstests_xfs_section_nocrc_16k_4ks: false
+fstests_xfs_section_nocrc_32k: false
+fstests_xfs_section_nocrc_32k_4ks: false
+fstests_xfs_section_nocrc_64k: false
+fstests_xfs_section_nocrc_64k_4ks: false
+fstests_xfs_section_reflink: false
+fstests_xfs_section_reflink_1024: false
+fstests_xfs_section_reflink_normapbt: false
+fstests_xfs_section_reflink_stripe_len: false
+fstests_xfs_section_reflink_nrext64: false
+fstests_xfs_section_reflink_logdev: false
+fstests_xfs_section_reflink_2k: false
+fstests_xfs_section_reflink_4k: false
+fstests_xfs_section_reflink_8k: false
+fstests_xfs_section_reflink_8k_4ks: false
+fstests_xfs_section_reflink_16k: false
+fstests_xfs_section_reflink_16k_4ks: false
+fstests_xfs_section_reflink_32k: false
+fstests_xfs_section_reflink_32k_4ks: false
+fstests_xfs_section_reflink_64k: false
+fstests_xfs_section_reflink_64k_4ks: false
+fstests_xfs_section_reflink_dir_bsize_8k: false
+
+fstests_xfs_section_bigblock: false
+
+fstests_btrfs_enables_raid56: false
+fstests_btrfs_enables_compression: false
+fstests_btrfs_enables_compression_zlib: false
+fstests_btrfs_enables_compression_lzo: false
+fstests_btrfs_enables_compression_zstd: false
+fstests_btrfs_enables_holes: false
+fstests_btrfs_enables_noholes: false
+fstests_btrfs_enables_fspace: false
+fstests_btrfs_enables_nohofspace: false
+fstests_btrfs_section_holes: false
+fstests_btrfs_section_holes_zlib: false
+fstests_btrfs_section_holes_lzo: false
+fstests_btrfs_section_holes_zstd: false
+fstests_btrfs_section_noholes: false
+fstests_btrfs_section_noholes_zlib: false
+fstests_btrfs_section_noholes_lzo: false
+fstests_btrfs_section_noholes_zstd: false
+fstests_btrfs_section_fspace: false
+fstests_btrfs_section_fspace_dsync: false
+fstests_btrfs_section_fspace_zlib: false
+fstests_btrfs_section_fspace_lzo: false
+fstests_btrfs_section_fspace_zstd: false
+fstests_btrfs_section_nohofspace: false
+fstests_btrfs_section_nohofspace_zlib: false
+fstests_btrfs_section_nohofspace_lzo: false
+fstests_btrfs_section_nohofspace_zstd: false
+fstests_btrfs_section_simple: false
+fstests_btrfs_section_simple_zns: false
+
+fstests_nfs_enable: false
+fstests_nfs_use_kdevops_nfsd: false
+fstests_nfs_section_pnfs: false
+fstests_nfs_section_rdma: false
+fstests_nfs_section_tls: false
+fstests_nfs_section_nfsd: false
+fstests_nfs_section_default: false
+fstests_nfs_section_v42: false
+fstests_nfs_section_v41: false
+fstests_nfs_section_v40: false
+fstests_nfs_section_v3: false
+
+fstests_cifs_enable: false
+fstests_cifs_use_kdevops_smbd: false
+fstests_cifs_section_smb3: false
+fstests_cifs_section_smb3_seal: false
+fstests_cifs_section_smb3_sign: false
+
+fstests_tmpfs_enable: false
 fstests_tmpfs_test_dev: "/media/test"
 fstests_tmpfs_scratch_devpool: "/media/scratch"
-fstests_tmpfs_section_default: False
-fstests_tmpfs_enable_noswap: False
-fstests_tmpfs_section_noswap_huge_never: False
-fstests_tmpfs_section_noswap_huge_always: False
-fstests_tmpfs_section_noswap_huge_within_size: False
-fstests_tmpfs_section_noswap_huge_advise: False
-fstests_tmpfs_enable_huge: False
-fstests_tmpfs_section_huge_always: False
-fstests_tmpfs_section_huge_within_size: False
-fstests_tmpfs_section_huge_advise: False
-
-devconfig_enable_systemd_journal_remote: False
-
-fstests_xfsdump_build: False
+fstests_tmpfs_section_default: false
+fstests_tmpfs_enable_noswap: false
+fstests_tmpfs_section_noswap_huge_never: false
+fstests_tmpfs_section_noswap_huge_always: false
+fstests_tmpfs_section_noswap_huge_within_size: false
+fstests_tmpfs_section_noswap_huge_advise: false
+fstests_tmpfs_enable_huge: false
+fstests_tmpfs_section_huge_always: false
+fstests_tmpfs_section_huge_within_size: false
+fstests_tmpfs_section_huge_advise: false
+
+devconfig_enable_systemd_journal_remote: false
+
+fstests_xfsdump_build: false
 fstests_xfsdump_git: "https://github.com/linux-kdevops/xfsdump-dev.git"
 fstests_xfsdump_data: "{{ data_path }}/xfsdump"
 
diff --git a/playbooks/roles/fstests/handlers/main.yml b/playbooks/roles/fstests/handlers/main.yml
index 0b2342d2..5179f319 100644
--- a/playbooks/roles/fstests/handlers/main.yml
+++ b/playbooks/roles/fstests/handlers/main.yml
@@ -1,3 +1,4 @@
+---
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
   service: name="{{watchdog_service_name}}" state=restarted
diff --git a/playbooks/roles/fstests/tasks/install-deps/debian/main.yml b/playbooks/roles/fstests/tasks/install-deps/debian/main.yml
index 5ee79b95..44a7d91e 100644
--- a/playbooks/roles/fstests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/debian/main.yml
@@ -1,31 +1,31 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: linux
 
 - name: Install NVMe tools
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
       - nvme-cli
 
 - name: Install fstests build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -74,11 +74,11 @@
       - cifs-utils
       - duperemove
     state: present
-    update_cache: yes
-  tags: [ 'fstests', 'deps' ]
+    update_cache: true
+  tags: ["fstests", "deps"]
 
 - name: Install dependencies for building xfsprogs
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -93,4 +93,4 @@
       - libpcre2-dev
       - pkg-config
       - libblkid-dev
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
diff --git a/playbooks/roles/fstests/tasks/install-deps/main.yml b/playbooks/roles/fstests/tasks/install-deps/main.yml
index 72e0d48f..5cffe6b7 100644
--- a/playbooks/roles/fstests/tasks/install-deps/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Ensure required /media/ directories are created
-  become: yes
+  become: true
   become_method: sudo
   file:
     state: directory
diff --git a/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml b/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml
index 4e3825fc..815505b8 100644
--- a/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml
@@ -10,10 +10,10 @@
     - ansible_distribution != "Fedora"
 
 - name: Install build dependencies for fstests
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
@@ -74,10 +74,10 @@
       - ncurses-devel
 
 - name: Install xfsprogs-xfs_scrub
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
@@ -90,10 +90,10 @@
     - (ansible_facts['distribution'] != 'RedHat' and ansible_facts['distribution'] != 'CentOS') or ansible_facts['distribution_major_version']|int >= 9
 
 - name: Install btrfs-progs
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
@@ -105,8 +105,8 @@
   when: ansible_distribution == 'Fedora'
 
 - name: Install dependencies for building xfsprogs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   dnf:
     name: "{{ packages }}"
@@ -128,4 +128,4 @@
       - libsepol-devel
       - pcre2-devel
       - gcc-c++
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
diff --git a/playbooks/roles/fstests/tasks/install-deps/suse/main.yml b/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
index c4df15b9..eb1cc184 100644
--- a/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
@@ -25,19 +25,19 @@
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle12sp5: False
-    is_sle15sp2: False
-    is_sle15sp3: False
-    is_sle15sp4: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle12sp5: false
+    is_sle15sp2: false
+    is_sle15sp3: false
+    is_sle15sp4: false
   when:
     - not is_sle|bool
 
@@ -54,11 +54,11 @@
 
 - name: The default is to assume all distros have the indent package
   set_fact:
-    has_indent: True
+    has_indent: true
 
 - name: Does this release lack indent
   set_fact:
-    has_indent: False
+    has_indent: false
   when:
     - is_sle|bool
     - is_sle15sp3|bool or is_sle15sp4|bool
@@ -75,7 +75,7 @@
     - is_sle10|bool or is_sle11|bool or is_sle12sp1|bool
 
 - name: Install nvme tools
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -86,7 +86,7 @@
     - not lacks_nvme_utils|bool
 
 - name: Install build dependencies for fstests
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -129,7 +129,7 @@
     - repos_present|bool
 
 - name: Install indent when we have it
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -140,7 +140,7 @@
     - has_indent|bool
 
 - name: Install tumblweed packages
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -151,7 +151,7 @@
     - is_tumbleweed|bool
 
 - name: Install leap packages
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -163,7 +163,7 @@
     - is_leap|bool
 
 - name: Install sle15 sp2 and sp3 packages
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -174,16 +174,16 @@
 
 - name: The default is to assume we do not want to add the benchmark repo
   set_fact:
-    add_benchmark_repo: False
+    add_benchmark_repo: false
 
 - name: Does this release require the benchmark repo
   set_fact:
-    add_benchmark_repo: True
+    add_benchmark_repo: true
   when:
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool or is_sle12sp5|bool
 
 - name: add benchmark sles12sp5 openSUSE repo when needed
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_12_SP5/ benchmark benchmark"
@@ -191,7 +191,7 @@
     - is_sle12sp5|bool
 
 - name: Add benchmark sles15sp2 openSUSE repo when needed
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP2/ benchmark benchmark"
@@ -199,7 +199,7 @@
     - is_sle15sp2|bool
 
 - name: Add benchmark sles15sp3 openSUSE repo when needed
-  become: yes
+  become: true
   become_method: sudo
   script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP3/ benchmark benchmark"
@@ -207,7 +207,7 @@
     - is_sle15sp3|bool or is_sle15sp4|bool
 
 - name: Install dbench for sles15-sp2
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -217,7 +217,7 @@
     - add_benchmark_repo|bool
 
 - name: Install nfs-utils
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -228,7 +228,7 @@
     - fstests_fstyp == "nfs"
 
 - name: Ensure nfs-client.target is enabled
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.systemd:
     name: nfs-client.target
@@ -238,7 +238,7 @@
     - fstests_fstyp == "nfs"
 
 - name: Install cifs-utils
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/fstests/tasks/main.yml b/playbooks/roles/fstests/tasks/main.yml
index 3e2cbf99..66271133 100644
--- a/playbooks/roles/fstests/tasks/main.yml
+++ b/playbooks/roles/fstests/tasks/main.yml
@@ -1,32 +1,32 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - include_role:
     name: create_data_partition
-  tags: [ 'oscheck', 'data_partition' ]
+  tags: ["oscheck", "data_partition"]
 
 # Distro specific
 - name: Install dependencies
   include_tasks: install-deps/main.yml
 
 - name: Check if there's an existing xfsprogs directory
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   stat:
     path: "{{ fstests_xfs_xfsprogs_data }}"
   register: xfsprogs_dir
-  tags: [ 'oscheck', 'git', 'fstests']
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  tags: ["oscheck", "git", "fstests"]
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Set up an iSCSI initiator on target nodes
   ansible.builtin.include_role:
@@ -41,22 +41,22 @@
     - infer_uid_and_group|bool
 
 - name: Get nproc
-  tags: [ 'oscheck', 'fstests', 'build']
+  tags: ["oscheck", "fstests", "build"]
   command: "nproc"
   register: nproc
 
 - name: Ensure xfsprogs is not root owned
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ fstests_xfs_xfsprogs_data }}"
     state: directory
-    recurse: yes
-    follow: no
+    recurse: true
+    follow: false
     owner: "{{ data_user }}"
     group: "{{ data_group }}"
-  tags: [ 'oscheck', 'git', 'fstests']
+  tags: ["oscheck", "git", "fstests"]
   when:
     - fstests_xfs_build_custom_xfsprogs|bool
     - xfsprogs_dir.stat.exists
@@ -65,7 +65,7 @@
   command: "git clean -f -x -d"
   args:
     chdir: "{{ fstests_xfs_xfsprogs_data }}"
-  tags: [ 'oscheck', 'git', 'fstests']
+  tags: ["oscheck", "git", "fstests"]
   when:
     - fstests_xfs_build_custom_xfsprogs|bool
     - xfsprogs_dir.stat.exists
@@ -74,62 +74,62 @@
   git:
     repo: "{{ fstests_xfs_xfsprogs_git }}"
     dest: "{{ fstests_xfs_xfsprogs_data }}"
-    update: yes
+    update: true
     version: "{{ fstests_xfs_xfsprogs_commit }}"
   retries: 3
   delay: 5
   register: result
   until: not result.failed
-  tags: [ 'oscheck', 'git', 'fstests']
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  tags: ["oscheck", "git", "fstests"]
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Configure xfsprogs
   make:
     chdir: "{{ fstests_xfs_xfsprogs_data }}"
     target: configure
-  tags: ['oscheck', 'fstests', 'build']
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  tags: ["oscheck", "fstests", "build"]
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Build xfsprogs
   make:
     chdir: "{{ fstests_xfs_xfsprogs_data }}"
     jobs: "{{ nproc.stdout }}"
-  tags: ['oscheck', 'fstests', 'build']
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  tags: ["oscheck", "fstests", "build"]
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Install xfsprogs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   make:
     target: install
     params:
       DIST_ROOT: "{{ fstests_xfs_xfsprogs_install_path }}"
     chdir: "{{ fstests_xfs_xfsprogs_data }}"
-  tags: ['oscheck', 'fstests', 'build']
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  tags: ["oscheck", "fstests", "build"]
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Check if there's an existing xfsdump directory
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   stat:
     path: "{{ fstests_xfsdump_data }}"
   register: xfdump_dir
-  tags: [ 'oscheck', 'git', 'fstests']
+  tags: ["oscheck", "git", "fstests"]
   when:
     - fstests_xfsdump_build|bool
 
 - name: Ensure xfsdump is not root owned
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ fstests_xfsdump_data }}"
-    recurse: yes
+    recurse: true
     owner: "{{ data_user }}"
     group: "{{ data_group }}"
-  tags: [ 'fstests', 'deps' ]
+  tags: ["fstests", "deps"]
   when:
     - fstests_xfsdump_build|bool
     - xfdump_dir.stat.exists
@@ -138,7 +138,7 @@
   command: "git clean -f -x -d"
   args:
     chdir: "{{ fstests_xfsdump_data }}"
-  tags: [ 'oscheck', 'git', 'fstests']
+  tags: ["oscheck", "git", "fstests"]
   when:
     - fstests_xfsdump_build|bool
     - xfdump_dir.stat.exists
@@ -147,14 +147,14 @@
   git:
     repo: "{{ fstests_xfsdump_git }}"
     dest: "{{ fstests_xfsdump_data }}"
-    update: yes
+    update: true
     version: "{{ fstests_xfsdump_commit }}"
-  tags: [ 'fstests', 'deps' ]
+  tags: ["fstests", "deps"]
   when:
     - fstests_xfsdump_build|bool
 
 - name: Build xfsdump
-  tags: [ 'fstests', 'deps' ]
+  tags: ["fstests", "deps"]
   make:
     chdir: "{{ fstests_xfsdump_data }}"
     jobs: "{{ nproc.stdout }}"
@@ -162,9 +162,9 @@
     - fstests_xfsdump_build|bool
 
 - name: Install xfsdump
-  become: yes
+  become: true
   become_method: sudo
-  tags: [ 'fstests', 'deps' ]
+  tags: ["fstests", "deps"]
   make:
     chdir: "{{ fstests_xfsdump_data }}"
     target: install
@@ -172,15 +172,15 @@
     - fstests_xfsdump_build|bool
 
 - name: Setup $PATH environment variable to access custom xfsprogs binaries
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: "/root/.bashrc"
     line: "export PATH={{ fstests_xfs_xfsprogs_install_path }}/usr/sbin/:$PATH"
     state: present
-  tags: ['oscheck', 'fstests', 'build']
-  when: 'fstests_xfs_build_custom_xfsprogs|bool'
+  tags: ["oscheck", "fstests", "build"]
+  when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Create {{ truncated_path }} if needed
   include_role:
@@ -188,18 +188,18 @@
   vars:
     disk_setup_device: "{{ sparsefiles_device }}"
     disk_setup_fstype: "{{ sparsefiles_fstype }}"
-    disk_setup_label : "{{ sparsefiles_label }}"
+    disk_setup_label: "{{ sparsefiles_label }}"
     disk_setup_fs_opts: "{{ sparsefiles_fs_opts }}"
     disk_setup_path: "{{ sparsefiles_path }}"
     disk_setup_user: "{{ data_user }}"
     disk_setup_group: "{{ data_group }}"
-  tags: [ 'oscheck', 'sparse_partition' ]
+  tags: ["oscheck", "sparse_partition"]
   when:
     - fstests_testdev_sparsefile_generation|bool
 
 - name: git clone kdevops
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
@@ -208,22 +208,22 @@
   delay: 5
   register: result
   until: not result.failed
-  tags: [ 'oscheck', 'install', 'git']
+  tags: ["oscheck", "install", "git"]
 
 - name: Copy over our .config
   copy:
     src: "{{ playbook_dir }}/../.config"
     dest: "{{ kdevops_dir }}"
-  tags: [ 'oscheck', 'install', 'root', 'config']
+  tags: ["oscheck", "install", "root", "config"]
 
 - name: Install kdevops as root
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   environment:
-    FSTYP:  "{{ fstests_fstyp }}"
+    FSTYP: "{{ fstests_fstyp }}"
   command: "{{  make }} install"
-  tags: [ 'oscheck', 'install', 'root']
+  tags: ["oscheck", "install", "root"]
   args:
     chdir: "{{ kdevops_dir }}"
 
@@ -237,11 +237,11 @@
   vars:
     dbench_data: "{{ data_path }}/dbench"
     dbench_git: "https://github.com/linux-kdevops/dbench.git"
-  tags: [ 'oscheck', 'git', 'dbench']
+  tags: ["oscheck", "git", "dbench"]
 
 - name: Remove any old fstests and install directories
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ item }}"
@@ -250,92 +250,92 @@
     - "{{ fstests_data }}"
     - "{{ fstests_data_prefix }}"
     - "{{ fstests_data_target }}"
-  tags: [ 'oscheck', 'git', 'fstests', 'build' ]
+  tags: ["oscheck", "git", "fstests", "build"]
 
 - name: git clone fstests
   git:
     repo: "{{ fstests_git }}"
     dest: "{{ fstests_data }}"
     version: "{{ fstests_git_version }}"
-    update: yes
+    update: true
   retries: 3
   delay: 5
   register: result
   until: not result.failed
-  tags: [ 'oscheck', 'git', 'fstests']
+  tags: ["oscheck", "git", "fstests"]
 
 - name: Create {{ fstests_data_prefix }} if it does not exist
-  tags: [ 'oscheck', 'fstests', 'install', 'root']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "install", "root"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ fstests_data_prefix }}"
     state: directory
 
 - name: Build the configure file for fstests
-  tags: [ 'oscheck', 'fstests', 'build']
+  tags: ["oscheck", "fstests", "build"]
   command: "make configure"
   args:
     chdir: "{{ fstests_data }}"
 
 - name: Configure fstests
-  tags: [ 'oscheck', 'fstests', 'build']
+  tags: ["oscheck", "fstests", "build"]
   command: "./configure --prefix={{ fstests_data_prefix }}"
   args:
     chdir: "{{ fstests_data }}"
 
 - name: Get nproc
-  tags: [ 'oscheck', 'fstests', 'build']
+  tags: ["oscheck", "fstests", "build"]
   command: "nproc"
   register: nproc
 
 - name: Build fstests
-  tags: [ 'oscheck', 'fstests', 'build']
+  tags: ["oscheck", "fstests", "build"]
   make:
     chdir: "{{ fstests_data }}"
     jobs: "{{ nproc.stdout }}"
 
 - name: Copy udev rules for zoned
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: "64-btrfs-zoned.rules"
     dest: "/usr/lib/udev/rules.d/"
     owner: "{{ data_user }}"
     group: "{{ data_group }}"
-  tags: [ 'oscheck', 'fstests']
+  tags: ["oscheck", "fstests"]
   when:
     - fstests_zns_enabled == "y"
     - fstests_fstyp == "btrfs"
 
 - name: git pull latest kdevops to ensure expunge lists and scripts are up to date
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
     version: "{{ kdevops_git_version }}"
-    update: yes
+    update: true
   retries: 3
   delay: 5
   register: result
   until: not result.failed
-  tags: [ 'oscheck', 'install', 'git', 'git_update', 'fstests', 'run_tests' ]
+  tags: ["oscheck", "install", "git", "git_update", "fstests", "run_tests"]
 
 - name: Install fstests
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{  make }} install"
-  tags: [ 'oscheck', 'fstests', 'install', 'root']
+  tags: ["oscheck", "fstests", "install", "root"]
   args:
     chdir: "{{ fstests_data }}"
 
 - name: Add symlink for old fstests directory
-  tags: [ 'oscheck', 'fstests', 'install', 'root']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "install", "root"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     src: "{{ fstests_data_prefix }}/xfstests"
@@ -343,24 +343,24 @@
     state: link
 
 - name: Install root generated .kdevops_fstests_setup
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "{{ kdevops_fstests_setup }}"
     dest: "/root/{{ kdevops_fstests_setup }}"
     owner: "root"
     group: "root"
-    mode: 0644
+    mode: "0644"
 
 - name: Source .kdevops_fstests_setup for root if it is not already done
   vars:
     dev_bash_config: ".bashrc"
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install"]
   shell: |
     SOURCE_KDEVOPS_FSTESTS_SETUP="test -s ~/{{ kdevops_fstests_setup }} && . ~/{{ kdevops_fstests_setup }} || true"
     if [ -f {{ dev_bash_config }} ]; then
@@ -376,9 +376,9 @@
     executable: /bin/bash
 
 - name: Add symlinks for kdevops scripts for fstests
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     src: "{{ kdevops_data }}/workflows/fstests/scripts/{{ item }}"
@@ -390,9 +390,9 @@
     - naggy-check.sh
 
 - name: Create a few directories which kdevops uses for fstests if they do not exist
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install', 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ item }}"
@@ -403,9 +403,9 @@
     - fstests_testdev_sparsefile_generation|bool
 
 - name: Create a few directories which kdevops uses for fstests if they do not exist
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install', 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ item }}"
@@ -414,83 +414,83 @@
     - "{{ fstests_data_target }}/configs"
 
 - name: Check if there's a host specific fstests at {{ fstests_fstyp }}/{{ inventory_hostname }}.config configuration
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install', 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
   delegate_to: localhost
   stat:
     path: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ inventory_hostname }}.config"
   register: host_specific_fstests_config
 
 - name: Generate filesystem configuration file for debugging purposes using host specific config {{ target_config }}
-  tags: [ 'generate-fstests-config' ]
+  tags: ["generate-fstests-config"]
   vars:
     target_config: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ fstests_fstyp }}.config.generated"
   template:
     src: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ ansible_host }}.config"
     dest: "{{ target_config }}"
-    force: yes
+    force: true
   when:
     - fstests_generate_simple_config_enable|bool
     - fstests_debug_localhost|bool
     - host_specific_fstests_config.stat.exists
 
 - name: Generate filesystem configuration file for debugging purposes using generic config {{ target_config }}
-  tags: [ 'generate-fstests-config' ]
+  tags: ["generate-fstests-config"]
   vars:
     target_config: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ fstests_fstyp }}.config.generated"
   template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ fstests_fstyp }}.config.generated"
-    force: yes
+    force: true
   when:
     - fstests_generate_simple_config_enable|bool
     - fstests_debug_localhost|bool
     - not host_specific_fstests_config.stat.exists
 
 - name: Copy and force overwrite of the host specific fstests configuration
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}//{{ ansible_host }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
-    force: yes
+    force: true
   when:
     - fstests_generate_simple_config_enable|bool
     - not fstests_debug_localhost|bool
     - host_specific_fstests_config.stat.exists
 
 - name: Copy and force overwrite of the target filesystem fstests configuration
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
-    force: yes
+    force: true
   when:
     - fstests_generate_simple_config_enable|bool
     - not fstests_debug_localhost|bool
     - not host_specific_fstests_config.stat.exists
 
 - name: Try to see if NVMe EUIs exist on /dev/disk/by-id/nvme-eui.*
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.find:
     paths: /dev/disk/by-id/
     file_type: "link"
-    patterns: 'nvme-eui.*'
+    patterns: "nvme-eui.*"
   register: real_nvme_euis
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
   when:
     - fstests_generate_nvme_live_config_enable|bool
 
 - name: End if no NVMe EUIs found per node and no fallback mechanism is provided
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.fail:
     msg:
@@ -510,19 +510,19 @@
     - real_nvme_euis is success
     - real_nvme_euis.files is defined
     - real_nvme_euis.files | length > 0
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
 
 - name: Fallback look for NVMe drive by model and serial number /dev/disk/by-id/nvme-$(model)-$(serial)
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.find:
     paths: /dev/disk/by-id/
     file_type: "link"
-    patterns: 'nvme-*'
-    excludes: 'nvme-QEMU*,nvme-nvme*'
+    patterns: "nvme-*"
+    excludes: "nvme-QEMU*,nvme-nvme*"
   register: fallback_nvmes
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
   when:
     - real_nvme_euis is success
     - real_nvme_euis.files is defined
@@ -539,7 +539,7 @@
     - real_nvme_euis.files is defined
     - real_nvme_euis.files | length == 0
     - fstests_testdev_nvme_fallback_model_serial|bool
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
 
 - name: Get NVMe drives we can use for testing
   set_fact:
@@ -554,12 +554,12 @@
     - nvmes is defined
     - nvmes is success
     - nvmes.files is defined
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
 
 - name: Read existing partition information for first NVMe drive with an EUI
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.general.parted:
     device: "{{ nvme_symlinks[0] }}"
@@ -570,24 +570,24 @@
     - nvme_symlinks | length >= 1
 
 - name: Remove all partitions from the first real NVMe drive with an EUI
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.general.parted:
     device: "{{ nvme_symlinks[0] }}"
-    number: '{{ item.num }}'
+    number: "{{ item.num }}"
     state: absent
-  loop: '{{ nvme_info.partitions }}'
+  loop: "{{ nvme_info.partitions }}"
   when:
     - fstests_testdev_nvme_partition_euis|bool
     - nvme_symlinks | length > 1
     - nvme_info.partitions | length != 13
 
 - name: Create extended partition on sigle NVMe drive
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.general.parted:
     device: "{{ nvme_symlinks[0] }}"
@@ -600,29 +600,29 @@
     - nvme_info.partitions | length < 13
 
 - name: Create 12 logical partitions on sigle NVMe drive
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     test_partsize: 60
     fuzz: 1
   community.general.parted:
     device: "{{ nvme_symlinks[0] }}"
-    number: '{{ item }}'
+    number: "{{ item }}"
     state: present
     part_type: "logical"
     part_start: "{{ ((item - 5) * test_partsize ) + 1 }}GiB"
-    part_end:   "{{ ((item - 4) * test_partsize ) }}GiB"
-  loop: '{{ range(5, 17) | list }}'
+    part_end: "{{ ((item - 4) * test_partsize ) }}GiB"
+  loop: "{{ range(5, 17) | list }}"
   when:
     - fstests_testdev_nvme_partition_euis|bool
     - nvme_symlinks | length >= 1
     - nvme_info.partitions | length < 13
 
 - name: Try to see if new logical NVMe partition exist on /dev/disk/by-id/nvme-*.id.part*
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     nvme_main: "{{ nvme_symlinks[0] | basename }}"
@@ -631,7 +631,7 @@
     file_type: "link"
     patterns: "{{ nvme_main }}-part*"
   register: part_symlinks
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
   when:
     - fstests_testdev_nvme_partition_euis|bool
     - nvme_symlinks | length >= 1
@@ -649,12 +649,12 @@
     - part_symlinks is success
     - part_symlinks.files is defined
     - nvme_symlinks | length >= 1
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
 
 - name: End if 13 paritions NVMe EUIs not found per node one extended 12 logical
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.fail:
     msg:
@@ -665,9 +665,9 @@
     - nvme_parts | length < 13
 
 - name: Copy and force overwrite of the target filesystem fstests configuration using NVMe partition euis
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     fstests_test_dev: "{{ nvme_symlinks[0] }}-part16"
@@ -686,7 +686,7 @@
   template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
-    force: yes
+    force: true
   when:
     - fstests_testdev_nvme_partition_euis|bool
     - nvme_symlinks | length >= 1
@@ -695,9 +695,9 @@
 # fstests sparsefile generation uses 11 loop drives, we'll aim for 7
 # if you are using straight a drive per target disk to test.
 - name: End running if 7 NVMe EUIs not found per node
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.fail:
     msg:
@@ -707,9 +707,9 @@
     - nvme_symlinks | length < 7
 
 - name: Copy and force overwrite of the target filesystem fstests configuration using NVMe euis
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     fstests_test_dev: "{{ nvme_symlinks[0] }}"
@@ -723,7 +723,7 @@
   template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
-    force: yes
+    force: true
   when:
     - fstests_testdev_nvme_euis|bool
     - nvme_symlinks | length >= 7
@@ -733,8 +733,7 @@
   set_fact:
     volname_prefix: "{{ ansible_host|regex_replace(kdevops_host_prefix + '-') }}-fs"
   when:
-    - fstests_fstyp == "nfs" or
-      fstests_fstyp == "cifs"
+    - fstests_fstyp == "nfs" or fstests_fstyp == "cifs"
 
 - name: Set the NFS export's fstype
   tags: vars
@@ -780,9 +779,9 @@
     - fstests_nfs_use_kdevops_nfsd|bool
 
 - name: Copy and force overwrite of the target filesystem fstests configuration for NFS
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     fstests_nfs_test_dev: "{{ fstests_nfs_server_host }}:{{ nfsd_export_path }}/{{ volname_prefix }}-t"
@@ -790,13 +789,13 @@
   template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
-    force: yes
+    force: true
   when:
     - fstests_fstyp == "nfs"
 
 - name: Check to see if /etc/nfsmount.conf exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.stat:
     path: /etc/nfsmount.conf
@@ -807,15 +806,15 @@
     - fstests_nfs_auth_flavor
 
 - name: Create /etc/nfsmount.conf
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.template:
     src: "{{ fstests_fstyp }}/nfsmount.conf"
     dest: /etc/nfsmount.conf
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
   when:
     - fstests_fstyp == "nfs"
     - fstests_nfs_auth_flavor is defined
@@ -823,13 +822,13 @@
     - not nfsmount_conf.stat.exists
 
 - name: Set auth flavor for NFS
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.lineinfile:
     path: /etc/nfsmount.conf
-    regexp: '^# Sec='
-    line: 'Sec={{ fstests_nfs_auth_flavor }}'
+    regexp: "^# Sec="
+    line: "Sec={{ fstests_nfs_auth_flavor }}"
   when:
     - fstests_fstyp == "nfs"
     - fstests_nfs_auth_flavor is defined
@@ -860,9 +859,9 @@
     - fstests_cifs_use_kdevops_smbd|bool
 
 - name: Copy and force overwrite of the target filesystem fstests configuration for CIFS
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     fstests_cifs_test_dev: "//{{ fstests_smb_server_host }}/{{ volname_prefix }}-t"
@@ -870,29 +869,29 @@
   template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
-    force: yes
+    force: true
   when:
     - fstests_fstyp == "cifs"
 
 - name: Reboot system before our test so we know everything is sane
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'reboot' ]
-  become: yes
+  tags: ["oscheck", "fstests", "run_tests", "reboot"]
+  become: true
   become_method: sudo
   reboot:
     post_reboot_delay: 10
 
 - name: Make sure loop device support is loaded
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
-  become: yes
+  tags: ["oscheck", "fstests", "run_tests"]
+  become: true
   become_method: sudo
   command: "modprobe loop"
   when:
     - kdevops_run_fstests|bool
 
 - name: Add missing groups for fstests
-  tags: [ 'oscheck', 'fstests', 'install', 'root']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "install", "root"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   group:
     name: "{{ item }}"
@@ -903,9 +902,9 @@
     label: "Ensuring that group {{ item }} exists"
 
 - name: Add missing users for fstests
-  tags: [ 'oscheck', 'fstests', 'install', 'root']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "install", "root"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.command: "useradd {{ badname_arg }} -d /home/{{ item }} -U {{ item }}"
   with_items:
@@ -922,17 +921,17 @@
 - name: Verify section name {{ fstests_section }} exists on fstests config file
   vars:
     fstests_section: "{{ ansible_host | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'section' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "section"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   register: section_grep
   failed_when: not section_grep.changed
   lineinfile:
     path: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     regexp: "\\[{{ fstests_section }}\\]$"
-    line: ''
-  check_mode: yes
+    line: ""
+  check_mode: true
   when:
     - kdevops_run_fstests|bool
     - fstests_section != "all"
@@ -941,9 +940,9 @@
 # or systems might have on /etc/sudoers env_reset enabled, which gives us
 # as root a clean slate of variables.
 - name: Generate loopback disks using sparefiles with gendisk.sh
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'gendisks' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "gendisks"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "./gendisks.sh -d -m"
   register: gendisk_cmd
@@ -962,7 +961,7 @@
     - fstests_testdev_sparsefile_generation|bool
 
 - name: Capture gendisk output
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'gendisks' ]
+  tags: ["oscheck", "fstests", "run_tests", "gendisks"]
   debug:
     msg: "{{ gendisk_cmd.stdout_lines }}"
   when:
@@ -973,9 +972,9 @@
 - name: Check and verify fstests dependencies are met prior to running fstests
   vars:
     fstests_section: "{{ ansible_host | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: |
     ./oscheck.sh
@@ -1002,26 +1001,26 @@
     fstests_results_full_path: "{{ topdir_path }}/workflows/fstests/results"
     fstests_workflow_dir: "../workflows/fstests"
     fstests_results_target: "../workflows/fstests/results/last-run/"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'checktime', 'augment_expunge_list', 'copy_results', 'print_results' ]
+  tags: ["oscheck", "fstests", "run_tests", "checktime", "augment_expunge_list", "copy_results", "print_results"]
 
 - name: Look for prior check.time files on {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'checktime' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests", "checktime"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ fstests_data_target }}"
-    recurse: yes
+    recurse: true
     patterns: "check.time"
   register: checktime_files
 
 - name: Copy prior check.time files from {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'checktime' ]
+  tags: ["oscheck", "fstests", "run_tests", "checktime"]
   fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_workflow_dir }}/{{ item.path | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   with_items: "{{ checktime_files.files }}"
   loop_control:
     label: "{{ item.path | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
@@ -1044,24 +1043,24 @@
     - checktime_files.files is defined
     - checktime_files.files | length > 0
     - fstests_initial_baseline|bool
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'checktime' ]
+  tags: ["oscheck", "fstests", "run_tests", "checktime"]
 
 - name: Expand tests to skip for initial baseline
   set_fact:
     fstests_initial_baseline_args: "--start-after {{ fstests_start_after_test }}"
   when:
     - fstests_start_after|bool
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'checktime' ]
+  tags: ["oscheck", "fstests", "run_tests", "checktime"]
 
 - name: Expand tests to skip tests dynamically passed on the command line
   set_fact:
     fstests_skip_tests_args: "-e {{ fstests_skip_tests }}"
   when:
     - fstests_skip_tests_enable|bool
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'checktime' ]
+  tags: ["oscheck", "fstests", "run_tests", "checktime"]
 
 - name: Verify use of START_AFTER
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'kdevops_fstests_setup', 'install' , 'generate-fstests-config' ]
+  tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
   ansible.builtin.fail:
     msg:
       - "You used START_AFTER={{ fstests_start_after_test }} and it must not be empty"
@@ -1070,52 +1069,55 @@
     - fstests_start_after_test == ""
 
 - name: Clear out old results directory
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     state: absent
     path: "{{ fstests_data_target }}/results/"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'clean_results' ]
+  tags: ["oscheck", "fstests", "run_tests", "clean_results"]
   when:
     - not fstests_initial_baseline|bool
 
 - name: Print uname for each host
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
+  tags: ["oscheck", "fstests", "run_tests"]
   debug: var=ansible_kernel
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ fstests_results_target }}/" state=absent
+  file: path="{{ fstests_results_target }}/" state=absent
+  delegate_to: localhost
   run_once: true
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'clean_local_results' ]
+  tags: ["oscheck", "fstests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  local_action: file path="{{ fstests_results_target }}/" state=directory
+  file: path="{{ fstests_results_target }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'clean_local_results' ]
+  tags: ["oscheck", "fstests", "copy_results", "clean_local_results"]
 
 - name: Get used target kernel version
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ fstests_results_target }}/../last-kernel.txt"
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  shell: echo {{ last_kernel }} > {{ fstests_results_target }}/../last-kernel.txt
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
 
 - name: Ensure systemd-journal-remote.service is running on the server
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
+  tags: ["oscheck", "fstests", "run_tests"]
   delegate_to: localhost
   become_method: sudo
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   ansible.builtin.systemd_service:
     name: systemd-journal-remote.service
     state: started
@@ -1123,9 +1125,9 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Ensure systemd-journal-upload.service is running
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-journal-upload.service
@@ -1133,24 +1135,24 @@
   when:
     - devconfig_enable_systemd_journal_remote|bool
 
-
 - name: Hint to watchdog tests are about to kick off
-  local_action: file path="{{ fstests_workflow_dir }}/.begin" state=touch
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
+  file: path="{{ fstests_workflow_dir }}/.begin" state=touch
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "run_tests"]
   when:
     - kdevops_run_fstests|bool
   run_once: true
 
 - name: Enable low-level messages on console
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: sysctl kernel.printk="8 8 1 7"
 
 - name: Check to see if dynamic test limit scope was set
   set_fact:
     dynamic_limit_tests: "{{ lookup('ansible.builtin.env', 'LIMIT_TESTS') }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_fstests|bool
@@ -1158,7 +1160,7 @@
 - name: Set test limit scope from CONFIG_FSTESTS_RUN_CUSTOM_TESTS, this may be empty
   set_fact:
     all_limit_tests: "{{ limit_tests }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_fstests|bool
@@ -1168,7 +1170,7 @@
 - name: Allow dynamic test override
   set_fact:
     all_limit_tests: "{{ dynamic_limit_tests }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_fstests|bool
@@ -1179,7 +1181,7 @@
 - name: Empty out test limit if None is set
   set_fact:
     all_limit_tests: ""
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - not run_tests_on_failures|bool
     - kdevops_run_fstests|bool
@@ -1189,7 +1191,7 @@
 - name: Run oscheck-get-failures.sh to get list of known failed tests
   vars:
     fstests_section: "{{ ansible_host | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
+  tags: ["oscheck", "fstests", "run_tests"]
   command: "{{ kdevops_data }}/workflows/fstests/scripts/oscheck-get-failures.sh --test-section {{ fstests_section }}"
   args:
     chdir: "{{ fstests_data_target }}"
@@ -1205,7 +1207,7 @@
 - name: Inform user no failures are known
   fail:
     msg: "No known failures for this run! Go find bugs!"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - run_tests_on_failures|bool
     - kdevops_run_fstests|bool
@@ -1214,7 +1216,7 @@
 - name: Set test limit to known failed tests
   set_fact:
     all_limit_tests: "{{ failed_tests_limit.stdout | replace('\n', ' ') }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - run_tests_on_failures|bool
     - kdevops_run_fstests|bool
@@ -1222,7 +1224,7 @@
 - name: Print test list limits for this run
   debug:
     msg: "all_limit_tests: {{ all_limit_tests }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - kdevops_run_fstests|bool
     - all_limit_tests is defined
@@ -1231,7 +1233,7 @@
 
 - name: Stop fstests if we're debbugging limit_tests
   ansible.builtin.meta: end_play
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'vars', 'limit-tests' ]
+  tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
     - fstests_skip_run|bool
 
@@ -1240,19 +1242,20 @@
   when:
     - kdevops_run_fstests|bool
     - enable_monitoring|default(false)|bool
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'monitoring', 'monitor_run' ]
+  tags: ["oscheck", "fstests", "run_tests", "monitoring", "monitor_run"]
 
 # Recent environments runs are showing that environment variables
 # set below are not propagated. So best to stuff what you need
 # into the .kdevops_fstests_setup file which is sourced by root.
-- name: Run fstests using ./oscheck.sh --print-start --journal {{ fstests_journal }} --print-done --test-section {{ fstests_section }} {{ oscheck_extra_args }} {{ all_limit_tests }}
+- name: Run fstests using ./oscheck.sh --print-start --journal {{ fstests_journal }} --print-done --test-section {{ fstests_section }} {{ oscheck_extra_args }} {{
+    all_limit_tests }}
   vars:
     fstests_section: "{{ ansible_host | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
     initial_baseline_expunges: "{{ fstests_initial_baseline_args | trim }}"
     skip_tests_args: "{{ fstests_skip_tests_args | trim }}"
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: |
     ./oscheck.sh
@@ -1265,8 +1268,8 @@
       {{ all_limit_tests }}
       {{ initial_baseline_expunges }}
       {{ skip_tests_args }}
-  ignore_errors: yes
-  no_log: True
+  ignore_errors: true
+  no_log: true
   args:
     chdir: "{{ fstests_data_target }}"
   environment:
@@ -1293,35 +1296,36 @@
   when:
     - kdevops_run_fstests|bool
     - enable_monitoring|default(false)|bool
-  tags: [ 'oscheck', 'fstests', 'run_tests', 'monitoring', 'monitor_collect' ]
+  tags: ["oscheck", "fstests", "run_tests", "monitoring", "monitor_collect"]
 
 - name: Remove watchdog hint that tests have started
-  local_action: file path="{{ fstests_workflow_dir }}/.begin" state=absent
-  tags: [ 'oscheck', 'fstests', 'run_tests' ]
+  file: path="{{ fstests_workflow_dir }}/.begin" state=absent
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "run_tests"]
   when:
     - kdevops_run_fstests|bool
   run_once: true
 
 - name: Look for the check.time files on {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'checktime' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "copy_results", "checktime"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ fstests_data_target }}"
-    recurse: yes
+    recurse: true
     patterns: "check.time"
   register: checktime_files
 
 - name: Copy the latest run check.time files from {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'checktime' ]
+  tags: ["oscheck", "fstests", "copy_results", "checktime"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
   fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   with_items: "{{ checktime_files.files }}"
   loop_control:
     label: "{{ item.path | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
@@ -1329,25 +1333,25 @@
     - checktime_files.matched > 0
 
 - name: Look for the check.log files on {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'checklog' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "copy_results", "checklog"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ fstests_data_target }}"
-    recurse: yes
+    recurse: true
     patterns: "check.log"
   register: checklog_files
 
 - name: Copy the latest run check.log files from {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'checklog' ]
+  tags: ["oscheck", "fstests", "copy_results", "checklog"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
   fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   with_items: "{{ checklog_files.files }}"
   loop_control:
     label: "{{ item.path | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
@@ -1355,25 +1359,25 @@
     - checklog_files.matched > 0
 
 - name: Look for xunit results files on {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'xunit' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "copy_results", "xunit"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ fstests_data_target }}"
-    recurse: yes
+    recurse: true
     patterns: "*.xml"
   register: xunit_files
 
 - name: Copy xunit results files from {{ fstests_data_target }}
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'xunit' ]
+  tags: ["oscheck", "fstests", "copy_results", "xunit"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
   fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   with_items: "{{ xunit_files.files }}"
   loop_control:
     label: "{{ item.path | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
@@ -1381,33 +1385,33 @@
     - xunit_files.matched > 0
 
 - name: Look for tests which failed
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'failed_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "copy_results", "failed_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ fstests_data_target }}"
-    recurse: yes
+    recurse: true
     patterns: "*.out.bad"
   register: failed_tests
 
 - name: Look for TFB results files
-  tags: [ 'copy_results', 'failed_tests', 'tfb' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results", "failed_tests", "tfb"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ fstests_data_target }}/results/"
-    recurse: yes
+    recurse: true
     patterns: "*"
     size: "{{ fstests_tfp_copy_size_limit_bytes }}"
-    excludes: '*.xml,*.md'
+    excludes: "*.xml,*.md"
   register: tfb_reg
   when:
     - fstests_tfp_copy_enable_list|bool or fstests_tfp_copy_enable|bool
 
 - name: Show TFB results files
-  tags: [ 'copy_results', 'failed_tests', 'tfb' ]
+  tags: ["copy_results", "failed_tests", "tfb"]
   debug:
     msg: "{{ item.path }}"
   with_items: "{{ tfb_reg.files }}"
@@ -1417,16 +1421,16 @@
     - fstests_tfp_copy_enable_list|bool
 
 - name: Show TFB results total files greater than {{ fstests_tfp_copy_size_limit_bytes | human_readable(true) }}
-  tags: [ 'copy_results', 'failed_tests', 'tfb' ]
+  tags: ["copy_results", "failed_tests", "tfb"]
   debug:
     msg: "Examined {{ tfb_reg.examined }} files and TFB number of files: {{ tfb_reg.matched }}"
   when:
     - fstests_tfp_copy_enable_list|bool
 
 - name: Truncate TFB files
-  tags: [ 'copy_results', 'failed_tests', 'tfb' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results", "failed_tests", "tfb"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   copy:
     content: "kdevops TFB trimming enabled, original file size: {{ item.size | human_readable(true) }}"
@@ -1441,24 +1445,24 @@
 # want to consider removing *.md TFB files. Use 'future' tag for these
 # sort of things.
 - name: Look for TFB results *.md files
-  tags: [ 'copy_results', 'failed_tests', 'tfb', 'future' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results", "failed_tests", "tfb", "future"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ fstests_data_target }}/results/"
-    recurse: yes
+    recurse: true
     patterns: "*.md"
     size: "{{ fstests_tfp_copy_size_limit_bytes }}"
   register: tfb_reg
   when:
-    - False
+    - false
     - fstests_tfp_copy_enable_list|bool or fstests_tfp_copy_enable|bool
 
 - name: Remove TFB results *.md files
-  tags: [ 'copy_results', 'failed_tests', 'tfb', 'future' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results", "failed_tests", "tfb", "future"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ item.path }}"
@@ -1467,18 +1471,18 @@
   loop_control:
     label: "{{ item.path }} {{ item.size | human_readable(true) }}"
   when:
-    - False
+    - false
     - fstests_tfp_copy_enable_list|bool or fstests_tfp_copy_enable|bool
 
 - name: Copy over all *.bad files which represent failed tests
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'copy_final', 'failed_tests', 'tfb' ]
+  tags: ["oscheck", "fstests", "copy_results", "copy_final", "failed_tests", "tfb"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
   fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   with_items: "{{ failed_tests.files }}"
   loop_control:
     label: "{{ item.path | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
@@ -1487,9 +1491,9 @@
     - failed_tests.matched > 0
 
 - name: Check if respective bad full file exists
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'failed_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "copy_results", "failed_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     tests_full_group_dir: "{{ item.path | dirname }}"
@@ -1506,7 +1510,7 @@
     - failed_tests.matched > 0
 
 - name: Copy test full bad result file over
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'failed_tests' ]
+  tags: ["oscheck", "fstests", "copy_results", "failed_tests"]
   vars:
     tests_full_group_dir: "{{ item.item.path | dirname }}"
     tests_group_dir: "{{ tests_full_group_dir | split('/') | last }}"
@@ -1516,8 +1520,8 @@
   fetch:
     src: "{{ item.stat.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   with_items: "{{ bad_full_file_stats.results }}"
   loop_control:
     label: "Copying over {{ tests_name }}"
@@ -1526,9 +1530,9 @@
     - item.stat.exists
 
 - name: Check if respective dmesg file exists for failed tests
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'failed_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["oscheck", "fstests", "copy_results", "failed_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     tests_full_group_dir: "{{ item.path | dirname }}"
@@ -1545,7 +1549,7 @@
     - failed_tests.matched > 0
 
 - name: Copy test dmesg results file over
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'failed_tests' ]
+  tags: ["oscheck", "fstests", "copy_results", "failed_tests"]
   vars:
     tests_full_group_dir: "{{ item.item.path | dirname }}"
     tests_group_dir: "{{ tests_full_group_dir | split('/') | last }}"
@@ -1555,8 +1559,8 @@
   fetch:
     src: "{{ item.stat.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   with_items: "{{ bad_dmesg_file_stats.results }}"
   loop_control:
     label: "Copying over dmesg {{ tests_name }}"
@@ -1565,52 +1569,59 @@
     - item.stat.exists
 
 - name: Print fstests results to xunit_results.txt on localhost if xunit xml file was found
-  local_action: "shell ./python/workflows/fstests/gen_results_summary --results_file result.xml  --print_section --output_file {{ fstests_results_target }}/{{ last_kernel }}/xunit_results.txt {{ fstests_results_target }}/"
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/fstests/gen_results_summary --results_file result.xml  --print_section --output_file {{ fstests_results_target }}/{{ last_kernel }}/xunit_results.txt
+    {{ fstests_results_target }}/
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   when:
     - xunit_files.matched > 0
   run_once: true
 
 - name: Print fstests bad results for {{ fstests_fstyp }} to bad_results.txt on localhost
-  local_action: "shell ./python/workflows/fstests/bad_files_summary.py {{ fstests_fstyp }} {{ fstests_results_target }}/ > {{ fstests_results_target }}/bad_results.txt"
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/fstests/bad_files_summary.py {{ fstests_fstyp }} {{ fstests_results_target }}/ > {{ fstests_results_target }}/bad_results.txt
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   when:
     - failed_tests.matched > 0
   run_once: true
 
 - name: Create check.time.distribution files for {{ fstests_results_target }}/results
-  local_action: "shell ./python/workflows/fstests/fstests-checktime-distribution.py {{ fstests_results_target }}"
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/fstests/fstests-checktime-distribution.py {{ fstests_results_target }}
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   run_once: true
   when:
     - checktime_files.matched > 0
 
 - name: Augment expunge list for {{ fstests_fstyp }}, just run git diff after this to see new failures found
-  local_action: "shell ./python/workflows/fstests/augment_expunge_list.py {{ fstests_fstyp }} {{ fstests_results_target }}/ {{ fstests_workflow_dir }}/expunges/"
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/fstests/augment_expunge_list.py {{ fstests_fstyp }} {{ fstests_results_target }}/ {{ fstests_workflow_dir }}/expunges/
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Print fstests new expunge files for {{ fstests_fstyp }} which are not yet committed
-  local_action: "shell ./python/workflows/fstests/get_new_expunge_files.py {{ fstests_fstyp }} {{ fstests_workflow_dir }}/expunges/ > {{ fstests_results_target }}/new_expunge_files.txt"
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  shell: ./python/workflows/fstests/get_new_expunge_files.py {{ fstests_fstyp }} {{ fstests_workflow_dir }}/expunges/ > {{ fstests_results_target }}/new_expunge_files.txt
+  delegate_to: localhost
+  tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
 
 - name: Get stat of new files not yet committed, ie, new expunge files
-  local_action: stat path="{{ fstests_results_target }}/new_expunge_files.txt"
+  stat: path="{{ fstests_results_target }}/new_expunge_files.txt"
+  delegate_to: localhost
   register: new_expunge_files_stat
   run_once: true
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'print_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
 
 - name: Inform user if new expunge files have been found
   run_once: true
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   debug:
     msg: "New expunge files found in: {{ fstests_results_target | regex_replace('^../', '') }}new_expunge_files.txt"
   when:
     - new_expunge_files_stat.stat.size != 0
 
 - name: Inform user if no failures have been found
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   debug:
     msg: No *.bad or xunit xml files were found on the target host
   when:
@@ -1619,7 +1630,7 @@
     - new_expunge_files_stat.stat.size != 0
 
 - name: Verify last-run kernel directory exists
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   delegate_to: localhost
   stat:
     path: "{{ fstests_results_full_path }}/last-run/{{ last_kernel }}"
@@ -1630,7 +1641,7 @@
     src: "{{ fstests_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ fstests_results_full_path }}/"
   run_once: true
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   delegate_to: localhost
   when:
     - last_run_kernel_dir.stat.exists
@@ -1643,5 +1654,5 @@
     dest: "{{ fstests_results_full_path }}/{{ last_kernel }}.xz"
     format: xz
   run_once: true
-  tags: [ 'oscheck', 'fstests', 'copy_results', 'augment_expunge_list' ]
+  tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   delegate_to: localhost
diff --git a/playbooks/roles/fstests_prep_localhost/defaults/main.yml b/playbooks/roles/fstests_prep_localhost/defaults/main.yml
index 412f7443..44d221aa 100644
--- a/playbooks/roles/fstests_prep_localhost/defaults/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/defaults/main.yml
@@ -1,3 +1,3 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-install_local_deps: True
+install_local_deps: true
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml
index 3ed1786d..18423f15 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install local dependencies for fstests command and control
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml
index 1f42ebcb..e6c66e55 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install local dependencies for fstests command and control
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
@@ -15,11 +15,11 @@
       - python-pip
 
 - name: Install junitparser
-  become: yes
+  become: true
   become_method: sudo
   pip:
     name:
       - junitparser
   when:
     - install_local_deps|bool
-  tags: [ 'local_deps' ]
+  tags: ["local_deps"]
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml
index a180dd92..1058afe0 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml
@@ -33,7 +33,7 @@
     - is_sle10|bool or is_sle11|bool
 
 - name: Install local dependencies for fstests command and control
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -43,14 +43,14 @@
   when:
     - repos_present|bool
     - install_local_deps|bool
-  tags: [ 'local_deps' ]
+  tags: ["local_deps"]
 
 - name: Install junitparser
-  become: yes
+  become: true
   become_method: sudo
   pip:
     name:
       - junitparser
   when:
     - install_local_deps|bool
-  tags: [ 'local_deps' ]
+  tags: ["local_deps"]
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/main.yml
index 5088f8e0..2542ad80 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/gen_hosts/defaults/main.yml b/playbooks/roles/gen_hosts/defaults/main.yml
index 167ef61a..9b12c451 100644
--- a/playbooks/roles/gen_hosts/defaults/main.yml
+++ b/playbooks/roles/gen_hosts/defaults/main.yml
@@ -2,9 +2,9 @@
 ---
 topdir_path: "/dev/null"
 
-hosts_type_generic: True
-hosts_type_fs: False
-hosts_type_block: False
+hosts_type_generic: true
+hosts_type_fs: false
+hosts_type_block: false
 
 kdevops_hosts_template: "hosts.in"
 kdevops_playbooks_dir: "/dev/null"
@@ -12,34 +12,34 @@ kdevops_genhosts_templates_dir: "/dev/null"
 kdevops_hosts_prefix: "kdevops"
 kdevops_python_interpreter: "/usr/bin/python3"
 kdevops_python_old_interpreter: "/usr/bin/python2"
-kdevops_baseline_and_dev: False
+kdevops_baseline_and_dev: false
 kdevops_playbooks_dir_full_path: "/dev/null"
 kdevops_hosts_template_full_path: "/dev/null"
 
-kdevops_workflows_dedicated_workflow: False
-kdevops_workflow_enable_fstests: False
-kdevops_workflow_enable_blktests: False
-kdevops_workflow_enable_selftests: False
+kdevops_workflows_dedicated_workflow: false
+kdevops_workflow_enable_fstests: false
+kdevops_workflow_enable_blktests: false
+kdevops_workflow_enable_selftests: false
 
-kdevops_workflow_enable_cxl: False
-kdevops_workflow_enable_pynfs: False
-kdevops_workflow_enable_gitr: False
-kdevops_workflow_enable_ltp: False
+kdevops_workflow_enable_cxl: false
+kdevops_workflow_enable_pynfs: false
+kdevops_workflow_enable_gitr: false
+kdevops_workflow_enable_ltp: false
 kdevops_workflow_enable_nfstest: false
 kdevops_workflow_enable_sysbench: false
 kdevops_workflow_enable_fio_tests: false
-kdevops_workflow_enable_mmtests: False
-workflows_reboot_limit: False
+kdevops_workflow_enable_mmtests: false
+workflows_reboot_limit: false
 
-is_fstests: False
+is_fstests: false
 fstests_fstyp: "bogus"
 fs_config_role_path: "/dev/null"
 fs_config_data: "[section_1]"
 
-kdevops_nfsd_enable: False
-kdevops_loopback_nfs_enable: False
-kdevops_smbd_enable: False
-kdevops_krb5_enable: False
+kdevops_nfsd_enable: false
+kdevops_loopback_nfs_enable: false
+kdevops_smbd_enable: false
+kdevops_krb5_enable: false
 kdevops_enable_iscsi: false
 
 bootlinux_builder: false
diff --git a/playbooks/roles/gen_hosts/tasks/main.yml b/playbooks/roles/gen_hosts/tasks/main.yml
index e36d71fc..c6fab628 100644
--- a/playbooks/roles/gen_hosts/tasks/main.yml
+++ b/playbooks/roles/gen_hosts/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -24,8 +24,8 @@
   register: kdevops_hosts_dest
 
 - name: Ensure proper permission on the inventory file
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ ansible_cfg_inventory }}"
@@ -41,7 +41,7 @@
 
 - name: Set fstests config file variable for {{ fstests_fstyp }}
   set_fact:
-    is_fstests: True
+    is_fstests: true
     fs_config_path: "{{ kdevops_playbooks_dir_full_path }}/{{ fs_config_role_path }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -57,25 +57,25 @@
     - is_fstests|bool
 
 - name: Generate the Ansible hosts file for a Linux kernel build
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - bootlinux_builder
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible inventory file
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - not kdevops_workflows_dedicated_workflow
     - ansible_hosts_template.stat.exists
@@ -84,36 +84,36 @@
   ansible.builtin.file:
     path: "{{ ansible_cfg_inventory }}"
     state: touch
-    mode: '0755'
+    mode: "0755"
 
 - name: Generate the Ansible inventory file for dedicated cxl work
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ anisble_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_cxl
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible inventory file for dedicated pynfs work
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_pynfs
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible inventory file for dedicated gitr workflow
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     gitr_enabled_hosts: "{{ gitr_enabled_test_groups|ansible.builtin.split }}"
   template:
@@ -128,22 +128,22 @@
     - ansible_hosts_template.stat.exists
 
 - name: Generate an Ansible inventory file for a dedicated ltp workflow
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     ltp_enabled_hosts: "{{ ltp_enabled_test_groups|ansible.builtin.split }}"
   ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_ltp
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible inventory file for dedicated nfstest workflow
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     nfstest_enabled_hosts: "{{ nfstest_enabled_test_groups | ansible.builtin.split }}"
   template:
@@ -158,7 +158,7 @@
     - ansible_hosts_template.stat.exists
 
 - name: Set empty enabled test types list for fstests
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   set_fact:
     fstests_enabled_test_types: []
   when:
@@ -179,9 +179,9 @@
     config_sections_targets: "{{ clean_section_lines_without_fsname |  replace(\"'\", '') | split(', ') }}"
   lineinfile:
     path: "{{ topdir_path }}/.config"
-    regexp: '^({{ config_val + item.upper() }})=y'
-    line: ''
-  check_mode: yes
+    regexp: "^({{ config_val + item.upper() }})=y"
+    line: ""
+  check_mode: true
   with_items: "{{ config_sections_targets }}"
   loop_control:
     label: "Checking for {{ config_val + item.upper() }}"
@@ -190,7 +190,7 @@
     - ansible_hosts_template.stat.exists
 
 - name: Now expand the list of enabled fstests for valid configuration sections
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   set_fact:
     fstests_enabled_test_types: "{{ fstests_enabled_test_types  + [ fstests_fstyp + '-' + item.item | regex_replace('_', '-') ] }}"
   with_items: "{{ fstests_enabled_test_types_reg.results }}"
@@ -202,7 +202,7 @@
     - item.changed
 
 - name: Generate the Ansible inventory file for a dedicated fstests setup
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     fs_config_data: "{{ lookup('file', fs_config_path) }}"
     sections_without_default: "{{ fs_config_data | regex_replace('\\[default\\]', multiline=True) }}"
@@ -213,9 +213,9 @@
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - is_fstests
     - ansible_hosts_template.stat.exists
@@ -238,19 +238,19 @@
   debug:
     var: blktests_enabled_test_types
   when:
-    - False
+    - false
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_blktests
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible inventory file for a dedicated blktests setup
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_blktests
@@ -259,25 +259,25 @@
 - name: Infer enabled selftests test section types
   ansible.builtin.set_fact:
     selftests_enabled_test_types: >-
-     {{
-       lookup('file', topdir_path + '/.config')
-       | regex_findall('^CONFIG_SELFTESTS_SECTION_(.*)=y$', multiline=True)
-       | map('lower')
-       | list
-     }}
+      {{
+        lookup('file', topdir_path + '/.config')
+        | regex_findall('^CONFIG_SELFTESTS_SECTION_(.*)=y$', multiline=True)
+        | map('lower')
+        | list
+      }}
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_selftests
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible inventory file for a dedicated selftests setup
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_selftests
@@ -286,7 +286,8 @@
 - name: Collect dynamically supported filesystems
   vars:
     supported_filesystems_variables: "{{ hostvars[inventory_hostname] | dict2items | selectattr('key', 'search', '^sysbench_supported_filesystem_') }}"
-    local_supported_filesystems: "{{ supported_filesystems_variables | selectattr('value', 'eq', True) | map(attribute='key') | map('regex_replace', '^sysbench_supported_filesystem_', '') | list }}"
+    local_supported_filesystems: "{{ supported_filesystems_variables | selectattr('value', 'eq', True) | map(attribute='key') | map('regex_replace', '^sysbench_supported_filesystem_',
+      '') | list }}"
   set_fact:
     sysbench_enabled_filesystems: "{{ local_supported_filesystems }}"
     enabled_sysbench_tests: "{{ [] }}"
@@ -312,13 +313,13 @@
     - kdevops_workflow_enable_sysbench
 
 - name: Generate the Ansible inventory file for a dedicated sysbench setup
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_sysbench
@@ -339,26 +340,26 @@
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible hosts file for a dedicated mmtests setup
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_mmtests
     - ansible_hosts_template.stat.exists
 
 - name: Generate the Ansible hosts file for a dedicated reboot-limit setup
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - kdevops_workflows_dedicated_workflow
     - workflows_reboot_limit
@@ -370,7 +371,7 @@
   register: final_hosts_file
 
 - name: Fail if the dedicated workflow has no rules for node configuration for hosts file configuration
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   fail:
     msg: "Your dedicated workflow lacks rules for what nodes to use, go work on allowed topologies to parallelize testing one per node"
   when:
diff --git a/playbooks/roles/gen_nodes/defaults/main.yml b/playbooks/roles/gen_nodes/defaults/main.yml
index d805bbe7..23636837 100644
--- a/playbooks/roles/gen_nodes/defaults/main.yml
+++ b/playbooks/roles/gen_nodes/defaults/main.yml
@@ -1,73 +1,73 @@
 # SPDX-License-Identifier GPL-2.0+
 ---
-kdevops_enable_guestfs: False
-kdevops_enable_terraform: False
+kdevops_enable_guestfs: false
+kdevops_enable_terraform: false
 kdevops_nodes: "kdevops_nodes.yaml"
-kdevops_baseline_and_dev: False
-kdevops_workflow_enable_cxl: False
-kdevops_workflow_enable_pynfs: False
-kdevops_workflow_enable_gitr: False
-kdevops_workflow_enable_ltp: False
+kdevops_baseline_and_dev: false
+kdevops_workflow_enable_cxl: false
+kdevops_workflow_enable_pynfs: false
+kdevops_workflow_enable_gitr: false
+kdevops_workflow_enable_ltp: false
 kdevops_workflow_enable_nfstest: false
-kdevops_workflow_enable_selftests: False
-kdevops_workflow_enable_mmtests: False
-kdevops_workflow_enable_fio_tests: False
-kdevops_nfsd_enable: False
-kdevops_smbd_enable: False
-kdevops_krb5_enable: False
+kdevops_workflow_enable_selftests: false
+kdevops_workflow_enable_mmtests: false
+kdevops_workflow_enable_fio_tests: false
+kdevops_nfsd_enable: false
+kdevops_smbd_enable: false
+kdevops_krb5_enable: false
 kdevops_enable_iscsi: false
-workflows_reboot_limit: False
+workflows_reboot_limit: false
 
-virtualbox_provider: False
-libvirt_provider: False
+virtualbox_provider: false
+libvirt_provider: false
 
-libvirt_extra_drive_format: 'qcow2'
+libvirt_extra_drive_format: "qcow2"
 libvirt_vcpus_count: 8
 libvirt_mem_mb: 4096
-gdb_port_conflict: False
-libvirt_enable_gdb: False
+gdb_port_conflict: false
+libvirt_enable_gdb: false
 libvirt_gdb_baseport: 1234
 qemu_bin_path: "/usr/bin/qemu-system-x86_64"
 extra_disk_path: "./nvme_disks"
 extra_disk_driver: "nvme"
 extra_disk_controller: "NVMe"
-nvme_zone_enable: False
+nvme_zone_enable: false
 nvme_zone_drive_size: 102400
 nvme_zone_zasl: 0
-nvme_zone_size: '128M'
+nvme_zone_size: "128M"
 nvme_zone_capacity: 0
 nvme_zone_max_active: 0
 nvme_zone_max_open: 0
 nvme_zone_physical_block_size: 4096
 nvme_zone_logical_block_size: 4096
 kdevops_storage_pool_path: "/var/lib/libvirt/images/"
-libvirt_storage_pool_create: False
-libvirt_uri: 'qemu:///system'
-libvirt_system_uri: 'qemu:///system'
-libvirt_session: False
-libvirt_session_socket: '/run/libvirt/libvirt-sock-ro'
-libvirt_session_management_network_device: 'virbr0'
-libvirt_session_public_network_dev: 'virbr0'
-libvirt_override_machine_type: False
+libvirt_storage_pool_create: false
+libvirt_uri: "qemu:///system"
+libvirt_system_uri: "qemu:///system"
+libvirt_session: false
+libvirt_session_socket: "/run/libvirt/libvirt-sock-ro"
+libvirt_session_management_network_device: "virbr0"
+libvirt_session_public_network_dev: "virbr0"
+libvirt_override_machine_type: false
 libvirt_qemu_group: libvirt-qemu
 # we imply this is this the default for libvirt, we however
 # don't actually use this variable unless libvirt_override_machine_type is
 # True. So by default we use whatever libvirt uses by default.
-libvirt_machine_type: 'pc'
-libvirt_host_passthrough: False
-libvirt_enable_cxl: False
-libvirt_enable_qmp: False
+libvirt_machine_type: "pc"
+libvirt_host_passthrough: false
+libvirt_enable_cxl: false
+libvirt_enable_qmp: false
 libvirt_qemu_qmp_string: ""
-libvirt_qemu_qmp_wait: False
-libvirt_enable_cxl_demo_topo1: False
-libvirt_enable_cxl_demo_topo2: False
-libvirt_enable_cxl_switch_topo1: False
-libvirt_enable_cxl_dcd_topo1: False
-libvirt_extra_drive_id_prefix: 'drv'
-libvirt_extra_storage_drive_nvme: False
-libvirt_extra_storage_drive_virtio: False
-libvirt_extra_storage_drive_ide: False
-libvirt_extra_storage_drive_scsi: False
+libvirt_qemu_qmp_wait: false
+libvirt_enable_cxl_demo_topo1: false
+libvirt_enable_cxl_demo_topo2: false
+libvirt_enable_cxl_switch_topo1: false
+libvirt_enable_cxl_dcd_topo1: false
+libvirt_extra_drive_id_prefix: "drv"
+libvirt_extra_storage_drive_nvme: false
+libvirt_extra_storage_drive_virtio: false
+libvirt_extra_storage_drive_ide: false
+libvirt_extra_storage_drive_scsi: false
 libvirt_extra_storage_aio_mode: "native"
 libvirt_extra_storage_aio_cache_mode: "none"
 # Note that NVMe on qemu does not allow the physical block size
@@ -76,26 +76,25 @@ libvirt_extra_storage_nvme_logical_block_size: 512
 libvirt_extra_storage_virtio_logical_block_size: 512
 libvirt_extra_storage_virtio_physical_block_size: 512
 
-libvirt_largeio_enable: False
-libvirt_largeio_logical_compat: False
+libvirt_largeio_enable: false
+libvirt_largeio_logical_compat: false
 libvirt_largeio_logical_compat_size: 512
 libvirt_largeio_drives_per_space: 6
 libvirt_largeio_base_size: 10240
 libvirt_largeio_pow_limit: 12
 
-kdevops_workflows_dedicated_workflow: False
-kdevops_workflow_enable_fstests: False
-kdevops_workflow_enable_blktests: False
+kdevops_workflows_dedicated_workflow: false
+kdevops_workflow_enable_fstests: false
+kdevops_workflow_enable_blktests: false
 
 builder_nodes: []
 iscsi_nodes: []
-
-is_fstests: False
+is_fstests: false
 fstests_fstyp: "bogus"
 fs_config_role_path: "/dev/null"
 fs_config_data: "[section_1]"
 
-bootlinux_9p: False
+bootlinux_9p: false
 bootlinux_9p_host_path: "/dev/null"
 bootlinux_9p_msize: 0
 bootlinux_9p_fsdev: "ignore"
@@ -105,14 +104,14 @@ bootlinux_9p_driver: "virtio-9p-pci"
 
 bootlinux_builder: false
 
-guestfs_requires_uefi: False
+guestfs_requires_uefi: false
 
-kdevops_workflow_enable_sysbench: False
+kdevops_workflow_enable_sysbench: false
 
-pcie_passthrough_enable: False
-pcie_passthrough_target_type_first_guest: False
-pcie_passthrough_target_type_all_one_guest_name: False
-pcie_passthrough_target_type_each_per_device: False
+pcie_passthrough_enable: false
+pcie_passthrough_target_type_first_guest: false
+pcie_passthrough_target_type_all_one_guest_name: false
+pcie_passthrough_target_type_each_per_device: false
 pcie_passthrough_target_type: "first_guest"
 pcie_passthrough_target: "ignore"
 pcie_passthrough_devices:
diff --git a/playbooks/roles/gen_nodes/tasks/main.yml b/playbooks/roles/gen_nodes/tasks/main.yml
index 8c177254..3f2f2222 100644
--- a/playbooks/roles/gen_nodes/tasks/main.yml
+++ b/playbooks/roles/gen_nodes/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -101,7 +101,7 @@
 
 - name: Set fstests config file variable for {{ fstests_fstyp }}
   set_fact:
-    is_fstests: True
+    is_fstests: true
     fs_config_path: "{{ kdevops_playbooks_dir_full_path }}/{{ fs_config_role_path }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -122,8 +122,8 @@
   register: kdevops_nodes_dest
 
 - name: Ensure proper permission on {{ kdevops_nodes }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ topdir_path }}/{{ kdevops_nodes }}"
@@ -133,7 +133,7 @@
     - kdevops_nodes_dest.stat.exists
 
 - name: Generate the generic kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ generic_nodes }}"
@@ -141,13 +141,13 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - not kdevops_workflows_dedicated_workflow
     - ansible_nodes_template.stat.exists
 
 - name: Generate the builder kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ builder_nodes }}"
@@ -155,13 +155,13 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - bootlinux_builder
     - ansible_nodes_template.stat.exists
 
 - name: Generate the pynfs kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ nfsd_nodes + iscsi_nodes }}"
@@ -169,14 +169,14 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_pynfs
     - ansible_nodes_template.stat.exists
 
 - name: Generate the cxl kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ generic_nodes }}"
@@ -184,7 +184,7 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_cxl
@@ -221,7 +221,7 @@
     - ansible_nodes_template.stat.exists
 
 - name: Set empty enabled test types list for fstests
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   set_fact:
     fstests_enabled_nodes: []
   when:
@@ -242,9 +242,9 @@
     config_sections_targets: "{{ clean_section_lines_without_fsname |  replace(\"'\", '') | split(', ') }}"
   lineinfile:
     path: "{{ topdir_path }}/.config"
-    regexp: '^({{ config_val + item.upper() }})=y'
-    line: ''
-  check_mode: yes
+    regexp: "^({{ config_val + item.upper() }})=y"
+    line: ""
+  check_mode: true
   with_items: "{{ config_sections_targets }}"
   loop_control:
     label: "Checking for {{ config_val + item.upper() }}"
@@ -253,7 +253,7 @@
     - ansible_nodes_template.stat.exists
 
 - name: Now expand the list of enabled fstests for valid configuration sections
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   vars:
     fs_test_section: "{{ fstests_fstyp + '-' + item.item | regex_replace('_', '-') }}"
     node: "{{ kdevops_host_prefix + '-' + fs_test_section }}"
@@ -269,7 +269,7 @@
     - not kdevops_baseline_and_dev
 
 - name: Now expand the list of enabled fstests for valid configuration sections with dev hosts
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   vars:
     fs_test_section: "{{ fstests_fstyp + '-' + item.item | regex_replace('_', '-') }}"
     node: "{{ kdevops_host_prefix + '-' + fs_test_section }}"
@@ -313,7 +313,7 @@
     - kdevops_krb5_enable|bool
 
 - name: Generate the fstests kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ fstests_enabled_nodes |  regex_replace('\\[') | regex_replace('\\]') | replace(\"'\", '') | split(', ') }}"
@@ -321,7 +321,7 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - is_fstests|bool
     - ansible_nodes_template.stat.exists
@@ -366,13 +366,13 @@
   debug:
     var: blktests_enabled_test_types
   when:
-    - False
+    - false
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_blktests
     - ansible_nodes_template.stat.exists
 
 - name: Generate the blktests kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ blktests_enabled_test_types }}"
@@ -380,7 +380,7 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_blktests
@@ -422,7 +422,7 @@
     - kdevops_baseline_and_dev
 
 - name: Generate the selftests kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ selftests_enabled_test_types }}"
@@ -430,7 +430,7 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_selftests
@@ -439,7 +439,8 @@
 - name: Collect dynamically supported filesystems
   vars:
     supported_filesystems_variables: "{{ hostvars[inventory_hostname] | dict2items | selectattr('key', 'search', '^sysbench_supported_filesystem_') }}"
-    local_supported_filesystems: "{{ supported_filesystems_variables | selectattr('value', 'eq', True) | map(attribute='key') | map('regex_replace', '^sysbench_supported_filesystem_', '') | list }}"
+    local_supported_filesystems: "{{ supported_filesystems_variables | selectattr('value', 'eq', True) | map(attribute='key') | map('regex_replace', '^sysbench_supported_filesystem_',
+      '') | list }}"
   set_fact:
     sysbench_enabled_filesystems: "{{ local_supported_filesystems }}"
     enabled_sysbench_tests: "{{ [] }}"
@@ -494,7 +495,7 @@
     - enabled_sysbench_tests | length == 0
 
 - name: Generate the sysbench kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ enabled_sysbench_tests }}"
@@ -502,7 +503,7 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_sysbench
@@ -544,7 +545,7 @@
     - kdevops_baseline_and_dev
 
 - name: Generate the mmtests kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ mmtests_enabled_test_types }}"
@@ -552,14 +553,14 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - kdevops_workflow_enable_mmtests
     - ansible_nodes_template.stat.exists
 
 - name: Generate the reboot-limit kdevops nodes file using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ [kdevops_host_prefix + '-reboot-limit'] }}"
@@ -567,7 +568,7 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - workflows_reboot_limit
@@ -575,7 +576,7 @@
     - not kdevops_baseline_and_dev
 
 - name: Generate the reboot-limit kdevops nodes file with dev hosts using {{ kdevops_nodes_template }} as jinja2 source template
-  tags: [ 'hosts' ]
+  tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ [kdevops_host_prefix + '-reboot-limit', kdevops_host_prefix + '-reboot-limit-dev'] }}"
@@ -583,7 +584,7 @@
   template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
-    force: yes
+    force: true
   when:
     - kdevops_workflows_dedicated_workflow
     - workflows_reboot_limit
@@ -600,7 +601,7 @@
   register: dedicated_nodes_template
 
 - name: Fail if the dedicated workflow has no rules for node configuration
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   fail:
     msg: "Your dedicated workflow lacks rules for what nodes to use, go work on allowed topologies to parallelize testing one per node"
   when:
@@ -612,11 +613,11 @@
   ansible.builtin.file:
     path: "{{ topdir_path }}/{{ kdevops_nodes }}"
     state: touch
-    mode: '0755'
+    mode: "0755"
 
 - name: Import list of guest nodes
   include_vars: "{{ topdir_path }}/{{ kdevops_nodes }}"
-  ignore_errors: yes
+  ignore_errors: true
   when:
     - kdevops_enable_guestfs|bool
 
@@ -654,7 +655,7 @@
 
 - name: Set the conflict flag on if conflict occur
   set_fact:
-    gdb_port_conflict: True
+    gdb_port_conflict: true
   when:
     - libvirt_enable_gdb|bool
     - gdb_port_reg.results is defined
@@ -674,7 +675,7 @@
   template:
     src: "guestfs_{{ libvirt_machine_type }}.j2.xml"
     dest: "{{ topdir_path }}/guestfs/{{ hostname }}/{{ hostname }}.xml"
-    force: yes
+    force: true
   with_items: "{{ guestfs_nodes }}"
   loop_control:
     index_var: idx
diff --git a/playbooks/roles/gen_pci_kconfig/defaults/main.yml b/playbooks/roles/gen_pci_kconfig/defaults/main.yml
index dc87802d..42b51a29 100644
--- a/playbooks/roles/gen_pci_kconfig/defaults/main.yml
+++ b/playbooks/roles/gen_pci_kconfig/defaults/main.yml
@@ -1,3 +1,3 @@
 # SPDX-License-Identifier GPL-2.0+
 ---
-kdevops_pcie_dynamic_kconfig: False
+kdevops_pcie_dynamic_kconfig: false
diff --git a/playbooks/roles/gen_tfvars/defaults/main.yml b/playbooks/roles/gen_tfvars/defaults/main.yml
index a99c0161..fce7afd6 100644
--- a/playbooks/roles/gen_tfvars/defaults/main.yml
+++ b/playbooks/roles/gen_tfvars/defaults/main.yml
@@ -1,8 +1,8 @@
 # SPDX-License-Identifier GPL-2.0+
 ---
-kdevops_terraform_ssh_config_update: False
-kdevops_terraform_ssh_config_update_strict: False
-kdevops_terraform_ssh_config_update_backup: False
+kdevops_terraform_ssh_config_update: false
+kdevops_terraform_ssh_config_update_strict: false
+kdevops_terraform_ssh_config_update_backup: false
 
 kdevops_terraform_provider: "aws"
 kdevops_terraform_ssh_pubkey_file: "/dev/null"
diff --git a/playbooks/roles/gen_tfvars/tasks/main.yml b/playbooks/roles/gen_tfvars/tasks/main.yml
index 2967f43e..fb0d0e01 100644
--- a/playbooks/roles/gen_tfvars/tasks/main.yml
+++ b/playbooks/roles/gen_tfvars/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -29,8 +29,8 @@
   register: kdevops_tfvars_dest
 
 - name: Ensure proper permission on {{ kdevops_terraform_tfvars }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ topdir_path }}/{{ kdevops_terraform_tfvars }}"
@@ -40,13 +40,13 @@
     - kdevops_tfvars_dest.stat.exists
 
 - name: Generate the terraform variables file file using {{ kdevops_terraform_tfvars }} as jinja2 source template
-  tags: [ 'nodes' ]
+  tags: ["nodes"]
   vars:
     tfvars_template: "{{ kdevops_terraform_tfvars_template }}"
   template:
     src: "{{ tfvars_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_terraform_tfvars }}"
-    force: yes
+    force: true
   when:
     - kdevops_enable_terraform
     - terraform_tfvars_template.stat.exists
diff --git a/playbooks/roles/gitr/defaults/main.yml b/playbooks/roles/gitr/defaults/main.yml
index ff737ca4..faefedfb 100644
--- a/playbooks/roles/gitr/defaults/main.yml
+++ b/playbooks/roles/gitr/defaults/main.yml
@@ -3,12 +3,12 @@
 # Our sensible defaults for the gitr role.
 #
 # The default is to not run the gitr tests.
-kdevops_run_gitr: False
+kdevops_run_gitr: false
 
 kdevops_workflows_dedicated_workflow: false
 
 gitr_test_list: ""
-gitr_uses_no_devices: False
+gitr_uses_no_devices: false
 
 # NFS-specific defaults
 gitr_nfs_use_kdevops_nfsd: false
diff --git a/playbooks/roles/gitr/tasks/install-deps/debian/main.yml b/playbooks/roles/gitr/tasks/install-deps/debian/main.yml
index 50b73d20..8fb60c03 100644
--- a/playbooks/roles/gitr/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/gitr/tasks/install-deps/debian/main.yml
@@ -1,7 +1,7 @@
 ---
 - name: Install dependencies for gitr
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ gitr_packages }}"
diff --git a/playbooks/roles/gitr/tasks/install-deps/main.yml b/playbooks/roles/gitr/tasks/install-deps/main.yml
index 73a1da36..896da6ac 100644
--- a/playbooks/roles/gitr/tasks/install-deps/main.yml
+++ b/playbooks/roles/gitr/tasks/install-deps/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ ansible_distribution }}.yml'
-        - '{{ ansible_os_family }}.yml'
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Debian-specific setup
   ansible.builtin.include_tasks: debian/main.yml
diff --git a/playbooks/roles/gitr/tasks/install-deps/redhat/main.yml b/playbooks/roles/gitr/tasks/install-deps/redhat/main.yml
index d3f0aab6..2028d624 100644
--- a/playbooks/roles/gitr/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/gitr/tasks/install-deps/redhat/main.yml
@@ -19,7 +19,7 @@
 
 - name: Install dependencies for gitr
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ gitr_packages }}"
@@ -27,7 +27,7 @@
 
 - name: Install CPAN modules for gitr
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   community.general.cpanm:
     name: "{{ item }}"
@@ -56,7 +56,7 @@
 
     - name: Install cvsps
       become: true
-      become_flags: 'su - -c'
+      become_flags: "su - -c"
       become_method: ansible.builtin.sudo
       community.general.make:
         target: install
diff --git a/playbooks/roles/gitr/tasks/install-deps/suse/main.yml b/playbooks/roles/gitr/tasks/install-deps/suse/main.yml
index 50b73d20..8fb60c03 100644
--- a/playbooks/roles/gitr/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/gitr/tasks/install-deps/suse/main.yml
@@ -1,7 +1,7 @@
 ---
 - name: Install dependencies for gitr
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ gitr_packages }}"
diff --git a/playbooks/roles/gitr/tasks/main.yml b/playbooks/roles/gitr/tasks/main.yml
index f1e7b6ce..02bcf216 100644
--- a/playbooks/roles/gitr/tasks/main.yml
+++ b/playbooks/roles/gitr/tasks/main.yml
@@ -12,7 +12,7 @@
   tags: vars
 
 - name: Set up the /data mount point
-  tags: ['data_partition']
+  tags: ["data_partition"]
   ansible.builtin.include_role:
     name: create_data_partition
 
@@ -29,29 +29,32 @@
     gitr_run_uniqifier: "{{ ansible_date_time.iso8601_basic_short }}"
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ gitr_results_target }}/" state=absent
+  file: path="{{ gitr_results_target }}/" state=absent
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  local_action: file path="{{ gitr_results_target }}/" state=directory
+  file: path="{{ gitr_results_target }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Get used target kernel version
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ gitr_results_target }}/../last-kernel.txt"
-  tags: [ 'run_tests', 'copy_results', 'print_results' ]
+  shell: echo {{ last_kernel }} > {{ gitr_results_target }}/../last-kernel.txt
+  delegate_to: localhost
+  tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
 
 - name: Ensure the local results directory exists
@@ -78,7 +81,7 @@
 - name: Remove the old test file system
   tags: gitr
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.posix.mount:
     path: "{{ gitr_mnt }}"
@@ -158,7 +161,7 @@
   tags: gitr
   ansible.builtin.include_role:
     name: create_nfs_mount
-  vars:  # noqa: var-naming[no-role-prefix]
+  vars: # noqa: var-naming[no-role-prefix]
     nfs_mounted_on: "{{ gitr_mnt }}"
     nfs_server_hostname: "{{ gitr_nfs_server_host }}"
     nfs_server_export: "{{ nfsd_export_path }}/{{ gitr_nfs_server_export }}"
@@ -171,7 +174,7 @@
   tags: gitr
   ansible.builtin.include_role:
     name: create_nfs_mount
-  vars:  # noqa: var-naming[no-role-prefix]
+  vars: # noqa: var-naming[no-role-prefix]
     nfs_mounted_on: "{{ gitr_mnt }}"
     nfs_server_hostname: "{{ gitr_nfs_server_host }}"
     nfs_server_export: "{{ nfsd_export_path }}/{{ gitr_nfs_server_export }}"
@@ -183,7 +186,7 @@
 - name: Remove existing git build directory
   tags: gitr
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     path: "{{ gitr_mnt }}/git"
@@ -219,7 +222,7 @@
     - not kdevops_workflows_dedicated_workflow|bool
 
 - name: Build git on the target nodes
-  tags: ['gitr', 'build']
+  tags: ["gitr", "build"]
   community.general.make:
     chdir: "{{ gitr_mnt }}/git"
     jobs: "{{ ansible_processor_nproc }}"
@@ -373,7 +376,7 @@
     - ansible_os_family == 'RedHat'
 
 - name: Verify last-run kernel directory exists
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   stat:
     path: "{{ gitr_results_full_path }}/last-run/{{ last_kernel }}"
@@ -384,7 +387,7 @@
     src: "{{ gitr_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ gitr_results_full_path }}/"
   run_once: true
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   when:
     - last_run_kernel_dir.stat.exists
diff --git a/playbooks/roles/guestfs/defaults/main.yml b/playbooks/roles/guestfs/defaults/main.yml
index 76854d06..bb77f541 100644
--- a/playbooks/roles/guestfs/defaults/main.yml
+++ b/playbooks/roles/guestfs/defaults/main.yml
@@ -3,4 +3,4 @@ distro_debian_based: false
 
 libvirt_uri_system: false
 libvirt_enable_largeio: false
-bootlinux_9p: False
+bootlinux_9p: false
diff --git a/playbooks/roles/guestfs/tasks/bringup/console-permissions.yml b/playbooks/roles/guestfs/tasks/bringup/console-permissions.yml
index ad169a4e..dc4dbc3d 100644
--- a/playbooks/roles/guestfs/tasks/bringup/console-permissions.yml
+++ b/playbooks/roles/guestfs/tasks/bringup/console-permissions.yml
@@ -7,7 +7,7 @@
 
 - name: Look for console.log files in guestfs subdirectories to check for CI enablement
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.find:
     paths: "{{ topdir_path }}/guestfs"
@@ -18,7 +18,7 @@
 
 - name: Ensure console.log files are owned by the main user for CI monitoring
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     path: "{{ item.path }}"
diff --git a/playbooks/roles/guestfs/tasks/bringup/main.yml b/playbooks/roles/guestfs/tasks/bringup/main.yml
index deb0846b..457fea16 100644
--- a/playbooks/roles/guestfs/tasks/bringup/main.yml
+++ b/playbooks/roles/guestfs/tasks/bringup/main.yml
@@ -8,7 +8,7 @@
 
 - name: Provision each target node
   when:
-    - 'inventory_hostname not in defined_vms.list_vms'
+    - "inventory_hostname not in defined_vms.list_vms"
   block:
     - name: Set the pathname of the ssh directory for each target node
       ansible.builtin.set_fact:
@@ -131,7 +131,7 @@
   file:
     path: "{{ bootlinux_9p_host_path }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
   run_once: true
   delegate_to: localhost
   when:
diff --git a/playbooks/roles/guestfs/tasks/bringup/network.yml b/playbooks/roles/guestfs/tasks/bringup/network.yml
index ca516e0c..db3608aa 100644
--- a/playbooks/roles/guestfs/tasks/bringup/network.yml
+++ b/playbooks/roles/guestfs/tasks/bringup/network.yml
@@ -22,7 +22,7 @@
 - name: Check if dnsmasq service is enabled
   # noqa: command-instead-of-module
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: "systemctl is-enabled dnsmasq"
@@ -36,7 +36,7 @@
 - name: Check if dnsmasq service is active
   # noqa: command-instead-of-module
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: "systemctl is-active dnsmasq"
@@ -62,7 +62,7 @@
 
 - name: Check if libvirt default network is running
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   environment:
     LIBVIRT_DEFAULT_URI: "{{ libvirt_uri }}"
@@ -75,7 +75,7 @@
 
 - name: Start the libvirt default network
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   environment:
     LIBVIRT_DEFAULT_URI: "{{ libvirt_uri }}"
diff --git a/playbooks/roles/guestfs/tasks/bringup/storage-pool-path.yml b/playbooks/roles/guestfs/tasks/bringup/storage-pool-path.yml
index 385b6cdf..0abab277 100644
--- a/playbooks/roles/guestfs/tasks/bringup/storage-pool-path.yml
+++ b/playbooks/roles/guestfs/tasks/bringup/storage-pool-path.yml
@@ -24,7 +24,7 @@
 
 - name: Create storage pool path directory and set group (libvirt system uri)
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     path: "{{ libvirt_storage_pool_path }}"
@@ -45,7 +45,7 @@
 
 - name: Create kdevops guestfs storage directory (libvirt system uri)
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     path: "{{ guestfs_base_image_dir }}"
@@ -57,7 +57,7 @@
 
 - name: Check if directory is owned by the correct group (libvirt system uri)
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: stat -c '%G' "{{ libvirt_storage_pool_path }}"
@@ -68,7 +68,7 @@
 
 - name: Check if directory has group write permissions (libvirt system uri)
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: stat -c '%A' "{{ libvirt_storage_pool_path }}"
@@ -79,7 +79,7 @@
 
 - name: Verify storage pool path directory is group-writable (libvirt system uri)
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.fail:
     msg: |
diff --git a/playbooks/roles/hypervisor-tuning/defaults/main.yml b/playbooks/roles/hypervisor-tuning/defaults/main.yml
index 3d6cfcc4..a7c197b7 100644
--- a/playbooks/roles/hypervisor-tuning/defaults/main.yml
+++ b/playbooks/roles/hypervisor-tuning/defaults/main.yml
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-hypervisor_tunning_enabled: False
-hypervisor_tunning_ksm_enable: False
-hypervisor_tunning_zswap_enable: False
+hypervisor_tunning_enabled: false
+hypervisor_tunning_ksm_enable: false
+hypervisor_tunning_zswap_enable: false
 hypervisor_tunning_zswap_max_pool_percent: 20
diff --git a/playbooks/roles/hypervisor-tuning/tasks/main.yml b/playbooks/roles/hypervisor-tuning/tasks/main.yml
index 0732b6de..e63cdb08 100644
--- a/playbooks/roles/hypervisor-tuning/tasks/main.yml
+++ b/playbooks/roles/hypervisor-tuning/tasks/main.yml
@@ -1,71 +1,68 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   when:
     - hypervisor_tunning_enabled|bool
-  tags: [ 'vars', 'hypervisor' ]
+  tags: ["vars", "hypervisor"]
 
 - name: Check to see if ksm file exists /sys/kernel/mm/ksm/run
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  stat:
-    path=/sys/kernel/mm/ksm/run
+  stat: path=/sys/kernel/mm/ksm/run
   register: ksm_enable_file
-  tags: [ 'hypervisor' ]
+  tags: ["hypervisor"]
 
 - name: Enable ksm
-  become: yes
+  become: true
   become_method: sudo
   shell: echo 1 > /sys/kernel/mm/ksm/run
-  tags: [ 'hypervisor' ]
+  tags: ["hypervisor"]
   when:
     - ksm_enable_file.stat.exists
     - hypervisor_tunning_enabled|bool
 
 - name: Check to see if zswap enable file exists /sys/module/zswap/parameters/enabled
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  stat:
-    path=/sys/module/zswap/parameters/enabled
+  stat: path=/sys/module/zswap/parameters/enabled
   register: zswap_enable_file
-  tags: [ 'hypervisor' ]
+  tags: ["hypervisor"]
 
 - name: Check to see if zswap max pool percent file exists /sys/module/zswap/parameters/max_pool_percent
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  stat:
-    path=/sys/module/zswap/parameters/max_pool_percent
+  stat: path=/sys/module/zswap/parameters/max_pool_percent
   register: zswap_max_pool_percent_file
   when:
     - hypervisor_tunning_zswap_enable|bool
-  tags: [ 'hypervisor' ]
+  tags: ["hypervisor"]
 
 - name: Configure zswap max pool percent to desired setting
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   shell: echo {{ hypervisor_tunning_zswap_max_pool_percent }} > /sys/module/zswap/parameters/max_pool_percent
   register: zswap_max_pool_percent_file
   when:
     - hypervisor_tunning_zswap_enable|bool
     - zswap_max_pool_percent_file.stat.exists
-  tags: [ 'hypervisor' ]
+  tags: ["hypervisor"]
 
 - name: Enable zswap
-  become: yes
+  become: true
   become_method: sudo
   shell: echo 1 > /sys/module/zswap/parameters/enabled
-  tags: [ 'hypervisor' ]
+  tags: ["hypervisor"]
   when:
     - zswap_enable_file.stat.exists
     - hypervisor_tunning_zswap_enable|bool
diff --git a/playbooks/roles/install-menuconfig-deps/defaults/main.yml b/playbooks/roles/install-menuconfig-deps/defaults/main.yml
index e9160eca..015da566 100644
--- a/playbooks/roles/install-menuconfig-deps/defaults/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/defaults/main.yml
@@ -1,3 +1,3 @@
 # SPDX-License-Identifier GPL-2.0+
 ---
-kdevops_first_run: False
+kdevops_first_run: false
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml
index 275b9710..c9d63331 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: linux
 
 - name: Install generic kdevops deps
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -20,5 +20,5 @@
       - sed
       - libncurses-dev
     state: present
-    update_cache: yes
-  tags: [ 'kdevops', 'deps' ]
+    update_cache: true
+  tags: ["kdevops", "deps"]
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml
index 80680dc0..e9902e4d 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install kdevops generic dependencies
-  become: yes
+  become: true
   become_method: sudo
   dnf:
     name:
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
index c652ab2c..871908a2 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Import optional distribution specific variables
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family']|lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml
index ea14105e..70a7e554 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install kdevops generic dependencies
-  become: yes
+  become: true
   become_method: sudo
   dnf:
     name:
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml
index 63d44395..e14a3207 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml
@@ -4,10 +4,10 @@
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Install kdevops generic dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/main.yml
index baab2e13..5c8da645 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/install_systemd_journal_remote/defaults/main.yml b/playbooks/roles/install_systemd_journal_remote/defaults/main.yml
index e98ec39a..470ab464 100644
--- a/playbooks/roles/install_systemd_journal_remote/defaults/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/defaults/main.yml
@@ -1,5 +1,5 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-devconfig_enable_systemd_journal_remote: False
-devconfig_systemd_journal_use_http: False
+devconfig_enable_systemd_journal_remote: false
+devconfig_systemd_journal_use_http: false
 foo: "/dev/null"
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml
index 4aa13e71..2bee6769 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install systemd-journal-remote
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml
index 646fc0ee..db7ac51c 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install systemd-journal-remote
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "systemd-journal-remote"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/suse/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/suse/main.yml
index 198dad7b..fcf491a1 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install systemd-journal-remote
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/main.yml
index 8cd317a9..7927d133 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -15,49 +15,49 @@
   include_tasks: install-deps/main.yml
 
 - name: Set up the server /etc/systemd/journal-remote.conf
-  tags: [ 'journal' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "journal-remote.conf.j2"
     dest: "/etc/systemd/journal-remote.conf"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Use custom systemd-journal-remote.service to disable SSL
-  tags: [ 'journal' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "systemd-journal-remote.service.j2"
     dest: "/lib/systemd/system/systemd-journal-remote.service"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - devconfig_enable_systemd_journal_remote|bool
     - devconfig_systemd_journal_use_http|bool
 
 - name: Ensure our user is part of the systemd-journal-remote group
-  tags: [ 'journal' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.user:
-    name:  "{{ ansible_user_id }}"
+    name: "{{ ansible_user_id }}"
     groups: systemd-journal-remote
-    append: yes
+    append: true
   when:
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Restart systemd-journal-remote on the server
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-journal-remote.service
@@ -68,8 +68,8 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Ensure systemd-journal-remote.service is running on the server
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-journal-remote.service
@@ -78,16 +78,16 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Set group sticky bit for /var/log/journal/remote/
-  tags: [ 'journal' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "/var/log/journal/remote/"
     owner: systemd-journal-remote
     group: systemd-journal-remote
     mode: u=rwx,g=rwx,o=rx,g+s
-    recurse: True
+    recurse: true
     state: directory
   when:
     - devconfig_enable_systemd_journal_remote|bool
diff --git a/playbooks/roles/install_systemd_timesyncd/defaults/main.yml b/playbooks/roles/install_systemd_timesyncd/defaults/main.yml
index 98f2b9dd..3bc1e4a3 100644
--- a/playbooks/roles/install_systemd_timesyncd/defaults/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/defaults/main.yml
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-devconfig_enable_systemd_timesyncd: False
-devconfig_enable_systemd_timesyncd_ntp: False
-devconfig_enable_systemd_timesyncd_ntp_google: False
-devconfig_enable_systemd_timesyncd_ntp_debian: False
-devconfig_enable_systemd_timesyncd_ntp_google_debian: False
+devconfig_enable_systemd_timesyncd: false
+devconfig_enable_systemd_timesyncd_ntp: false
+devconfig_enable_systemd_timesyncd_ntp_google: false
+devconfig_enable_systemd_timesyncd_ntp_debian: false
+devconfig_enable_systemd_timesyncd_ntp_google_debian: false
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml
index ad1331aa..9ac68013 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install systemd-timesyncd
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml
index d8072063..2812a5ce 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install systemd-timesyncd
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: systemd-udev
   retries: 3
   delay: 5
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/suse/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/suse/main.yml
index 6559d5f5..e73b85d0 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install systemd-timesyncd
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/main.yml
index de70996f..e767a880 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -15,30 +15,30 @@
   include_tasks: install-deps/main.yml
 
 - name: Set up the server /etc/systemd/timesyncd.conf
-  tags: [ 'timesyncd' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["timesyncd"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "timesyncd.conf.j2"
     dest: "/etc/systemd/timesyncd.conf"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - devconfig_enable_systemd_timesyncd|bool
 
 - name: Enable NTP
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "timedatectl set-ntp true"
   when:
     - devconfig_enable_systemd_timesyncd_ntp|bool
 
 - name: Restart systemd-timesyncd.service on the server
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: systemd-timesyncd.service
@@ -49,8 +49,8 @@
     - devconfig_enable_systemd_timesyncd|bool
 
 - name: Ensure systemd-timesyncd.service is running on the server
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "timedatectl status"
   when:
diff --git a/playbooks/roles/install_terraform/defaults/main.yml b/playbooks/roles/install_terraform/defaults/main.yml
index 0e1e7c77..230fa17e 100644
--- a/playbooks/roles/install_terraform/defaults/main.yml
+++ b/playbooks/roles/install_terraform/defaults/main.yml
@@ -3,7 +3,7 @@
 
 # You can override these
 terraform_version: "1.2.3"
-force_install_if_present: False
+force_install_if_present: false
 
 # Ignores using distro packages and installs from zip file instead
-force_install_zip: False
+force_install_zip: false
diff --git a/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml b/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml
index f7753f86..c347ecb8 100644
--- a/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml
@@ -4,7 +4,7 @@
   register: terraform_present
   changed_when: terraform_present.rc == 1
   failed_when: terraform_present.rc != 0 and terraform_present.rc != 1
-  tags: [ 'terraform', 'verify' ]
+  tags: ["terraform", "verify"]
 
 - name: Install Terraform Dependencies
   become: true
@@ -16,11 +16,11 @@
     update_cache: true
 
 - name: Download Terraform from the latest release and install locally
-  become: yes
+  become: true
   become_method: sudo
   unarchive:
     src: https://releases.hashicorp.com/terraform/{{ terraform_version }}/terraform_{{ terraform_version }}_linux_amd64.zip
     dest: /usr/local/bin
-    remote_src: yes
+    remote_src: true
   when:
     - force_install_if_present|bool or terraform_present.rc != 0
diff --git a/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml b/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml
index 3397f403..1df38820 100644
--- a/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml
@@ -4,14 +4,14 @@
   register: terraform_present
   changed_when: terraform_present.rc == 1
   failed_when: terraform_present.rc != 0 and terraform_present.rc != 1
-  tags: [ 'terraform', 'verify' ]
+  tags: ["terraform", "verify"]
 
 - name: Download Terraform from the latest release and install locally
-  become: yes
+  become: true
   become_method: sudo
   unarchive:
     src: https://releases.hashicorp.com/terraform/{{ terraform_version }}/terraform_{{ terraform_version }}_linux_amd64.zip
     dest: /usr/local/bin
-    remote_src: yes
+    remote_src: true
   when:
     - force_install_if_present|bool or terraform_present.rc != 0
diff --git a/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml b/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml
index 0b24a06a..895ceb23 100644
--- a/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml
@@ -17,21 +17,21 @@
   register: terraform_present
   changed_when: terraform_present.rc == 1
   failed_when: terraform_present.rc != 0 and terraform_present.rc != 1
-  tags: [ 'terraform', 'verify' ]
+  tags: ["terraform", "verify"]
 
 - name: Download Terraform from the latest release and install locally
-  become: yes
+  become: true
   become_method: sudo
   unarchive:
     src: https://releases.hashicorp.com/terraform/{{ terraform_version }}/terraform_{{ terraform_version }}_linux_amd64.zip
     dest: /usr/local/bin
-    remote_src: yes
+    remote_src: true
   when:
     - force_install_zip|bool
     - force_install_if_present|bool or (is_sle or is_leap and terraform_present.rc != 0)
 
 - name: Install vagrant and vagrant-libvirt from your tumbleweed repository
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/install_terraform/tasks/main.yml b/playbooks/roles/install_terraform/tasks/main.yml
index 8e682b75..8b584090 100644
--- a/playbooks/roles/install_terraform/tasks/main.yml
+++ b/playbooks/roles/install_terraform/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/iscsi/tasks/add_initiator.yml b/playbooks/roles/iscsi/tasks/add_initiator.yml
index 3afddda0..a1a5da05 100644
--- a/playbooks/roles/iscsi/tasks/add_initiator.yml
+++ b/playbooks/roles/iscsi/tasks/add_initiator.yml
@@ -4,15 +4,15 @@
   vars:
     params:
       files:
-        - '{{ ansible_distribution }}.yml'
-        - '{{ ansible_os_family }}.yml'
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Install dependencies for iSCSI initiator
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ iscsi_initiator_packages }}"
@@ -20,7 +20,7 @@
 
 - name: Discover iSCSI targets and login
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   community.general.open_iscsi:
     portal: "{{ iscsi_target_hostname }}"
@@ -35,7 +35,7 @@
 
 - name: Add an ACL on the iSCSI target for {{ initiator_name['content'] | b64decode | replace('InitiatorName=', '') }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ iscsi_target_hostname }}"
   ansible.builtin.command:
@@ -50,10 +50,10 @@
 
 - name: Back up the iSCSI target configuration
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ iscsi_target_hostname }}"
-  throttle: 1  # running this in parallel can clobber the backup file
+  throttle: 1 # running this in parallel can clobber the backup file
   ansible.builtin.command:
     cmd: "targetctl save"
   changed_when: true
diff --git a/playbooks/roles/iscsi/tasks/add_lun.yml b/playbooks/roles/iscsi/tasks/add_lun.yml
index 646f12d9..8c945014 100644
--- a/playbooks/roles/iscsi/tasks/add_lun.yml
+++ b/playbooks/roles/iscsi/tasks/add_lun.yml
@@ -1,7 +1,7 @@
 ---
 - name: Allocate an LVM logical device on the iSCSI target
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ iscsi_target_hostname }}"
   community.general.lvol:
@@ -11,7 +11,7 @@
 
 - name: Create an iSCSI backstore for the new device
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ iscsi_target_hostname }}"
   ansible.builtin.command:
@@ -27,7 +27,7 @@
 
 - name: Create the new Logical Unit
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ iscsi_target_hostname }}"
   ansible.builtin.command:
@@ -42,10 +42,10 @@
 
 - name: Back up the iSCSI target configuration
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ iscsi_target_hostname }}"
-  throttle: 1  # running this in parallel can clobber the backup file
+  throttle: 1 # running this in parallel can clobber the backup file
   ansible.builtin.command:
     cmd: "targetctl save"
   changed_when: true
diff --git a/playbooks/roles/iscsi/tasks/main.yml b/playbooks/roles/iscsi/tasks/main.yml
index 904e0c21..29234d5d 100644
--- a/playbooks/roles/iscsi/tasks/main.yml
+++ b/playbooks/roles/iscsi/tasks/main.yml
@@ -4,15 +4,15 @@
   vars:
     params:
       files:
-        - '{{ ansible_distribution }}.yml'
-        - '{{ ansible_os_family }}.yml'
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Install dependencies for iSCSI target
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ iscsi_target_packages }}"
@@ -26,7 +26,7 @@
 
 - name: Create a directory for storing iSCSI persistent reservations
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     path: "/etc/target/pr"
@@ -38,7 +38,7 @@
 
 - name: Disable firewalld
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.systemd_service:
     name: firewalld.service
@@ -48,7 +48,7 @@
 
 - name: Enable the systemd iSCSI service
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.systemd_service:
     name: "{{ iscsi_target_service_name }}"
@@ -57,7 +57,7 @@
 
 - name: Enable targetcli auto_save_on_exit
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: "targetcli set global auto_save_on_exit=true"
@@ -67,7 +67,7 @@
 
 - name: Create iSCSI target {{ iscsi_target_wwn }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: "targetcli iscsi/ create {{ iscsi_target_wwn }}"
@@ -77,7 +77,7 @@
 
 - name: Enable the target's generate_node_acls attribute
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: "targetcli iscsi/{{ iscsi_target_wwn }}/tpg1 set attribute generate_node_acls=1"
@@ -87,7 +87,7 @@
 
 - name: Disable initiator authentication
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.command:
     cmd: "targetcli iscsi/{{ iscsi_target_wwn }}/tpg1 set attribute authentication=0"
@@ -97,9 +97,9 @@
 
 - name: Back up the iSCSI target configuration
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
-  throttle: 1  # running this in parallel can clobber the backup file
+  throttle: 1 # running this in parallel can clobber the backup file
   ansible.builtin.command:
     cmd: "targetctl save"
   changed_when: true
diff --git a/playbooks/roles/kdc/tasks/install-deps/debian/main.yml b/playbooks/roles/kdc/tasks/install-deps/debian/main.yml
index bc2a6a78..638cb763 100644
--- a/playbooks/roles/kdc/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/kdc/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install kdc dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -8,4 +8,4 @@
       - krb5-kdc
       - krb5-user
     state: present
-    update_cache: yes
+    update_cache: true
diff --git a/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml b/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml
index f92f5109..b8f99ce9 100644
--- a/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install kdc dependencies
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/kdc/tasks/install-deps/suse/main.yml b/playbooks/roles/kdc/tasks/install-deps/suse/main.yml
index c063563a..554b81c4 100644
--- a/playbooks/roles/kdc/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/kdc/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install kdc dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/kdc/tasks/main.yml b/playbooks/roles/kdc/tasks/main.yml
index dbcb3098..e10211e4 100644
--- a/playbooks/roles/kdc/tasks/main.yml
+++ b/playbooks/roles/kdc/tasks/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ansible_distribution}}.yml'
-        - '{{ansible_os_family}}.yml'
+        - "{{ansible_distribution}}.yml"
+        - "{{ansible_os_family}}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Debian-specific setup
   ansible.builtin.include_tasks: install-deps/debian/main.yml
@@ -23,67 +23,67 @@
   when: ansible_os_family == 'RedHat'
 
 - name: Configure /etc/krb5.conf
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: krb5.conf.j2
     dest: /etc/krb5.conf
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
 
 - name: Ensure /etc/krb5.conf.d exists
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.file:
     path: /etc/krb5.conf.d
     state: directory
     owner: root
     group: root
-    mode: 0755
+    mode: "0755"
 
 - name: Configure {{ kdc_conf_dir }}/kdc.conf
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: kdc.conf.j2
     dest: "{{ kdc_conf_dir }}/kdc.conf"
     owner: root
     group: root
-    mode: 0600
+    mode: "0600"
 
 - name: Configure {{ kdc_data_dir }}/kadm5.acl
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: kadm5.acl.j2
     dest: "{{ kdc_data_dir }}/kadm5.acl"
     owner: root
     group: root
-    mode: 0600
+    mode: "0600"
 
 - name: Check to see if Kerberos database exists
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.stat:
     path: "{{ kdc_data_dir }}/principal"
   register: kerberos_db
 
 - name: Create database
-  become: yes
+  become: true
   become_method: sudo
-  ansible.builtin.shell:
+  ansible.builtin.command:
     cmd: kdb5_util -P {{ krb5_admin_pw }} create -s
   when: not kerberos_db.stat.exists
 
 - name: Create admin principal
-  become: yes
+  become: true
   become_method: sudo
-  ansible.builtin.shell:
+  ansible.builtin.command:
     cmd: kadmin.local -q "addprinc -pw {{ krb5_admin_pw }} root/admin"
 
 - name: Allow access to kerberos service in firewalld
-  become: yes
+  become: true
   become_method: sudo
   ansible.posix.firewalld:
     service: kerberos
@@ -93,7 +93,7 @@
   when: ansible_os_family == 'RedHat'
 
 - name: Allow access to kadmin service in firewalld
-  become: yes
+  become: true
   become_method: sudo
   ansible.posix.firewalld:
     service: kadmin
@@ -103,7 +103,7 @@
   when: ansible_os_family == 'RedHat'
 
 - name: Start and enable {{ krb5kdc_service_name }} systemd service
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.systemd:
     name: "{{ krb5kdc_service_name }}"
@@ -111,7 +111,7 @@
     state: started
 
 - name: Start and enable {{ kadmin_service_name }} systemd service
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.systemd:
     name: "{{ kadmin_service_name }}"
diff --git a/playbooks/roles/kdc/vars/RedHat.yml b/playbooks/roles/kdc/vars/RedHat.yml
index 16de574d..536a47f2 100644
--- a/playbooks/roles/kdc/vars/RedHat.yml
+++ b/playbooks/roles/kdc/vars/RedHat.yml
@@ -2,6 +2,7 @@
 kdc_conf_dir: /var/kerberos/krb5kdc
 kdc_data_dir: /var/kerberos/krb5kdc
 kdc_master_key_type: aes256-cts-hmac-sha384-192
-kdc_supported_enctypes: aes256-cts-hmac-sha384-192:normal aes128-cts-hmac-sha256-128:normal aes256-cts-hmac-sha1-96:normal aes128-cts-hmac-sha1-96:normal camellia256-cts-cmac:normal camellia128-cts-cmac:normal
+kdc_supported_enctypes: aes256-cts-hmac-sha384-192:normal aes128-cts-hmac-sha256-128:normal aes256-cts-hmac-sha1-96:normal aes128-cts-hmac-sha1-96:normal camellia256-cts-cmac:normal
+  camellia128-cts-cmac:normal
 krb5kdc_service_name: krb5kdc
 kadmin_service_name: kadmin
diff --git a/playbooks/roles/kdc/vars/default.yml b/playbooks/roles/kdc/vars/default.yml
index 16de574d..536a47f2 100644
--- a/playbooks/roles/kdc/vars/default.yml
+++ b/playbooks/roles/kdc/vars/default.yml
@@ -2,6 +2,7 @@
 kdc_conf_dir: /var/kerberos/krb5kdc
 kdc_data_dir: /var/kerberos/krb5kdc
 kdc_master_key_type: aes256-cts-hmac-sha384-192
-kdc_supported_enctypes: aes256-cts-hmac-sha384-192:normal aes128-cts-hmac-sha256-128:normal aes256-cts-hmac-sha1-96:normal aes128-cts-hmac-sha1-96:normal camellia256-cts-cmac:normal camellia128-cts-cmac:normal
+kdc_supported_enctypes: aes256-cts-hmac-sha384-192:normal aes128-cts-hmac-sha256-128:normal aes256-cts-hmac-sha1-96:normal aes128-cts-hmac-sha1-96:normal camellia256-cts-cmac:normal
+  camellia128-cts-cmac:normal
 krb5kdc_service_name: krb5kdc
 kadmin_service_name: kadmin
diff --git a/playbooks/roles/kdevops_archive/defaults/main.yml b/playbooks/roles/kdevops_archive/defaults/main.yml
index 790a6ed3..73e3f5ce 100644
--- a/playbooks/roles/kdevops_archive/defaults/main.yml
+++ b/playbooks/roles/kdevops_archive/defaults/main.yml
@@ -11,8 +11,8 @@ kdevops_results_archive_dir: "{{ topdir_path }}/../{{ kdevops_results_name }}"
 kdevops_archive_mirror_present: false
 kdevops_archive_host: "{{ kdevops_results_repo_path.split(':')[0] }}"
 kdevops_archive: "/mirror/{{ kdevops_results_name }}.git"
-kdevops_archive_demo: False
-bootlinux_tree_set_by_cli: False
+kdevops_archive_demo: false
+bootlinux_tree_set_by_cli: false
 kdevops_archive_base: "selftests/gh/linux-modules-kpd/20241021"
 kdevops_archive_test_number: "0001"
 kdevops_archive_prefix: "{{ kdevops_archive_base }}/{{ kdevops_archive_test_number }}/v6.12-rc4/"
diff --git a/playbooks/roles/kdevops_archive/tasks/main.yml b/playbooks/roles/kdevops_archive/tasks/main.yml
index 28514778..086b31d8 100644
--- a/playbooks/roles/kdevops_archive/tasks/main.yml
+++ b/playbooks/roles/kdevops_archive/tasks/main.yml
@@ -1,7 +1,7 @@
 ---
 - name: Install git-lfs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   package:
     name:
@@ -13,13 +13,13 @@
   set_fact:
     kdevops_results_repo_url: "{{ kdevops_results_repo_url_demo }}"
   when:
-    - 'kdevops_archive_demo|bool'
+    - "kdevops_archive_demo|bool"
 
 - name: Notify this is a kdevops-results-archive demo
   ansible.builtin.debug:
     msg: "This is a kdevops archive demo: {{ kdevops_results_repo_url }}"
   when:
-    - 'kdevops_archive_demo|bool'
+    - "kdevops_archive_demo|bool"
 
 - name: Check if kdevops archive/ directory exists
   ansible.builtin.stat:
@@ -31,13 +31,13 @@
     path: "{{ kdevops_results_local }}"
     state: absent
   when: results_dir.stat.exists
-  become: yes
+  become: true
 
 - name: Create new kdevops archive/ for new results
   file:
     path: "{{ kdevops_results_local }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
 
 - name: Get list of files from make ci-results for our archive/
   command: make ci-results
@@ -51,7 +51,7 @@
   changed_when: false
 
 - name: Ensure source files are readable by current user
-  become: yes
+  become: true
   shell: |
     for item in {{ ci_results.stdout_lines | join(' ') }}; do
       if [ -e "$item" ] || compgen -G "$item" > /dev/null; then
@@ -103,7 +103,7 @@
     - kdevops_archive_data_count | int == 0
 
 - name: Ensure copied files are readable by current user
-  become: yes
+  become: true
   shell: |
     find "{{ kdevops_results_local }}" -type d -exec chmod 755 {} +
     find "{{ kdevops_results_local }}" -type f -exec chmod 644 {} +
@@ -148,14 +148,14 @@
     path: "{{ kdevops_results_local }}"
     dest: "{{ kdevops_results }}/{{ kdevops_archive_test_ref }}.xz"
     format: xz
-    remove: no
+    remove: false
 
 - name: Create the same archive/ zip file for web CI artifacts
   archive:
     path: "{{ kdevops_results_local }}"
     dest: "{{ kdevops_results }}/{{ kdevops_archive_test_ref }}.zip"
     format: zip
-    remove: no
+    remove: false
 
 - name: Find archive files to verify
   find:
@@ -235,7 +235,7 @@
   ansible.builtin.debug:
     msg: "This is a kdevops archive demo, throw away results"
   when:
-    - 'kdevops_archive_demo|bool'
+    - "kdevops_archive_demo|bool"
 
 - name: Check if ci.trigger file exists
   stat:
@@ -270,7 +270,7 @@
   file:
     path: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_base }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
 
 - name: List all directories in base path
   find:
@@ -344,13 +344,13 @@
   file:
     path: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_prefix }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
 
 - name: Copy archive to target directory
   copy:
     src: "{{ kdevops_results }}/{{ kdevops_archive_test_ref }}.xz"
     dest: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_prefix }}"
-    mode: '0644'
+    mode: "0644"
 
 - name: Create .tar.xz symlink for the archive
   file:
@@ -441,7 +441,7 @@
   ansible.builtin.copy:
     content: "{{ commit_message }}"
     dest: "{{ tmp_commit_msg.path }}"
-    mode: '0644'
+    mode: "0644"
 
 - name: Commit the archive
   ansible.builtin.shell: |
@@ -465,7 +465,7 @@
     GIT_LFS_SKIP_SMUDGE: "0"
     GIT_LFS_FORCE: "1"
   register: git_push_result
-  ignore_errors: yes
+  ignore_errors: true
 
 - name: Display push error if it failed
   debug:
diff --git a/playbooks/roles/krb5/tasks/install-deps/debian/main.yml b/playbooks/roles/krb5/tasks/install-deps/debian/main.yml
index 25bdff7c..d9094fe6 100644
--- a/playbooks/roles/krb5/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/krb5/tasks/install-deps/debian/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install krb5 dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
       - krb5-user
     state: present
-    update_cache: yes
+    update_cache: true
diff --git a/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml b/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml
index 109f575b..bb2a068b 100644
--- a/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install krb5 dependencies
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/krb5/tasks/install-deps/suse/main.yml b/playbooks/roles/krb5/tasks/install-deps/suse/main.yml
index b01ac532..de84799b 100644
--- a/playbooks/roles/krb5/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/krb5/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install krb5 dependencies
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -11,6 +11,6 @@
     force_resolution: true
 
 - name: Reboot system to make the new kernel and modules take effect
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.reboot:
diff --git a/playbooks/roles/krb5/tasks/main.yml b/playbooks/roles/krb5/tasks/main.yml
index b009267e..ff6b5bdf 100644
--- a/playbooks/roles/krb5/tasks/main.yml
+++ b/playbooks/roles/krb5/tasks/main.yml
@@ -12,39 +12,39 @@
   when: ansible_os_family == 'RedHat'
 
 - name: Configure /etc/krb5.conf
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: krb5.conf.j2
     dest: /etc/krb5.conf
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
 
 - name: Ensure /etc/krb5.conf.d exists
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.file:
     path: /etc/krb5.conf.d
     state: directory
     owner: root
     group: root
-    mode: 0755
+    mode: "0755"
 
 - name: Add nfs principal
-  become: yes
+  become: true
   become_method: sudo
-  ansible.builtin.shell:
+  ansible.builtin.command:
     cmd: kadmin -w {{ krb5_admin_pw }} -q "addprinc -randkey nfs/{{ hostvars[inventory_hostname].ansible_fqdn }}"
 
 - name: Add nfs principal to keytab
-  become: yes
+  become: true
   become_method: sudo
-  ansible.builtin.shell:
+  ansible.builtin.command:
     cmd: kadmin -w {{ krb5_admin_pw }} -q "ktadd -k /etc/krb5.keytab nfs/{{ hostvars[inventory_hostname].ansible_fqdn }}"
 
 - name: Restart rpc.gssd on the NFS server
-  become: yes
+  become: true
   become_method: sudo
   delegate_to: "{{ kdevops_hosts_prefix }}-nfsd"
   ansible.builtin.systemd:
diff --git a/playbooks/roles/ktls/tasks/install-deps/debian/main.yml b/playbooks/roles/ktls/tasks/install-deps/debian/main.yml
index 704c394e..9d9c3b08 100644
--- a/playbooks/roles/ktls/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/ktls/tasks/install-deps/debian/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Install ktls dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
       - python3-cryptography
       - ktls-utils
     state: present
-    update_cache: yes
+    update_cache: true
diff --git a/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml b/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml
index 62457ed6..7a2ec5b0 100644
--- a/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml
@@ -6,10 +6,10 @@
     - ansible_distribution != "Fedora"
 
 - name: Install ktls dependencies
-  become: yes
+  become: true
   become_method: sudo
   dnf:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/ktls/tasks/install-deps/suse/main.yml b/playbooks/roles/ktls/tasks/install-deps/suse/main.yml
index 9b89cf82..1a543549 100644
--- a/playbooks/roles/ktls/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/ktls/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install ktls dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/ktls/tasks/main.yml b/playbooks/roles/ktls/tasks/main.yml
index 85254cdf..1abc7cbb 100644
--- a/playbooks/roles/ktls/tasks/main.yml
+++ b/playbooks/roles/ktls/tasks/main.yml
@@ -1,11 +1,12 @@
+---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
 
 - name: Install dependencies
@@ -35,9 +36,9 @@
   community.crypto.openssl_csr_pipe:
     privatekey_path: "{{ ca_dir }}/ca-cert.key"
     common_name: "kdevops {{ kdevops_host_prefix }} CA"
-    use_common_name_for_san: false  # since we do not specify SANs, don't use CN as a SAN
+    use_common_name_for_san: false # since we do not specify SANs, don't use CN as a SAN
     basic_constraints:
-      - 'CA:TRUE'
+      - "CA:TRUE"
     basic_constraints_critical: true
     key_usage:
       - keyCertSign
@@ -56,7 +57,7 @@
 - name: Create private key for new TLS certificate
   community.crypto.openssl_privatekey:
     path: "/etc/pki/tls/private/ktls.key"
-  become: yes
+  become: true
 
 - name: Copy CA cert to all of the hosts
   ansible.builtin.copy:
@@ -64,8 +65,8 @@
     dest: "/etc/pki/tls/certs/ca-cert.pem"
     owner: root
     group: root
-    mode: 0644
-  become: yes
+    mode: "0644"
+  become: true
 
 - name: Create certificate signing request (CSR) for new certificate
   community.crypto.openssl_csr_pipe:
@@ -74,7 +75,7 @@
       - "DNS:{{ ansible_host }}"
       - "IP:{{ ansible_default_ipv4.address }}"
   register: csr
-  become: yes
+  become: true
 
 - name: Sign certificate with our CA
   community.crypto.x509_certificate_pipe:
@@ -82,8 +83,8 @@
     provider: ownca
     ownca_path: "{{ ca_dir }}/ca-cert.pem"
     ownca_privatekey_path: "{{ ca_dir }}/ca-cert.key"
-    ownca_not_after: +365d  # valid for one year
-    ownca_not_before: "-1d"  # valid since yesterday
+    ownca_not_after: +365d # valid for one year
+    ownca_not_before: "-1d" # valid since yesterday
   delegate_to: localhost
   register: certificate
 
@@ -91,7 +92,7 @@
   copy:
     dest: "/etc/pki/tls/certs/ktls.pem"
     content: "{{ certificate.certificate }}"
-  become: yes
+  become: true
 
 - name: Install new /etc/tlshd.conf
   ansible.builtin.copy:
@@ -99,11 +100,11 @@
     dest: "/etc/tlshd.conf"
     owner: root
     group: root
-    mode: 0644
-  become: yes
+    mode: "0644"
+  become: true
 
 - name: Enable and start tlshd
-  become: yes
+  become: true
   ansible.builtin.systemd_service:
     name: tlshd.service
     enabled: true
diff --git a/playbooks/roles/libvirt_pcie_passthrough/defaults/main.yml b/playbooks/roles/libvirt_pcie_passthrough/defaults/main.yml
index 503fc703..c7c8547f 100644
--- a/playbooks/roles/libvirt_pcie_passthrough/defaults/main.yml
+++ b/playbooks/roles/libvirt_pcie_passthrough/defaults/main.yml
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-pcie_passthrough_enable: False
+pcie_passthrough_enable: false
 pcie_passthrough_devices:
 pcie_sysfs_device_path_prefix: "/sys/bus/pci/devices/"
 libvirt_qemu_group: libvirt-qemu
diff --git a/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml b/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
index d3253254..dfdd7989 100644
--- a/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
+++ b/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
@@ -1,17 +1,17 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
 
 - name: Check if PCI-E sysfs driver_override file exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     sysfs_override: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id}}/driver_override"
@@ -25,8 +25,8 @@
     - pcie_passthrough_enable|bool
 
 - name: Enable libvirt to use PCI-E sysfs driver_override file
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ item.stat.path }}"
@@ -40,8 +40,8 @@
     - item.stat.exists
 
 - name: Check if PCI-E sysfs unbind file exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     sysfs_unbind: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id}}/unbind"
@@ -55,8 +55,8 @@
     - pcie_passthrough_enable|bool
 
 - name: Enable libvirt to use PCI-E sysfs unbind file
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ item.stat.path }}"
@@ -70,7 +70,7 @@
     - item.stat.exists
 
 - name: Deploy udev 10-qemu-hw-users.rules which enables libvirt to use vfio subsystem
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: "10-qemu-hw-users.rules"
diff --git a/playbooks/roles/libvirt_storage_pool_create/defaults/main.yml b/playbooks/roles/libvirt_storage_pool_create/defaults/main.yml
index 0fcaa879..3a2f00d3 100644
--- a/playbooks/roles/libvirt_storage_pool_create/defaults/main.yml
+++ b/playbooks/roles/libvirt_storage_pool_create/defaults/main.yml
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-libvirt_session: False
-libvirt_storage_pool_create: False
+libvirt_session: false
+libvirt_storage_pool_create: false
 libvirt_storage_pool_name: "default"
 libvirt_storage_pool_path: "/dev/null"
diff --git a/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml b/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml
index 3a1c6c6a..eeffabb1 100644
--- a/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml
+++ b/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -16,7 +16,7 @@
 # non-libvirt_session case.
 
 - name: Verify if the pool already exists
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: "virsh pool-info {{ libvirt_storage_pool_name }}"
@@ -24,37 +24,37 @@
   failed_when: pool_check.rc != 0 and pool_check.rc != 1
   changed_when: pool_check.rc == 0 or pool_check.rc == 1
   when:
-    - 'not libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "not libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
 
 - name: Create {{ libvirt_storage_pool_name }} pool if it does not exist
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: "virsh pool-define-as {{ libvirt_storage_pool_name }} dir --target {{ libvirt_storage_pool_path }}"
   when:
-    - 'not libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "not libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
     - pool_check.rc == 1
 
 - name: Start {{ libvirt_storage_pool_name }} pool
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: "virsh pool-start {{ libvirt_storage_pool_name }}"
   when:
-    - 'not libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "not libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
     - pool_check.rc == 1
 
 - name: Set pool {{ libvirt_storage_pool_name }} to auto-start
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: "virsh  pool-autostart {{ libvirt_storage_pool_name }}"
   when:
-    - 'not libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "not libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
     - pool_check.rc == 1
 
 - name: Verify if the pool already exists
@@ -64,29 +64,29 @@
   failed_when: pool_check.rc != 0 and pool_check.rc != 1
   changed_when: pool_check.rc == 0 or pool_check.rc == 1
   when:
-    - 'libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
 
 - name: Create {{ libvirt_storage_pool_name }} pool if it does not exist
   command:
     cmd: "virsh pool-define-as {{ libvirt_storage_pool_name }} dir --target {{ libvirt_storage_pool_path }}"
   when:
-    - 'libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
     - pool_check.rc == 1
 
 - name: Start {{ libvirt_storage_pool_name }} pool
   command:
     cmd: "virsh pool-start {{ libvirt_storage_pool_name }}"
   when:
-    - 'libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
     - pool_check.rc == 1
 
 - name: Set pool {{ libvirt_storage_pool_name }} to auto-start
   command:
     cmd: "virsh  pool-autostart {{ libvirt_storage_pool_name }}"
   when:
-    - 'libvirt_session|bool'
-    - 'libvirt_storage_pool_create|bool'
+    - "libvirt_session|bool"
+    - "libvirt_storage_pool_create|bool"
     - pool_check.rc == 1
diff --git a/playbooks/roles/libvirt_user/defaults/main.yml b/playbooks/roles/libvirt_user/defaults/main.yml
index de3212bf..1e59ded4 100644
--- a/playbooks/roles/libvirt_user/defaults/main.yml
+++ b/playbooks/roles/libvirt_user/defaults/main.yml
@@ -1,9 +1,9 @@
 # SPDX-License-Identifier copyleft-next-0.3.1
 ---
-only_install: False
-only_verify_user: False
+only_install: false
+only_verify_user: false
 
-skip_install: False
-skip_configuration: False
+skip_install: false
+skip_configuration: false
 
-libvirt_session: False
+libvirt_session: false
diff --git a/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml b/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml
index 1ad7f17e..f29a346e 100644
--- a/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml
@@ -1,11 +1,11 @@
 ---
 - name: Adds the user to the respective distro libvirt groups
-  become: yes
+  become: true
   become_method: sudo
   user:
     name: "{{ running_user }}"
     groups: libvirt,kvm,libvirt-qemu
-    append: yes
+    append: true
   when:
     - not libvirt_session
     - not only_verify_user|bool
@@ -14,18 +14,18 @@
   stat:
     path: /usr/sbin/apparmor_status
   register: apparmor_file_stat_result
-  when: 'only_verify_user|bool'
+  when: "only_verify_user|bool"
 
 - name: Verify if AppArmor is disabled when applicable
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: /usr/sbin/apparmor_status --enabled
   register: apparmor_check
   failed_when: apparmor_check.rc == 0
   when:
-    - 'only_verify_user|bool'
-    - 'apparmor_file_stat_result.stat.exists'
+    - "only_verify_user|bool"
+    - "apparmor_file_stat_result.stat.exists"
 
 - name: Verifies user's effective group allows to run libvirt/kvm without being root
   shell: groups | grep {{ item }}
@@ -36,24 +36,24 @@
   loop_control:
     label: "Verifying if user's current effective groups includes {{ item }}"
   register: group_check
-  failed_when: False
+  failed_when: false
   ignore_errors: true
   when:
     - not libvirt_session
     - not only_verify_user|bool
 
 - name: Ensure our user is part of the libvirt/kvm groups
-  tags: [ 'journal' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["journal"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.user:
-    name:  "{{ ansible_user_id }}"
+    name: "{{ ansible_user_id }}"
     groups:
       - libvirt
       - kvm
       - libvirt-qemu
-    append: yes
+    append: true
   when:
     - not libvirt_session
     - not only_verify_user|bool
diff --git a/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml b/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml
index 717d8ef6..1eac9e72 100644
--- a/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml
@@ -1,11 +1,11 @@
 ---
 - name: Adds the user to the respective distro libvirt groups
-  become: yes
+  become: true
   become_method: sudo
   user:
     name: "{{ ansible_env.USER }}"
     groups: libvirt,kvm,qemu
-    append: yes
+    append: true
   when:
     - not only_verify_user|bool
     - not libvirt_session
@@ -14,24 +14,24 @@
   stat:
     path: /usr/sbin/apparmor_status
   register: apparmor_file_stat_result
-  when: 'only_verify_user|bool'
+  when: "only_verify_user|bool"
 
 - name: Verify if apparmor is disabled when applicable
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: /usr/sbin/apparmor_status --enabled
   register: apparmor_check
   failed_when: apparmor_check.rc == 0
   when:
-    - 'only_verify_user|bool'
-    - 'apparmor_file_stat_result.stat.exists'
+    - "only_verify_user|bool"
+    - "apparmor_file_stat_result.stat.exists"
 
 - name: Test whether SELinux is enabled
   command: /usr/sbin/selinuxenabled
   register: selinux_status
-  changed_when: False
-  failed_when: False
+  changed_when: false
+  failed_when: false
   when:
     - only_verify_user|bool
 
@@ -42,7 +42,7 @@
     - only_verify_user|bool
 
 - name: Set SELinux context on {{ libvirt_storage_pool_path }}
-  become: yes
+  become: true
   community.general.sefcontext:
     target: "{{ libvirt_storage_pool_path }}(/.*)?"
     setype: svirt_home_t
@@ -61,7 +61,7 @@
   loop_control:
     label: "Verifying if user's current effective groups includes {{ item }}"
   register: group_check
-  failed_when: False
+  failed_when: false
   ignore_errors: true
   when:
     - only_verify_user|bool
diff --git a/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml b/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml
index 8805c890..36d8518a 100644
--- a/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml
@@ -1,11 +1,11 @@
 ---
 - name: Adds the user to the respective distro libvirt groups
-  become: yes
+  become: true
   become_method: sudo
   user:
     name: "{{ ansible_env.USER }}"
     groups: libvirt,kvm,qemu
-    append: yes
+    append: true
   when:
     - not libvirt_session
     - not only_verify_user|bool
@@ -14,18 +14,18 @@
   stat:
     path: /usr/sbin/apparmor_status
   register: apparmor_file_stat_result
-  when: 'only_verify_user|bool'
+  when: "only_verify_user|bool"
 
 - name: Verify if apparmor is disabled when applicable
-  become: yes
+  become: true
   become_method: sudo
   command:
     cmd: /usr/sbin/apparmor_status --enabled
   register: apparmor_check
   failed_when: apparmor_check.rc == 0
   when:
-    - 'only_verify_user|bool'
-    - 'apparmor_file_stat_result.stat.exists'
+    - "only_verify_user|bool"
+    - "apparmor_file_stat_result.stat.exists"
 
 - name: Verifies user's effective group allows to run libvirt/kvm without being root
   shell: groups | grep {{ item }}
@@ -36,7 +36,7 @@
   loop_control:
     label: "Verifying if user's current effective groups includes {{ item }}"
   register: group_check
-  failed_when: False
+  failed_when: false
   ignore_errors: true
   when:
     - not libvirt_session
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml
index 463c1517..bd99d865 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: install
 
 - name: Install libvirt / kvm dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -22,15 +22,15 @@
   tags: install
 
 - name: Enable libvirtd
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: libvirtd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
 
 - name: Make sure libvirtd is running
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     state: started
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml
index f85da36f..2866775b 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install libvirt / kvm dependencies
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name:
@@ -12,30 +12,30 @@
     state: present
 
 - name: Enable libvirtd
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: libvirtd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
 
 - name: Make sure libvirtd is running
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     state: started
     name: libvirtd
 
 - name: Enable virtnetworkd
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: virtnetworkd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
 
 - name: Make sure virtnetworkd is running
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     state: started
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
index c652ab2c..871908a2 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Import optional distribution specific variables
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family']|lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml
index af96cb9f..2e9e69d9 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install libvirt / kvm dependencies
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name:
@@ -12,15 +12,15 @@
     state: present
 
 - name: Enable libvirtd
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: libvirtd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
 
 - name: Make sure libvirtd is running
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     state: started
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml
index 82b3d619..dce7958a 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install libvirt / kvm dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
@@ -12,15 +12,15 @@
     state: present
 
 - name: Enable libvirtd
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: libvirtd
-    enabled: yes
-    masked: no
+    enabled: true
+    masked: false
 
 - name: Make sure libvirtd is running
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     state: started
diff --git a/playbooks/roles/libvirt_user/tasks/main.yml b/playbooks/roles/libvirt_user/tasks/main.yml
index c1125bf0..269b63f3 100644
--- a/playbooks/roles/libvirt_user/tasks/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -14,11 +14,11 @@
 - name: Install libvirt and other dependencies
   include_tasks: install-deps/main.yml
   when:
-    - 'not skip_install|bool'
-    - 'not only_verify_user|bool'
+    - "not skip_install|bool"
+    - "not only_verify_user|bool"
 
 - name: Enables / verifies if user to run libvirt guests
   include_tasks: enable-user/main.yml
   when:
-    - 'not skip_configuration|bool'
-    - 'not only_install|bool'
+    - "not skip_configuration|bool"
+    - "not only_install|bool"
diff --git a/playbooks/roles/linux-mirror/defaults/main.yml b/playbooks/roles/linux-mirror/defaults/main.yml
index 9f2e8355..763bcb9a 100644
--- a/playbooks/roles/linux-mirror/defaults/main.yml
+++ b/playbooks/roles/linux-mirror/defaults/main.yml
@@ -3,7 +3,7 @@
 mirror_user_system_dir: "~/.config/systemd/user/"
 local_systemd_path: "/usr/local/lib/systemd/system/"
 
-install_linux_mirror:  False
+install_linux_mirror: false
 # Please keep these in alphabetical order
 defaults_blktrace_git: "https://git.kernel.dk/blktrace"
 defaults_dbench_git: "https://github.com/linux-kdevops/dbench.git"
@@ -27,4 +27,4 @@ mirror_torvalds_url: "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin
 
 install_only_git_daemon: false
 
-linux_mirror_nfs: False
+linux_mirror_nfs: false
diff --git a/playbooks/roles/linux-mirror/tasks/install-deps/fedora/main.yml b/playbooks/roles/linux-mirror/tasks/install-deps/fedora/main.yml
index 17467015..79a6176a 100644
--- a/playbooks/roles/linux-mirror/tasks/install-deps/fedora/main.yml
+++ b/playbooks/roles/linux-mirror/tasks/install-deps/fedora/main.yml
@@ -1,7 +1,7 @@
 ---
 - name: Install Fedora-specific dependencies
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name:
@@ -9,15 +9,15 @@
     state: present
   when:
     - install_linux_mirror|bool
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
 
 - name: Gather service facts
   ansible.builtin.service_facts:
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
 
 - name: Open the firewall on control node for git traffic
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.posix.firewalld:
     zone: libvirt
@@ -29,4 +29,4 @@
     - install_linux_mirror|bool
     - '"firewalld.service" in ansible_facts.services'
     - ansible_facts.services['firewalld.service'].status == "enabled"
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
diff --git a/playbooks/roles/linux-mirror/tasks/main.yml b/playbooks/roles/linux-mirror/tasks/main.yml
index 9799270a..e85224ce 100644
--- a/playbooks/roles/linux-mirror/tasks/main.yml
+++ b/playbooks/roles/linux-mirror/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -14,7 +14,7 @@
   ansible.builtin.include_tasks: install-deps/fedora/main.yml
   when:
     - ansible_distribution == 'Fedora'
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
 
 - name: Fail if linux_mirror_nfs is enabled but user is not root
   fail:
@@ -23,50 +23,50 @@
     - not install_only_git_daemon|bool
     - linux_mirror_nfs | bool
     - ansible_user_id != 'root'
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Set up the mirrors.yaml based on preferences configured
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
   template:
     src: "mirrors.yaml.j2"
     dest: "{{ topdir_path }}/playbooks/roles/linux-mirror/linux-mirror-systemd/mirrors.yaml"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   when:
     - install_linux_mirror|bool
     - not install_only_git_daemon|bool
 
 - name: Create empty directory for systemd service if it does not exist
-  tags: [ 'mirror' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["mirror"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ local_systemd_path }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
     owner: root
     group: root
   when:
     - install_linux_mirror|bool
 
 - name: Set up the git daemon systemd service and socket files
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: "{{ item }}.j2"
     dest: "{{ local_systemd_path }}/{{ item }}"
-    force: yes
-    trim_blocks: True
-    lstrip_blocks: True
+    force: true
+    trim_blocks: true
+    lstrip_blocks: true
   with_items:
     - "git-daemon@.service"
     - "git-daemon.socket"
   when:
     - install_linux_mirror|bool
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
 
 - name: Start mirroring
   delegate_to: localhost
@@ -80,7 +80,7 @@
   when:
     - install_linux_mirror|bool
     - not install_only_git_daemon|bool
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
 
 - name: Generate systemd service and timer unit files
   delegate_to: localhost
@@ -94,13 +94,13 @@
   when:
     - install_linux_mirror|bool
     - not install_only_git_daemon|bool
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
 
 - name: load variables from yaml file
   include_vars:
     file: "{{ topdir_path }}/playbooks/roles/linux-mirror/linux-mirror-systemd/mirrors.yaml"
     name: mirrors
-  tags: [ 'mirror' , 'status-check' ]
+  tags: ["mirror", "status-check"]
   when:
     - not install_only_git_daemon|bool
 
@@ -108,7 +108,7 @@
   set_fact:
     systemd_scope: "{{ 'system' if ansible_user_id == 'root' else 'user' }}"
     systemd_dir: "{{ '/etc/systemd/system/' if ansible_user_id == 'root' else mirror_user_system_dir }}"
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
   when:
     - not install_only_git_daemon|bool
 
@@ -120,7 +120,7 @@
     - "{{ mirrors.get('mirrors') }}"
   loop_control:
     label: "Installing {{ item.short_name }}-mirror.service unit ..."
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
   when:
     - not install_only_git_daemon|bool
 
@@ -132,7 +132,7 @@
     - "{{ mirrors.get('mirrors') }}"
   loop_control:
     label: "Installing {{ item.short_name }}-mirror.timer unit ..."
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
   when:
     - not install_only_git_daemon|bool
 
@@ -146,7 +146,7 @@
     - "{{ mirrors.get('mirrors') }}"
   loop_control:
     label: "Enabling {{ item.short_name }}-mirror.service unit ..."
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
   when:
     - not install_only_git_daemon|bool
 
@@ -160,7 +160,7 @@
     - "{{ mirrors.get('mirrors') }}"
   loop_control:
     label: "Enabling {{ item.short_name }}-mirror.timer unit ..."
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
   when:
     - not install_only_git_daemon|bool
 
@@ -173,7 +173,7 @@
     - "{{ mirrors.get('mirrors') }}"
   loop_control:
     label: "Checking service status for {{ item.short_name | regex_replace('/', '-') }}-mirror.service unit ..."
-  tags: [ 'status-check' ]
+  tags: ["status-check"]
   when:
     - not install_only_git_daemon|bool
 
@@ -182,7 +182,7 @@
     var: "{{ item }}.status.ActiveState"
   with_items:
     - "{{ mirror_service_status.item }}"
-  tags: [ 'status-check' ]
+  tags: ["status-check"]
   when:
     - not install_only_git_daemon|bool
 
@@ -195,7 +195,7 @@
     - "{{ mirrors.get('mirrors') }}"
   loop_control:
     label: "Checking service status for {{ item.short_name | regex_replace('/', '-') }}--mirror.timer ..."
-  tags: [ 'status-check' ]
+  tags: ["status-check"]
   when:
     - not install_only_git_daemon|bool
 
@@ -204,22 +204,22 @@
     var: "{{ item }}.status.ActiveState"
   with_items:
     - "{{ mirror_timer_status.item }}"
-  tags: [ 'status-check' ]
+  tags: ["status-check"]
   when:
     - not install_only_git_daemon|bool
 
 - name: Enable git service systemd socket activation
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: "git-daemon.socket"
     state: started
     enabled: true
-  tags: [ 'mirror' ]
+  tags: ["mirror"]
 
 - name: Install NFS server packages (for root user and if NFS is enabled)
-  become: yes
+  become: true
   ansible.builtin.package:
     name:
       - rpcbind
@@ -228,10 +228,10 @@
     - not install_only_git_daemon|bool
     - ansible_user_id == 'root'
     - linux_mirror_nfs | bool
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Ensure rpcbind and NFS services are started and enabled (for root user and if NFS is enabled)
-  become: yes
+  become: true
   ansible.builtin.systemd:
     name: "{{ item }}"
     state: started
@@ -243,24 +243,24 @@
     - ansible_user_id == 'root'
     - not install_only_git_daemon|bool
     - linux_mirror_nfs | bool
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Create the /mirror/ directory if it doesn't exist (for root user and if NFS is enabled)
-  become: yes
+  become: true
   ansible.builtin.file:
     path: /mirror/
     state: directory
     owner: root
     group: root
-    mode: '0755'
+    mode: "0755"
   when:
     - ansible_user_id == 'root'
     - linux_mirror_nfs | bool
     - not install_only_git_daemon|bool
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Check if /mirror is already exported
-  become: yes
+  become: true
   ansible.builtin.command:
     cmd: exportfs
   register: exportfs_output
@@ -269,48 +269,48 @@
     - ansible_user_id == 'root'
     - linux_mirror_nfs | bool
     - not install_only_git_daemon|bool
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Add /mirror to /etc/exports if not already exported
-  become: yes
+  become: true
   ansible.builtin.lineinfile:
     path: /etc/exports
     line: "/mirror/ *(ro,sync,no_root_squash,no_subtree_check)"
     state: present
-    create: yes
+    create: true
   when:
     - not install_only_git_daemon|bool
     - ansible_user_id == 'root'
     - linux_mirror_nfs | bool
     - "'/mirror' not in exportfs_output.stdout"
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Export the /mirror/ directory (for root user and if NFS is enabled)
-  become: yes
+  become: true
   ansible.builtin.command:
     cmd: exportfs -ra
   when:
     - not install_only_git_daemon|bool
     - ansible_user_id == 'root'
     - linux_mirror_nfs | bool
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Check if firewalld is running
-  become: yes
+  become: true
   ansible.builtin.command:
     cmd: systemctl is-active firewalld
   register: firewalld_status
-  ignore_errors: yes
+  ignore_errors: true
   changed_when: false
-  failed_when: firewalld_status.rc not in [0, 3, 4]  # rc=0 (active), rc=3 (inactive but not an error), 4 not present
+  failed_when: firewalld_status.rc not in [0, 3, 4] # rc=0 (active), rc=3 (inactive but not an error), 4 not present
   when:
     - not install_only_git_daemon|bool
     - linux_mirror_nfs | bool
     - ansible_user_id == 'root'
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
 
 - name: Ensure NFS firewall rules are set (for root user and if NFS is enabled)
-  become: yes
+  become: true
   ansible.builtin.firewalld:
     service: "{{ item }}"
     permanent: true
@@ -325,4 +325,4 @@
     - ansible_user_id == 'root'
     - linux_mirror_nfs | bool
     - firewalld_status.stdout == 'active'
-  tags: [ 'nfs', 'mirror' ]
+  tags: ["nfs", "mirror"]
diff --git a/playbooks/roles/ltp/defaults/main.yml b/playbooks/roles/ltp/defaults/main.yml
index 1787cdb1..614b9dc7 100644
--- a/playbooks/roles/ltp/defaults/main.yml
+++ b/playbooks/roles/ltp/defaults/main.yml
@@ -3,4 +3,4 @@
 # Our sensible defaults for the ltp role.
 #
 # The default is to not run the ltp tests.
-kdevops_run_ltp: False
+kdevops_run_ltp: false
diff --git a/playbooks/roles/ltp/tasks/main.yml b/playbooks/roles/ltp/tasks/main.yml
index 71e1541f..612bdb9f 100644
--- a/playbooks/roles/ltp/tasks/main.yml
+++ b/playbooks/roles/ltp/tasks/main.yml
@@ -12,19 +12,19 @@
   tags: vars
 
 - name: Set up the /data mount point
-  tags: ['data_partition']
+  tags: ["data_partition"]
   ansible.builtin.include_role:
     name: create_data_partition
 
 - name: Set the pathname of the results directory on the control node
-  tags: ['vars']
+  tags: ["vars"]
   ansible.builtin.set_fact:
     ltp_test_group: "{{ ansible_host | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') }}"
     ltp_results_full_path: "{{ topdir_path }}/workflows/ltp/results"
     ltp_results_target: "../workflows/ltp/results/last-run"
 
 - name: Create the local results directory
-  tags: ['first_run']
+  tags: ["first_run"]
   ansible.builtin.file:
     path: "{{ ltp_results_full_path }}"
     state: directory
@@ -33,29 +33,32 @@
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ ltp_results_target }}/" state=absent
+  file: path="{{ ltp_results_target }}/" state=absent
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  local_action: file path="{{ ltp_results_target }}/" state=directory
+  file: path="{{ ltp_results_target }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Get used target kernel version
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ ltp_results_target }}/../last-kernel.txt"
-  tags: [ 'run_tests', 'copy_results', 'print_results' ]
+  shell: echo {{ last_kernel }} > {{ ltp_results_target }}/../last-kernel.txt
+  delegate_to: localhost
+  tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
 
 - name: Ensure the local results directory exists
@@ -71,11 +74,11 @@
   vars:
     params:
       files:
-        - '{{ ansible_distribution }}.yml'
-        - '{{ ansible_os_family }}.yml'
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Enable the CodeReady repo
   ansible.builtin.include_role:
@@ -84,30 +87,30 @@
     - ansible_os_family == "RedHat"
 
 - name: Install dependencies for ltp
-  tags: ['build', 'ltp']
+  tags: ["build", "ltp"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ ltp_packages }}"
     state: present
 
 - name: Set the pathname of the build directory
-  tags: ['build', 'ltp']
+  tags: ["build", "ltp"]
   ansible.builtin.set_fact:
     ltp_build_dir: "{{ data_path }}/ltp"
 
 - name: Remove existing ltp build directory
-  tags: ['build', 'ltp']
+  tags: ["build", "ltp"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     path: "{{ ltp_build_dir }}"
     state: absent
 
 - name: Shallow-clone the ltp source code from {{ ltp_repo }}
-  tags: ['build', 'clone', 'git', 'ltp']
+  tags: ["build", "clone", "git", "ltp"]
   ansible.builtin.git:
     repo: "{{ ltp_repo }}"
     dest: "{{ ltp_build_dir }}"
@@ -122,7 +125,7 @@
     - kdevops_workflows_dedicated_workflow|bool
 
 - name: Clone the full ltp source code tree from {{ ltp_repo }}
-  tags: ['build', 'clone', 'git', 'ltp']
+  tags: ["build", "clone", "git", "ltp"]
   ansible.builtin.git:
     repo: "{{ ltp_repo }}"
     dest: "{{ ltp_build_dir }}"
@@ -136,29 +139,29 @@
     - not kdevops_workflows_dedicated_workflow|bool
 
 - name: Initialize autotools in the build directory
-  tags: ['build', 'ltp']
+  tags: ["build", "ltp"]
   community.general.make:
     chdir: "{{ ltp_build_dir }}"
     target: autotools
 
 - name: Configure the ltp build environment
-  tags: ['build', 'ltp']
+  tags: ["build", "ltp"]
   ansible.builtin.command:
     cmd: "./configure"
     chdir: "{{ ltp_build_dir }}"
     creates: include/config.h
 
 - name: Build ltp from source
-  tags: ['build', 'ltp']
+  tags: ["build", "ltp"]
   community.general.make:
     chdir: "{{ ltp_build_dir }}"
     target: all
     jobs: "{{ ansible_processor_nproc }}"
 
 - name: Ensure /opt has correct permissions
-  tags: ['ltp']
+  tags: ["ltp"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     state: directory
@@ -166,16 +169,16 @@
     mode: "u=rwx,g=rwx,o=rwxt"
 
 - name: Install ltp on the test systems
-  tags: ['ltp']
+  tags: ["ltp"]
   community.general.make:
     chdir: "{{ ltp_build_dir }}"
     target: install
     jobs: "{{ ansible_processor_nproc }}"
 
 - name: Start the rpcbind service
-  tags: ['ltp']
+  tags: ["ltp"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.systemd_service:
     name: rpcbind.service
@@ -183,9 +186,9 @@
     enabled: true
 
 - name: Generate /etc/nfs.conf
-  tags: ['ltp']
+  tags: ["ltp"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.template:
     src: nfs.conf.j2
@@ -195,9 +198,9 @@
     mode: "u=rw,g=r,o=r"
 
 - name: Start the NFSD service
-  tags: ['ltp']
+  tags: ["ltp"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.systemd_service:
     name: nfs-server.service
@@ -205,9 +208,9 @@
     enabled: true
 
 - name: Run ltp
-  tags: ['run_tests']
+  tags: ["run_tests"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   environment:
     CREATE_ENTRIES: 1
@@ -217,16 +220,16 @@
   failed_when: false
 
 - name: Look for test results in target node's /opt/ltp/results
-  tags: ['copy_results']
+  tags: ["copy_results"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.find:
     paths: "/opt/ltp/results/"
   register: results_files
 
 - name: Copy test results to the control node
-  tags: ['copy_results']
+  tags: ["copy_results"]
   ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ ltp_results_full_path }}/last-run/{{ last_kernel }}/{{ ltp_test_group }}/"
@@ -239,16 +242,16 @@
     label: "Copying {{ item.path | basename }} ..."
 
 - name: Look for test output in target node's /opt/ltp/output
-  tags: ['copy_results']
+  tags: ["copy_results"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.find:
     paths: "/opt/ltp/output/"
   register: output_files
 
 - name: Copy test output to the control node
-  tags: ['copy_results']
+  tags: ["copy_results"]
   ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ ltp_results_full_path }}/last-run/{{ last_kernel }}/{{ ltp_test_group }}/"
@@ -261,7 +264,7 @@
     label: "Copying {{ item.path | basename }} ..."
 
 - name: Verify last-run kernel directory exists
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   stat:
     path: "{{ ltp_results_full_path }}/last-run/{{ last_kernel }}"
@@ -272,7 +275,7 @@
     src: "{{ ltp_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ ltp_results_full_path }}/"
   run_once: true
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   when:
     - last_run_kernel_dir.stat.exists
diff --git a/playbooks/roles/mmtests/defaults/main.yml b/playbooks/roles/mmtests/defaults/main.yml
index 69f9badd..45246d0e 100644
--- a/playbooks/roles/mmtests/defaults/main.yml
+++ b/playbooks/roles/mmtests/defaults/main.yml
@@ -13,26 +13,26 @@ mmtests_test_type: "thpcompact"
 
 mmtests_thpcompact_threads_min: 1
 mmtests_thpcompact_threads_max: 32
-mmtests_thpcompact_threads_max_type_manual: False
-mmtests_thpcompact_threads_max_type_auto: False
+mmtests_thpcompact_threads_max_type_manual: false
+mmtests_thpcompact_threads_max_type_auto: false
 mmtests_thpcompact_anonymous_memory_percent: 80
 mmtests_thpcompact_filemap_memory_scale: 4
 
 mmtests_iterations: 5
 mmtests_monitor_interval: 1
-mmtests_requires_mkfs_device: False
+mmtests_requires_mkfs_device: false
 mmtests_device: "/dev/null"
 mmtests_ext4_sector_size: 4k
 mmtests_mkfs_type: "xfs"
 mmtests_mkfs_cmd: ""
 
 # Monitoring configuration
-mmtests_monitor_enable_ftrace: True
-mmtests_monitor_enable_proc_monitoring: True
-mmtests_monitor_enable_mpstat: True
+mmtests_monitor_enable_ftrace: true
+mmtests_monitor_enable_proc_monitoring: true
+mmtests_monitor_enable_mpstat: true
 
 # System configuration
-mmtests_pretest_compaction: False
-mmtests_pretest_dropvmcaches: False
+mmtests_pretest_compaction: false
+mmtests_pretest_dropvmcaches: false
 mmtests_pretest_thp_setting: "always"
-kdevops_workflow_enable_mmtests: False
+kdevops_workflow_enable_mmtests: false
diff --git a/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml b/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml
index b1d6b381..71470eba 100644
--- a/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml
@@ -1,24 +1,24 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: deps
 
 - name: Install mmtests build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -33,10 +33,10 @@
       - libmath-gradient-perl
     state: present
     update_cache: true
-  tags: ['deps']
+  tags: ["deps"]
 
 - name: Install mmtests runtime dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -51,10 +51,10 @@
       - psmisc
     state: present
     update_cache: true
-  tags: ['deps']
+  tags: ["deps"]
 
 - name: Install mmtests monitoring dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -62,5 +62,5 @@
       - perf-tools-unstable
     state: present
     update_cache: true
-  tags: ['deps']
+  tags: ["deps"]
   ignore_errors: true
diff --git a/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml b/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml
index ddf2be5d..d9d68479 100644
--- a/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml
@@ -1,17 +1,17 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - name: Install mmtests build dependencies (RedHat/CentOS)
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name:
@@ -25,10 +25,10 @@
       - libnuma-devel
       - perl-Math-Gradient
     state: present
-  tags: ['deps']
+  tags: ["deps"]
 
 - name: Install mmtests runtime dependencies (RedHat/CentOS)
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name:
@@ -42,10 +42,10 @@
       - bc
       - psmisc
     state: present
-  tags: ['deps']
+  tags: ["deps"]
 
 - name: Install mmtests monitoring dependencies (RedHat/CentOS)
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name:
@@ -53,5 +53,5 @@
       - trace-cmd
       - perf
     state: present
-  tags: ['deps']
+  tags: ["deps"]
   ignore_errors: true
diff --git a/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml b/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml
index 2f0b7a2b..83118744 100644
--- a/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml
@@ -1,17 +1,17 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - name: Install mmtests build dependencies (SUSE)
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -24,10 +24,10 @@
       - R-base-devel
       - libnuma-devel
     state: present
-  tags: ['deps']
+  tags: ["deps"]
 
 - name: Install mmtests runtime dependencies (SUSE)
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -42,10 +42,10 @@
       - psmisc
       - perl-Math-Gradient
     state: present
-  tags: ['deps']
+  tags: ["deps"]
 
 - name: Install mmtests monitoring dependencies (SUSE)
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -53,5 +53,5 @@
       - trace-cmd
       - perf
     state: present
-  tags: ['deps']
+  tags: ["deps"]
   ignore_errors: true
diff --git a/playbooks/roles/mmtests/tasks/main.yaml b/playbooks/roles/mmtests/tasks/main.yaml
index 199c8bdd..4f8a8195 100644
--- a/playbooks/roles/mmtests/tasks/main.yaml
+++ b/playbooks/roles/mmtests/tasks/main.yaml
@@ -2,11 +2,11 @@
 # Install distribution-specific dependencies
 - name: Install dependencies
   include_tasks: install-deps/main.yml
-  tags: [ 'setup', 'deps' ]
+  tags: ["setup", "deps"]
 
 - include_role:
     name: create_data_partition
-  tags: [ 'setup', 'data_partition' ]
+  tags: ["setup", "data_partition"]
 
 - include_role:
     name: common
@@ -14,8 +14,8 @@
     - infer_uid_and_group|bool
 
 - name: Ensure data_dir has correct ownership
-  tags: [ 'setup' ]
-  become: yes
+  tags: ["setup"]
+  become: true
   become_method: sudo
   ansible.builtin.file:
     path: "{{ data_path }}"
@@ -24,15 +24,15 @@
     state: directory
 
 - name: Clone mmtests repository
-  tags: [ 'setup' ]
+  tags: ["setup"]
   ansible.builtin.git:
     repo: "{{ mmtests_git_url }}"
     dest: "{{ mmtests_data_dir }}"
     version: "{{ mmtests_git_version }}"
-    force: yes
+    force: true
 
 - name: Check if mmtests fixes directory exists
-  tags: [ 'setup' ]
+  tags: ["setup"]
   delegate_to: localhost
   stat:
     path: "{{ topdir_path }}/workflows/mmtests/fixes/"
@@ -40,7 +40,7 @@
   run_once: false
 
 - name: Find mmtests patches in fixes directory
-  tags: [ 'setup' ]
+  tags: ["setup"]
   delegate_to: localhost
   find:
     paths: "{{ topdir_path }}/workflows/mmtests/fixes/"
@@ -50,21 +50,21 @@
   run_once: false
 
 - name: Copy patches to remote host
-  tags: [ 'setup' ]
-  become: yes
+  tags: ["setup"]
+  become: true
   become_method: sudo
   copy:
     src: "{{ item.path }}"
     dest: "/tmp/{{ item.path | basename }}"
-    mode: '0644'
+    mode: "0644"
   with_items: "{{ mmtests_patches.files }}"
   when:
     - fixes_dir.stat.exists
     - mmtests_patches.files | length > 0
 
 - name: Apply mmtests patches on remote host
-  tags: [ 'setup' ]
-  become: yes
+  tags: ["setup"]
+  become: true
   become_method: sudo
   shell: |
     cd {{ mmtests_data_dir }}
@@ -77,7 +77,7 @@
   register: patch_results
 
 - name: Report patch application results
-  tags: [ 'setup' ]
+  tags: ["setup"]
   debug:
     msg: |
       Applied {{ mmtests_patches.files | length | default(0) }} patches from fixes directory:
@@ -89,15 +89,15 @@
     - mmtests_patches.files | length > 0
 
 - name: Generate mmtests configuration
-  tags: [ 'setup' ]
-  become: yes
+  tags: ["setup"]
+  become: true
   become_method: sudo
   ansible.builtin.template:
     src: "{{ mmtests_test_type }}-config.j2"
     dest: "{{ mmtests_data_dir }}/configs/config-workload-{{ mmtests_test_type }}-kdevops"
     owner: root
     group: root
-    mode: '0644'
+    mode: "0644"
 
 - name: Fail if configured memory percentages overcommit available memory
   fail:
@@ -108,7 +108,7 @@
   when: (mmtests_anonymous_memory_percent + mmtests_file_memory_percent) > 100
 
 - name: Run mmtests autogen in background
-  tags: [ 'setup' ]
+  tags: ["setup"]
   become: true
   become_method: sudo
   ansible.builtin.command: ./bin/autogen-configs
@@ -116,7 +116,7 @@
     chdir: "{{ mmtests_data_dir }}"
 
 - name: Run mmtests autogen in background
-  tags: [ 'setup' ]
+  tags: ["setup"]
   become: true
   become_method: sudo
   ansible.builtin.command: ./bin/autogen-configs
@@ -124,17 +124,17 @@
     chdir: "{{ mmtests_data_dir }}"
 
 - name: Get kernel version
-  tags: [ 'setup', 'run_tests' ]
+  tags: ["setup", "run_tests"]
   ansible.builtin.command: uname -r
   register: kernel_version
 
 - name: Show kernel version
-  tags: [ 'setup', 'run_tests' ]
+  tags: ["setup", "run_tests"]
   debug:
     msg: "Kernel version on {{ inventory_hostname }} : {{ kernel_version.stdout }}"
 
 - name: Build mmtests
-  tags: [ 'setup' ]
+  tags: ["setup"]
   become: true
   become_method: sudo
   ansible.builtin.shell: >
@@ -153,11 +153,11 @@
       Stdout: {{ mmtests_build_result.stdout }}
       Stderr: {{ mmtests_build_result.stderr }}
   when: mmtests_build_result.rc != 0
-  tags: [ 'setup' ]
+  tags: ["setup"]
 
 - name: Check if {{ mmtests_device }} is mounted
-  tags: [ 'run_tests' ]
-  become: yes
+  tags: ["run_tests"]
+  become: true
   become_method: sudo
   command: findmnt --noheadings --output TARGET --source {{ mmtests_device }}
   register: mountpoint_stat
@@ -166,8 +166,8 @@
   when: mmtests_requires_mkfs_device | bool
 
 - name: Unmount {{ mmtests_device }} if mounted
-  tags: [ 'run_tests' ]
-  become: yes
+  tags: ["run_tests"]
+  become: true
   become_method: sudo
   command: umount {{ mmtests_device }}
   when:
@@ -176,8 +176,8 @@
 
 # XXX: add variability for the different options for the governor
 - name: Set CPU governor to performance
-  tags: [ 'run_tests' ]
-  become: yes
+  tags: ["run_tests"]
+  become: true
   become_method: sudo
   ansible.builtin.shell: |
     for cpu in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; do
@@ -187,8 +187,8 @@
     done
 
 - name: Drop caches before test
-  tags: [ 'run_tests' ]
-  become: yes
+  tags: ["run_tests"]
+  become: true
   become_method: sudo
   ansible.builtin.shell: |
     sync
@@ -196,15 +196,15 @@
   when: mmtests_pretest_dropvmcaches | bool
 
 - name: Configure THP
-  tags: [ 'run_tests' ]
-  become: yes
+  tags: ["run_tests"]
+  become: true
   become_method: sudo
   ansible.builtin.shell: |
     echo "{{ mmtests_pretest_thp_setting }}" > /sys/kernel/mm/transparent_hugepage/enabled
 
 - name: Manually trigger memory compaction before run
-  tags: [ 'run_tests' ]
-  become: yes
+  tags: ["run_tests"]
+  become: true
   become_method: sudo
   ansible.builtin.shell: |
     echo 1 > /proc/sys/vm/compact_memory
@@ -213,12 +213,12 @@
   ignore_errors: true
 
 - name: Show kernel version
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   debug:
     msg: "Kernel version on {{ inventory_hostname }} : {{ kernel_version.stdout }}"
 
 - name: Run mmtests in background
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   become: true
   become_method: sudo
   ansible.builtin.command: ./run-mmtests.sh --config configs/config-workload-{{ mmtests_test_type }}-kdevops {{ inventory_hostname }}-{{ kernel_version.stdout }}
@@ -229,84 +229,84 @@
   register: mmtests_job
 
 - name: Wait for mmtests to complete
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   become: true
   become_method: sudo
   ansible.builtin.async_status:
     jid: "{{ mmtests_job.ansible_job_id }}"
   register: mmtests_status
   until: mmtests_status.finished
-  retries: 1440    # 12 hours
-  delay: 60        # check every 60 seconds
+  retries: 1440 # 12 hours
+  delay: 60 # check every 60 seconds
 
 - name: Create local results directory
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ topdir_path }}/workflows/mmtests/results/{{ inventory_hostname }}/"
     state: directory
-    mode: '0755'
+    mode: "0755"
   run_once: false
-  tags: ['results']
+  tags: ["results"]
 
 - name: Ensure old mmtests results archive is removed if it exists
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.file:
     path: "{{ mmtests_results_dir_basename }}/mmtests-results-{{ inventory_hostname }}.tar.gz"
     state: absent
-  tags: [ 'results' ]
+  tags: ["results"]
 
 - name: Archive mmtests results directory on remote host
-  become: yes
+  become: true
   become_method: sudo
   command: >
     tar czf {{ mmtests_results_dir_basename }}/mmtests-results-{{ inventory_hostname }}.tar.gz -C {{ mmtests_results_dir }} .
   args:
     creates: "{{ mmtests_results_dir_basename }}/mmtests-results-{{ inventory_hostname }}.tar.gz"
-  tags: [ 'results' ]
+  tags: ["results"]
 
 - name: Remove previously fetched mmtests results archive if it exists
-  become: no
+  become: false
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ item }}"
     state: absent
-  tags: [ 'results' ]
+  tags: ["results"]
   with_items:
     - "{{ topdir_path }}/workflows/mmtests/results/{{ inventory_hostname }}/mmtests-results-{{ inventory_hostname }}.tar.gz"
     - "{{ topdir_path }}/workflows/mmtests/results/{{ inventory_hostname }}/mmtests-results-{{ inventory_hostname }}"
 
 - name: Copy mmtests results
-  tags: [ 'results' ]
-  become: yes
+  tags: ["results"]
+  become: true
   become_method: sudo
   ansible.builtin.fetch:
     src: "{{ mmtests_results_dir_basename }}/mmtests-results-{{ inventory_hostname }}.tar.gz"
     dest: "{{ topdir_path }}/workflows/mmtests/results/{{ inventory_hostname }}/"
-    flat: yes
+    flat: true
 
 - name: Ensure local mmtests results extraction directory exists
-  become: no
+  become: false
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ topdir_path }}/workflows/mmtests/results/{{ inventory_hostname }}/mmtests-results-{{ inventory_hostname }}"
     state: directory
-    mode: '0755'
-    recurse: yes
-  tags: [ 'results' ]
+    mode: "0755"
+    recurse: true
+  tags: ["results"]
 
 - name: Extract mmtests results archive locally
-  become: no
+  become: false
   delegate_to: localhost
   ansible.builtin.unarchive:
     src: "{{ topdir_path }}/workflows/mmtests/results/{{ inventory_hostname }}/mmtests-results-{{ inventory_hostname }}.tar.gz"
     dest: "{{ topdir_path }}/workflows/mmtests/results/{{ inventory_hostname }}/mmtests-results-{{ inventory_hostname }}"
-    remote_src: no
-  tags: [ 'results' ]
+    remote_src: false
+  tags: ["results"]
 
 - name: Clean previous mmtests results on DUTs
-  tags: [ 'clean' ]
-  become: yes
+  tags: ["clean"]
+  become: true
   become_method: sudo
   ansible.builtin.file:
     path: "{{ item }}"
@@ -315,8 +315,8 @@
     - "{{ mmtests_results_dir }}"
 
 - name: Clean previous mmtests results on localhost
-  tags: [ 'clean' ]
-  become: yes
+  tags: ["clean"]
+  become: true
   become_method: sudo
   delegate_to: localhost
   ansible.builtin.file:
diff --git a/playbooks/roles/mmtests_compare/tasks/main.yml b/playbooks/roles/mmtests_compare/tasks/main.yml
index 9ddbbbe0..59d7468e 100644
--- a/playbooks/roles/mmtests_compare/tasks/main.yml
+++ b/playbooks/roles/mmtests_compare/tasks/main.yml
@@ -1,7 +1,7 @@
 ---
 - name: Install Perl dependencies for mmtests compare on localhost (Debian/Ubuntu)
   delegate_to: localhost
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -19,11 +19,11 @@
     update_cache: true
   when: ansible_facts['os_family']|lower == 'debian'
   run_once: true
-  tags: ['compare', 'deps']
+  tags: ["compare", "deps"]
 
 - name: Install additional Perl modules via CPAN on localhost (if needed)
   delegate_to: localhost
-  become: yes
+  become: true
   become_method: sudo
   cpanm:
     name: "{{ item }}"
@@ -31,12 +31,12 @@
     - File::Temp
   when: ansible_facts['os_family']|lower == 'debian'
   run_once: true
-  tags: ['compare', 'deps']
+  tags: ["compare", "deps"]
   ignore_errors: true
 
 - name: Install Perl dependencies for mmtests compare on localhost (SUSE)
   delegate_to: localhost
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name:
@@ -56,11 +56,11 @@
     state: present
   when: ansible_facts['os_family']|lower == 'suse'
   run_once: true
-  tags: ['compare', 'deps']
+  tags: ["compare", "deps"]
 
 - name: Install Perl dependencies for mmtests compare on localhost (RedHat/Fedora)
   delegate_to: localhost
-  become: yes
+  become: true
   become_method: sudo
   yum:
     name:
@@ -80,19 +80,19 @@
     state: present
   when: ansible_facts['os_family']|lower == 'redhat'
   run_once: true
-  tags: ['compare', 'deps']
+  tags: ["compare", "deps"]
 
 - name: Create required directories
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ item }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
   loop:
     - "{{ topdir_path }}/workflows/mmtests/results/compare"
     - "{{ topdir_path }}/tmp"
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Clone mmtests repository locally
   delegate_to: localhost
@@ -100,9 +100,9 @@
     repo: "{{ mmtests_git_url }}"
     dest: "{{ topdir_path }}/tmp/mmtests"
     version: "{{ mmtests_git_version | default('master') }}"
-    force: yes
+    force: true
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Check if mmtests fixes directory exists
   delegate_to: localhost
@@ -110,7 +110,7 @@
     path: "{{ topdir_path }}/workflows/mmtests/fixes/"
   register: fixes_dir
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Find mmtests patches in fixes directory
   delegate_to: localhost
@@ -120,7 +120,7 @@
   register: mmtests_patches
   when: fixes_dir.stat.exists
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Apply mmtests patches if found
   delegate_to: localhost
@@ -133,7 +133,7 @@
     - fixes_dir.stat.exists
     - mmtests_patches.files | length > 0
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
   failed_when: false
   register: patch_results
 
@@ -153,7 +153,7 @@
       when:
         - groups['dev'] is defined
         - groups['dev'] | length > 0
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Set node information facts
   set_fact:
@@ -163,20 +163,20 @@
     dev_kernel: "{{ dev_kernel_version.stdout }}"
   run_once: true
   delegate_to: localhost
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Create local results directories for mmtests data
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ topdir_path }}/tmp/mmtests/work/log/{{ item }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
   loop:
     - "{{ baseline_hostname }}-{{ baseline_kernel }}"
     - "{{ dev_hostname }}-{{ dev_kernel }}"
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Archive baseline results on remote
   archive:
@@ -185,7 +185,7 @@
     format: gz
   delegate_to: "{{ groups['baseline'][0] }}"
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Archive dev results on remote
   archive:
@@ -195,45 +195,45 @@
   delegate_to: "{{ groups['dev'][0] }}"
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Fetch baseline results to localhost
   fetch:
     src: "/tmp/baseline-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/"
-    flat: yes
+    flat: true
   delegate_to: "{{ groups['baseline'][0] }}"
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Fetch dev results to localhost
   fetch:
     src: "/tmp/dev-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/"
-    flat: yes
+    flat: true
   delegate_to: "{{ groups['dev'][0] }}"
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Extract baseline results locally
   delegate_to: localhost
   unarchive:
     src: "{{ topdir_path }}/tmp/baseline-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/mmtests/work/log/"
-    remote_src: yes
+    remote_src: true
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Extract dev results locally
   delegate_to: localhost
   unarchive:
     src: "{{ topdir_path }}/tmp/dev-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/mmtests/work/log/"
-    remote_src: yes
+    remote_src: true
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Run mmtests comparison
   delegate_to: localhost
@@ -247,7 +247,7 @@
   run_once: true
   when: kdevops_baseline_and_dev|bool
   register: comparison_text_output
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Generate HTML comparison output
   delegate_to: localhost
@@ -262,7 +262,7 @@
   run_once: true
   when: kdevops_baseline_and_dev|bool
   register: comparison_html_output
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Parse comparison data for template
   delegate_to: localhost
@@ -270,7 +270,7 @@
     comparison_metrics: []
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Generate performance graphs using gnuplot
   delegate_to: localhost
@@ -279,7 +279,7 @@
       find:
         paths: "{{ topdir_path }}/tmp/mmtests/work/log/{{ item }}/{{ mmtests_test_type }}"
         patterns: "*.gz"
-        recurse: yes
+        recurse: true
       register: iteration_files
       loop:
         - "{{ baseline_hostname }}-{{ baseline_kernel }}"
@@ -289,7 +289,7 @@
       ansible.builtin.unarchive:
         src: "{{ item.path }}"
         dest: "{{ item.path | dirname }}"
-        remote_src: yes
+        remote_src: true
       loop: "{{ iteration_files.results | map(attribute='files') | flatten }}"
       when: iteration_files.results is defined
 
@@ -307,7 +307,7 @@
         MMTESTS_AUTO_PACKAGE_INSTALL: never
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare', 'graphs']
+  tags: ["compare", "graphs"]
 
 - name: Find generated graph files
   delegate_to: localhost
@@ -316,17 +316,17 @@
     patterns: "*.png"
   register: graph_files
   run_once: true
-  tags: ['compare', 'graphs']
+  tags: ["compare", "graphs"]
 
 - name: Read graph files for embedding
   delegate_to: localhost
   slurp:
     src: "{{ item.path }}"
   register: graph_data
-  loop: "{{ graph_files.files[:10] }}"  # Limit to first 10 graphs
+  loop: "{{ graph_files.files[:10] }}" # Limit to first 10 graphs
   when: graph_files.files is defined
   run_once: true
-  tags: ['compare', 'graphs']
+  tags: ["compare", "graphs"]
 
 - name: Prepare graph data for template
   delegate_to: localhost
@@ -334,7 +334,7 @@
     performance_graphs: []
   run_once: true
   when: graph_files.files is not defined or graph_files.files | length == 0
-  tags: ['compare', 'graphs']
+  tags: ["compare", "graphs"]
 
 - name: Build graph data list
   delegate_to: localhost
@@ -345,7 +345,7 @@
   when:
     - graph_data is defined
     - graph_data.results is defined
-  tags: ['compare', 'graphs']
+  tags: ["compare", "graphs"]
 
 - name: Generate benchmark description
   delegate_to: localhost
@@ -382,14 +382,14 @@
       <p><strong>{{ mmtests_test_type }}</strong> benchmark for Linux kernel performance testing.</p>
       {% endif %}
   run_once: true
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Generate comparison report from template
   delegate_to: localhost
   template:
     src: comparison_report.html.j2
     dest: "{{ topdir_path }}/workflows/mmtests/results/compare/comparison_report.html"
-    mode: '0644'
+    mode: "0644"
   vars:
     benchmark_name: "{{ mmtests_test_type }}"
     test_description: "Performance Benchmark"
@@ -407,14 +407,14 @@
     summary_stats: []
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Save comparison outputs
   delegate_to: localhost
   copy:
     content: "{{ item.content }}"
     dest: "{{ item.dest }}"
-    mode: '0644'
+    mode: "0644"
   loop:
     - content: "{{ comparison_text_output.stdout | default('No comparison data') }}"
       dest: "{{ topdir_path }}/workflows/mmtests/results/compare/comparison.txt"
@@ -422,20 +422,20 @@
       dest: "{{ topdir_path }}/workflows/mmtests/results/compare/comparison_raw.html"
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Copy full results to final location
   delegate_to: localhost
   ansible.builtin.copy:
     src: "{{ topdir_path }}/tmp/mmtests/work/log/{{ item }}/"
     dest: "{{ topdir_path }}/workflows/mmtests/results/{{ item.split('-')[0] }}/"
-    remote_src: yes
+    remote_src: true
   loop:
     - "{{ baseline_hostname }}-{{ baseline_kernel }}"
     - "{{ dev_hostname }}-{{ dev_kernel }}"
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Display comparison report location
   debug:
@@ -457,7 +457,7 @@
       🚀 Open comparison_report.html for the best analysis experience!
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare']
+  tags: ["compare"]
 
 - name: Clean up temporary archives on remote nodes
   file:
@@ -469,4 +469,4 @@
     - dev
   run_once: true
   when: kdevops_baseline_and_dev|bool
-  tags: ['compare', 'cleanup']
+  tags: ["compare", "cleanup"]
diff --git a/playbooks/roles/monitoring/tasks/main.yml b/playbooks/roles/monitoring/tasks/main.yml
index 9c4bd3ab..9e1eeb45 100644
--- a/playbooks/roles/monitoring/tasks/main.yml
+++ b/playbooks/roles/monitoring/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -14,10 +14,10 @@
   include_tasks: monitor_run.yml
   when:
     - enable_monitoring|default(false)|bool
-  tags: [ 'monitoring', 'monitor_run' ]
+  tags: ["monitoring", "monitor_run"]
 
 - name: Include monitor_collect tasks
   include_tasks: monitor_collect.yml
   when:
     - enable_monitoring|default(false)|bool
-  tags: [ 'monitoring', 'monitor_collect' ]
+  tags: ["monitoring", "monitor_collect"]
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect.yml b/playbooks/roles/monitoring/tasks/monitor_collect.yml
index e01e7c34..036595c7 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect.yml
@@ -2,7 +2,7 @@
 # Tasks to stop monitoring services and collect data after test execution
 
 - name: Check if folio migration monitoring was started
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: /root/monitoring/folio_migration.pid
@@ -12,7 +12,7 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Stop folio migration monitoring
-  become: yes
+  become: true
   become_method: sudo
   shell: |
     if [ -f /root/monitoring/folio_migration.pid ]; then
@@ -41,7 +41,7 @@
     - stop_monitor.changed|default(false)
 
 - name: Check if monitoring data was collected
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: /root/monitoring/folio_migration_stats.txt
@@ -51,30 +51,30 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Copy plot_migration_stats.py to target
-  become: yes
+  become: true
   become_method: sudo
   copy:
     src: "{{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py"
     dest: /root/monitoring/plot_migration_stats.py
-    mode: '0755'
+    mode: "0755"
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
     - folio_migration_data_file.stat.exists|default(false)
 
 - name: Check if matplotlib is available for plotting
-  become: yes
+  become: true
   become_method: sudo
   command: python3 -c "import matplotlib.pyplot"
   register: matplotlib_check
-  ignore_errors: yes
+  ignore_errors: true
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
     - folio_migration_data_file.stat.exists|default(false)
 
 - name: Generate folio migration plots
-  become: yes
+  become: true
   become_method: sudo
   command: |
     python3 /root/monitoring/plot_migration_stats.py
@@ -83,7 +83,7 @@
   args:
     chdir: /root/monitoring
   register: plot_generation
-  ignore_errors: yes
+  ignore_errors: true
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
@@ -113,27 +113,28 @@
     monitoring_results_path: "{{ monitoring_results_base_path | default(topdir_path + '/workflows/fstests/results/monitoring') }}"
 
 - name: Create local monitoring results directory
-  local_action: file path="{{ monitoring_results_path }}" state=directory
+  file: path="{{ monitoring_results_path }}" state=directory
+  delegate_to: localhost
   run_once: true
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
 
 - name: Copy folio migration stats data to localhost
-  become: yes
+  become: true
   become_method: sudo
   fetch:
     src: /root/monitoring/folio_migration_stats.txt
     dest: "{{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats.txt"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
     - folio_migration_data_file.stat.exists|default(false)
 
 - name: Check if plot was generated
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: /root/monitoring/folio_migration_plot.png
@@ -143,13 +144,13 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Copy folio migration plot to localhost
-  become: yes
+  become: true
   become_method: sudo
   fetch:
     src: /root/monitoring/folio_migration_plot.png
     dest: "{{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_plot.png"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
@@ -170,21 +171,21 @@
 
 # Generate plots on localhost after collecting data
 - name: Check if matplotlib is available on localhost
-  local_action: command python3 -c "import matplotlib.pyplot"
+  command: python3 -c "import matplotlib.pyplot"
+  delegate_to: localhost
   register: localhost_matplotlib_check
-  ignore_errors: yes
+  ignore_errors: true
   run_once: true
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
 
 - name: Generate folio migration plots on localhost
-  local_action: |
-    command python3 {{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py
-      -o {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_plot.png
-      {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats.txt
+  command: "python3 {{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py\n  -o {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_plot.png\n\
+    \  {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats.txt\n"
+  delegate_to: localhost
   register: localhost_plot_generation
-  ignore_errors: yes
+  ignore_errors: true
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
index bd94faac..c2ecf495 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
@@ -3,7 +3,7 @@
 # This allows peeking at intermediate results during long-running tests
 
 - name: Check if monitoring data exists (without stopping monitoring)
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: /root/monitoring/folio_migration_stats.txt
@@ -15,7 +15,7 @@
 # Note: We don't need matplotlib on target hosts - plots are generated on localhost
 
 - name: Create snapshot of monitoring data
-  become: yes
+  become: true
   become_method: sudo
   shell: |
     # Create a snapshot copy to avoid interfering with ongoing monitoring
@@ -44,19 +44,16 @@
     monitoring_results_path: "{{ monitoring_results_base_path | default(topdir_path + '/workflows/fstests/results/monitoring') }}"
 
 - name: Create local monitoring results directory
-  local_action:
-    module: file
-    path: "{{ monitoring_results_path }}"
-    state: directory
-    mode: '0755'
-  become: no
+  file:
+  delegate_to: localhost
+  become: false
   run_once: true
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
 
 - name: Check if snapshot was created
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: /root/monitoring/folio_migration_stats_snapshot.txt
@@ -66,13 +63,13 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Copy folio migration stats snapshot to localhost
-  become: yes
+  become: true
   become_method: sudo
   fetch:
     src: /root/monitoring/folio_migration_stats_snapshot.txt
     dest: "{{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats_interim.txt"
-    flat: yes
-    validate_checksum: False
+    flat: true
+    validate_checksum: false
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
@@ -92,9 +89,10 @@
 
 # Generate plots on localhost from the collected data
 - name: Check if matplotlib is available on localhost
-  local_action: command python3 -c "import matplotlib.pyplot"
+  command: python3 -c "import matplotlib.pyplot"
+  delegate_to: localhost
   register: localhost_matplotlib_check
-  ignore_errors: yes
+  ignore_errors: true
   changed_when: false
   failed_when: false
   run_once: true
@@ -103,10 +101,8 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Collect all monitoring data files
-  local_action:
-    module: find
-    paths: "{{ monitoring_results_path }}"
-    patterns: "*_folio_migration_stats_interim.txt"
+  find:
+  delegate_to: localhost
   register: all_monitoring_files
   run_once: true
   when:
@@ -115,36 +111,11 @@
     - localhost_matplotlib_check.rc == 0
 
 - name: Generate A/B comparison plots for each configuration
-  local_action:
-    module: shell
-    cmd: |
-      # Only process baseline files (not -dev files)
-      if [[ "{{ item }}" == *"-dev_folio_migration_stats_interim.txt" ]]; then
-        exit 0
-      fi
-
-      # Extract base configuration name
-      base_name=$(echo "{{ item }}" | sed 's/_folio_migration_stats_interim.txt$//')
-      baseline_file="{{ item }}"
-      dev_file="${base_name}-dev_folio_migration_stats_interim.txt"
-
-      # Check if corresponding dev file exists
-      if [ ! -f "{{ monitoring_results_path }}/$dev_file" ]; then
-        echo "Dev file not found for $base_name, skipping A/B comparison"
-        exit 0
-      fi
-
-      # Generate A/B comparison plot
-      config_name=$(basename "$base_name")
-      python3 {{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py \
-        -o "{{ monitoring_results_path }}/${config_name}_ab_comparison.png" \
-        "{{ monitoring_results_path }}/$baseline_file" \
-        "{{ monitoring_results_path }}/$dev_file"
-
-      echo "Generated A/B comparison: ${config_name}_ab_comparison.png (baseline vs dev)"
+  shell:
+  delegate_to: localhost
   with_items: "{{ all_monitoring_files.files | map(attribute='path') | map('basename') | list }}"
   register: ab_plot_generation
-  ignore_errors: yes
+  ignore_errors: true
   run_once: true
   when:
     - monitor_developmental_stats|default(false)|bool
@@ -153,26 +124,10 @@
     - all_monitoring_files.files | length > 0
 
 - name: Generate comprehensive plot with all results
-  local_action:
-    module: shell
-    cmd: |
-      # Find all interim stats files
-      cd "{{ monitoring_results_path }}"
-      files=$(ls -1 *_folio_migration_stats_interim.txt 2>/dev/null)
-
-      if [ -z "$files" ]; then
-        echo "No monitoring data files found"
-        exit 0
-      fi
-
-      # Generate comprehensive plot with all data
-      python3 {{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py \
-        -o "{{ monitoring_results_path }}/all_hosts_comprehensive.png" \
-        $files
-
-      echo "Generated comprehensive plot: all_hosts_comprehensive.png"
+  shell:
+  delegate_to: localhost
   register: comprehensive_plot_generation
-  ignore_errors: yes
+  ignore_errors: true
   run_once: true
   when:
     - monitor_developmental_stats|default(false)|bool
@@ -195,7 +150,7 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Clean up snapshot files on target
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ item }}"
@@ -206,4 +161,4 @@
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
-  ignore_errors: yes
+  ignore_errors: true
diff --git a/playbooks/roles/monitoring/tasks/monitor_run.yml b/playbooks/roles/monitoring/tasks/monitor_run.yml
index 068ba67f..a5a799f0 100644
--- a/playbooks/roles/monitoring/tasks/monitor_run.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_run.yml
@@ -2,7 +2,7 @@
 # Tasks to start monitoring services before test execution
 
 - name: Check if folio migration stats are available
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: /sys/kernel/debug/mm/migrate/stats
@@ -12,19 +12,19 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Create monitoring directory
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: /root/monitoring
     state: directory
-    mode: '0755'
+    mode: "0755"
   when:
     - monitor_developmental_stats|default(false)|bool
     - monitor_folio_migration|default(false)|bool
     - folio_migration_stats_file.stat.exists|default(false)
 
 - name: Start folio migration monitoring in background
-  become: yes
+  become: true
   become_method: sudo
   shell: |
     nohup bash -c 'while true; do
@@ -34,7 +34,7 @@
       sleep {{ monitor_folio_migration_interval|default(60) }}
     done' > /root/monitoring/folio_migration.log 2>&1 &
     echo $! > /root/monitoring/folio_migration.pid
-  async: 86400  # Run for up to 24 hours
+  async: 86400 # Run for up to 24 hours
   poll: 0
   register: folio_migration_monitor
   when:
@@ -52,7 +52,7 @@
     - folio_migration_monitor is defined
 
 - name: Verify monitoring started successfully
-  become: yes
+  become: true
   become_method: sudo
   shell: |
     if [ -f /root/monitoring/folio_migration.pid ]; then
diff --git a/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml b/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
index 1949866f..8a505a6d 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ansible_distribution}}.yml'
-        - '{{ansible_os_family}}.yml'
+        - "{{ansible_distribution}}.yml"
+        - "{{ansible_os_family}}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ nfsd_export_fstype }}"
   set_fact:
@@ -27,10 +27,10 @@
   when: kdevops_krb5_enable|bool
 
 - name: Install nfsd dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name: "{{ nfsd_packages }}"
     state: present
-    update_cache: yes
-  tags: [ 'pynfs', 'deps' ]
+    update_cache: true
+  tags: ["pynfs", "deps"]
diff --git a/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml b/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
index 5093e3b7..676464d7 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ansible_distribution}}.yml'
-        - '{{ansible_os_family}}.yml'
+        - "{{ansible_distribution}}.yml"
+        - "{{ansible_os_family}}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ nfsd_export_fstype }}"
   set_fact:
@@ -22,10 +22,10 @@
     - fsprogs
 
 - name: Install nfsd dependencies
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ nfsd_packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml b/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
index 5bda13c9..298008ed 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ansible_distribution}}.yml'
-        - '{{ansible_os_family}}.yml'
+        - "{{ansible_distribution}}.yml"
+        - "{{ansible_os_family}}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ nfsd_export_fstype }}"
   set_fact:
@@ -27,7 +27,7 @@
   when: kdevops_krb5_enable|bool
 
 - name: Install nfsd dependencies
-  become: yes
+  become: true
   become_method: sudo
   zypper:
     name: "{{ nfsd_packages }}"
diff --git a/playbooks/roles/nfsd/tasks/main.yml b/playbooks/roles/nfsd/tasks/main.yml
index 123dbc2c..23a2cf19 100644
--- a/playbooks/roles/nfsd/tasks/main.yml
+++ b/playbooks/roles/nfsd/tasks/main.yml
@@ -12,15 +12,15 @@
   when: ansible_os_family == 'RedHat'
 
 - name: Generate /etc/nfs.conf
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   template:
     src: nfs.conf.j2
     dest: /etc/nfs.conf
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
 
 - name: Set up an iSCSI initiator
   ansible.builtin.include_role:
@@ -40,56 +40,56 @@
     - nfsd_export_fstype != "tmpfs"
 
 - name: Create {{ nfsd_export_path }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ nfsd_export_path }}"
     state: directory
-    mode: 0755
+    mode: "0755"
 
 - name: Test whether SELinux is enabled
   command: /usr/sbin/selinuxenabled
   register: selinux_status
-  changed_when: False
-  failed_when: False
+  changed_when: false
+  failed_when: false
 
 - name: Copy SELinux type enforcement file to server
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   copy:
     src: "{{ playbook_dir }}/roles/nfsd/templates/nfsd_policy.te"
     dest: "/root/nfsd_policy.te"
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
   when: selinux_status.rc == 0
 
 - name: Convert SELinux type enforcement file to a policy module
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: /usr/bin/checkmodule -M -m -o /root/nfsd_policy.mod /root/nfsd_policy.te
   when: selinux_status.rc == 0
 
 - name: Compile SELinux policy module into policy package
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: /usr/bin/semodule_package -o /root/nfsd_policy.pp -m /root/nfsd_policy.mod
   when: selinux_status.rc == 0
 
 - name: Install SELinux policy module
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: /usr/sbin/semodule -i /root/nfsd_policy.pp
   when: selinux_status.rc == 0
 
 - name: Allow nfsd full access to {{ nfsd_export_path }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.general.sefcontext:
     target: "{{ nfsd_export_path }}(/.*)?"
@@ -102,7 +102,7 @@
   service_facts:
 
 - name: Turn off firewalld
-  become: yes
+  become: true
   ansible.builtin.systemd_service:
     name: firewalld.service
     enabled: false
@@ -110,8 +110,8 @@
   when: '"firewalld.service" in ansible_facts.services'
 
 - name: Start up nfsd
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd_service:
     name: nfs-server.service
diff --git a/playbooks/roles/nfsd_add_export/tasks/main.yml b/playbooks/roles/nfsd_add_export/tasks/main.yml
index cf3fac3a..627f7cd6 100644
--- a/playbooks/roles/nfsd_add_export/tasks/main.yml
+++ b/playbooks/roles/nfsd_add_export/tasks/main.yml
@@ -20,8 +20,8 @@
     - export_fstype == "tmpfs"
 
 - name: Ensure {{ export_volname }} has correct permissions
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   file:
@@ -35,20 +35,20 @@
   command: /usr/sbin/selinuxenabled
   register: selinux_status
   delegate_to: "{{ server_host }}"
-  changed_when: False
-  failed_when: False
+  changed_when: false
+  failed_when: false
 
 - name: Fix SELinux file context under new mount
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   command: /usr/sbin/restorecon -R "{{ nfsd_export_path }}/{{ export_volname }}"
   when: selinux_status.rc == 0
 
 - name: Ensure /etc/exports.d exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   file:
@@ -56,7 +56,7 @@
     path: "/etc/exports.d"
     owner: "root"
     group: "root"
-    mode: '644'
+    mode: "644"
 
 - name: Copy export options to a template variable
   set_fact:
@@ -89,8 +89,8 @@
     - export_pnfs|bool
 
 - name: Create an exports.d file for the new fs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   template:
@@ -98,11 +98,11 @@
     dest: /etc/exports.d/{{ export_volname }}.exports
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
 
 - name: Reload the exports table
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   command: /usr/sbin/exportfs -ra
diff --git a/playbooks/roles/nfsd_add_export/tasks/storage/iscsi.yml b/playbooks/roles/nfsd_add_export/tasks/storage/iscsi.yml
index 098f6fa7..b85574d8 100644
--- a/playbooks/roles/nfsd_add_export/tasks/storage/iscsi.yml
+++ b/playbooks/roles/nfsd_add_export/tasks/storage/iscsi.yml
@@ -9,7 +9,7 @@
 
 - name: Rescan iSCSI LUNs on the NFS server
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
   community.general.open_iscsi:
@@ -17,14 +17,14 @@
 
 - name: Rescan iSCSI LUNs on the target node
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   community.general.open_iscsi:
     rescan: true
 
 - name: Enumerate available SCSI devices on the NFS server
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
   ansible.builtin.command:
@@ -40,7 +40,7 @@
 
 - name: Format new iSCSI LUN for {{ export_fstype }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
   community.general.filesystem:
@@ -49,10 +49,10 @@
 
 - name: Mount iSCSI LUN under {{ nfsd_export_path }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
-  throttle: 1  # running this in parallel can clobber fstab changes
+  throttle: 1 # running this in parallel can clobber fstab changes
   ansible.posix.mount:
     path: "{{ nfsd_export_path }}/{{ export_volname }}"
     src: "{{ iscsi_device }}"
diff --git a/playbooks/roles/nfsd_add_export/tasks/storage/local.yml b/playbooks/roles/nfsd_add_export/tasks/storage/local.yml
index 2fdfc8df..c366a13f 100644
--- a/playbooks/roles/nfsd_add_export/tasks/storage/local.yml
+++ b/playbooks/roles/nfsd_add_export/tasks/storage/local.yml
@@ -1,7 +1,7 @@
 ---
 - name: Create a new LVM partition
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
   community.general.lvol:
@@ -11,7 +11,7 @@
 
 - name: Format new volume for {{ export_fstype }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
   community.general.filesystem:
@@ -20,10 +20,10 @@
 
 - name: Mount volume under {{ nfsd_export_path }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
-  throttle: 1  # running this in parallel can clobber fstab changes
+  throttle: 1 # running this in parallel can clobber fstab changes
   ansible.posix.mount:
     path: "{{ nfsd_export_path }}/{{ export_volname }}"
     src: "/dev/exports/{{ export_volname }}"
diff --git a/playbooks/roles/nfsd_add_export/tasks/storage/tmpfs.yml b/playbooks/roles/nfsd_add_export/tasks/storage/tmpfs.yml
index fbc313b8..3a13376a 100644
--- a/playbooks/roles/nfsd_add_export/tasks/storage/tmpfs.yml
+++ b/playbooks/roles/nfsd_add_export/tasks/storage/tmpfs.yml
@@ -1,10 +1,10 @@
 ---
 - name: Mount a tmpfs under {{ nfsd_export_path }}
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   delegate_to: "{{ server_host }}"
-  throttle: 1  # running this in parallel can clobber fstab changes
+  throttle: 1 # running this in parallel can clobber fstab changes
   ansible.posix.mount:
     path: "{{ nfsd_export_path }}/{{ export_volname }}"
     src: "tmpfs"
diff --git a/playbooks/roles/nfstest/defaults/main.yml b/playbooks/roles/nfstest/defaults/main.yml
index 0d4060b5..e04e3676 100644
--- a/playbooks/roles/nfstest/defaults/main.yml
+++ b/playbooks/roles/nfstest/defaults/main.yml
@@ -1,5 +1,5 @@
 ---
 # Our sensible defaults for the nfstest role.
 #
-kdevops_run_nfstest: False
+kdevops_run_nfstest: false
 kdevops_workflows_dedicated_workflow: false
diff --git a/playbooks/roles/nfstest/tasks/main.yml b/playbooks/roles/nfstest/tasks/main.yml
index bf5cd9f7..ea87125c 100644
--- a/playbooks/roles/nfstest/tasks/main.yml
+++ b/playbooks/roles/nfstest/tasks/main.yml
@@ -16,16 +16,16 @@
   vars:
     params:
       files:
-        - '{{ ansible_distribution }}.yml'
-        - '{{ ansible_os_family }}.yml'
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
   tags: vars
 
 - name: Install dependencies for nfstest
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name: "{{ nfstest_packages }}"
@@ -46,7 +46,7 @@
 
 - name: Remove existing nfstest install directory
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     path: "{{ nfstest_install_dir }}"
@@ -80,7 +80,7 @@
 
 - name: Create the test mount point on the target node
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.file:
     state: directory
@@ -140,14 +140,16 @@
   tags: copy_results
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ nfstest_results_target }}/" state=absent
+  file: path="{{ nfstest_results_target }}/" state=absent
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  local_action: file path="{{ nfstest_results_target }}/" state=directory
+  file: path="{{ nfstest_results_target }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Run the test group script on the target node
   ansible.builtin.command:
@@ -157,19 +159,20 @@
   tags: run_tests
 
 - name: Get used target kernel version
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ nfstest_results_target }}/../last-kernel.txt"
-  tags: [ 'run_tests', 'copy_results', 'print_results' ]
+  shell: echo {{ last_kernel }} > {{ nfstest_results_target }}/../last-kernel.txt
+  delegate_to: localhost
+  tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
 
 - name: Create the results directory on the control node
@@ -207,7 +210,7 @@
   tags: copy_results
 
 - name: Verify last-run kernel directory exists
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   stat:
     path: "{{ nfstest_results_full_path }}/last-run/{{ last_kernel }}"
@@ -218,7 +221,7 @@
     src: "{{ nfstest_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ nfstest_results_full_path }}/"
   run_once: true
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   when:
     - last_run_kernel_dir.stat.exists
diff --git a/playbooks/roles/pkg/tasks/debian.yml b/playbooks/roles/pkg/tasks/debian.yml
index fa984b05..6d245b86 100644
--- a/playbooks/roles/pkg/tasks/debian.yml
+++ b/playbooks/roles/pkg/tasks/debian.yml
@@ -1,3 +1,4 @@
+---
 - name: debian_libaio rename for buster
   set_fact:
     is_bookworm: '{{ ansible_distribution_release == "bookworm" }}'
diff --git a/playbooks/roles/pkg/tasks/main.yml b/playbooks/roles/pkg/tasks/main.yml
index 02574ea6..1098e1e8 100644
--- a/playbooks/roles/pkg/tasks/main.yml
+++ b/playbooks/roles/pkg/tasks/main.yml
@@ -2,4 +2,3 @@
 - name: oscheck distribution ospecific setup
   import_tasks: tasks/debian.yml
   when: ansible_facts['os_family']|lower == 'debian'
-
diff --git a/playbooks/roles/postfix_relay_host/defaults/main.yml b/playbooks/roles/postfix_relay_host/defaults/main.yml
index 7f5b69b4..cf540452 100644
--- a/playbooks/roles/postfix_relay_host/defaults/main.yml
+++ b/playbooks/roles/postfix_relay_host/defaults/main.yml
@@ -1,4 +1,4 @@
 # SPDX-License-Identifier copyleft-next-0.3.1                                   
----                                                                             
-postfix_relay_host_setup: False
+---
+postfix_relay_host_setup: false
 postfix_relay_host: "some.example.com"
diff --git a/playbooks/roles/postfix_relay_host/tasks/main.yml b/playbooks/roles/postfix_relay_host/tasks/main.yml
index b1b9be78..69470b88 100644
--- a/playbooks/roles/postfix_relay_host/tasks/main.yml
+++ b/playbooks/roles/postfix_relay_host/tasks/main.yml
@@ -1,49 +1,48 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
   when:
     - postfix_relay_host_setup|bool
 
 - name: Check to see if /etc/postfix/main.cf exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  stat:
-    path=/etc/postfix/main.cf
+  stat: path=/etc/postfix/main.cf
   register: postfix_config_main_file
   when:
     - postfix_relay_host_setup|bool
-  tags: [ 'postfix' ]
+  tags: ["postfix"]
 
 - name: Set relayhost on /etc/postfix/main.cf
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   lineinfile:
     path: /etc/postfix/main.cf
-    regexp: '^(relayhost)(.*)'
-    line: 'relayhost = {{ postfix_relay_host }}'
+    regexp: "^(relayhost)(.*)"
+    line: "relayhost = {{ postfix_relay_host }}"
   when:
     - postfix_relay_host_setup|bool
     - postfix_config_main_file.stat.exists
-  tags: [ 'postfix' ]
+  tags: ["postfix"]
 
 - name: Enable and restart postfix service
-  become: yes
+  become: true
   become_method: sudo
   systemd:
     name: postfix
-    enabled: yes
+    enabled: true
     state: restarted
-    masked: no
+    masked: false
   when:
     - postfix_relay_host_setup|bool
     - postfix_config_main_file.stat.exists
diff --git a/playbooks/roles/pynfs/defaults/main.yml b/playbooks/roles/pynfs/defaults/main.yml
index de09583a..7515ef28 100644
--- a/playbooks/roles/pynfs/defaults/main.yml
+++ b/playbooks/roles/pynfs/defaults/main.yml
@@ -3,7 +3,7 @@
 # Our sensible defaults for the pynfs role.
 #
 # We default to not run tests.
-kdevops_run_pynfs: False
-pynfs_pnfs_block: False
+kdevops_run_pynfs: false
+pynfs_pnfs_block: false
 
 pynfs_data: "{{ data_path }}/pynfs"
diff --git a/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml b/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml
index e0598ed1..b6302cfc 100644
--- a/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install pynfs build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -15,5 +15,5 @@
       - python3-ply
       - python3-standard-xdrlib
     state: present
-    update_cache: yes
-  tags: [ 'pynfs', 'deps' ]
+    update_cache: true
+  tags: ["pynfs", "deps"]
diff --git a/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml b/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml
index 8aa2ba12..915fc566 100644
--- a/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml
@@ -4,10 +4,10 @@
     name: codereadyrepo
 
 - name: Install build dependencies for pynfs
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/pynfs/tasks/install-deps/suse/main.yml b/playbooks/roles/pynfs/tasks/install-deps/suse/main.yml
index 8321c064..ba0d5cf8 100644
--- a/playbooks/roles/pynfs/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/pynfs/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Install build dependencies for pynfs
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/pynfs/tasks/main.yml b/playbooks/roles/pynfs/tasks/main.yml
index 882dd1cb..d8ffbbd5 100644
--- a/playbooks/roles/pynfs/tasks/main.yml
+++ b/playbooks/roles/pynfs/tasks/main.yml
@@ -1,11 +1,12 @@
+---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -14,41 +15,43 @@
     pynfs_workflow_dir: "../workflows/pynfs"
     pynfs_results_full_path: "{{ topdir_path }}/workflows/pynfs/results"
     pynfs_results_target: "../workflows/pynfs/results/last-run/"
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Clean up our localhost results directory and files
-  local_action: file path="{{ pynfs_workflow_dir }}/results/" state=absent
+  file: path="{{ pynfs_workflow_dir }}/results/" state=absent
+  delegate_to: localhost
   run_once: true
-  tags: [ 'clean_local_results' ]
+  tags: ["clean_local_results"]
 
 - name: Create the local results directory
-  local_action: file path="{{ pynfs_workflow_dir }}/results/" state=directory
+  file: path="{{ pynfs_workflow_dir }}/results/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'first_run' ]
+  tags: ["first_run"]
 
 - include_role:
     name: create_data_partition
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
 
 # Distro specific
 - name: Install dependencies
   include_tasks: install-deps/main.yml
 
 - name: Remove old pynfs dir as we always clone a fresh tree
-  tags: [ 'git', 'pynfs' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["git", "pynfs"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ pynfs_data }}"
     state: absent
 
 - name: Shallow-clone the pynfs source code from {{ pynfs_git }}
-  tags: [ 'git', 'pynfs' ]
+  tags: ["git", "pynfs"]
   git:
     repo: "{{ pynfs_git }}"
     dest: "{{ pynfs_data }}"
-    update: yes
+    update: true
     version: "{{ pynfs_git_tag }}"
     depth: 1
   retries: 3
@@ -59,11 +62,11 @@
     - kdevops_workflows_dedicated_workflow|bool
 
 - name: Clone the full pynfs source code tree from {{ pynfs_git }}
-  tags: [ 'git', 'pynfs' ]
+  tags: ["git", "pynfs"]
   git:
     repo: "{{ pynfs_git }}"
     dest: "{{ pynfs_data }}"
-    update: yes
+    update: true
     version: "{{ pynfs_git_tag }}"
   retries: 3
   delay: 5
@@ -73,19 +76,19 @@
     - not kdevops_workflows_dedicated_workflow|bool
 
 - name: Build pynfs
-  tags: [ 'pynfs' ]
+  tags: ["pynfs"]
   command: ./setup.py build
   args:
     chdir: "{{ pynfs_data }}"
 
 - name: Get the hostname of the NFS server and base volname
-  tags: [ 'vars' ]
+  tags: ["vars"]
   set_fact:
     nfsd_hostname: "{{ kdevops_host_prefix }}-nfsd"
     volname_base: "pynfs"
 
 - name: Create an export for NFSv4.0 testing
-  tags: [ 'pynfs' ]
+  tags: ["pynfs"]
   include_role:
     name: nfsd_add_export
   vars:
@@ -96,7 +99,7 @@
     export_size: 10g
 
 - name: Create an export for NFSv4.1 testing
-  tags: [ 'pynfs' ]
+  tags: ["pynfs"]
   include_role:
     name: nfsd_add_export
   vars:
@@ -107,7 +110,7 @@
     export_size: 10g
 
 - name: Create an export for pNFS testing
-  tags: [ 'pynfs' ]
+  tags: ["pynfs"]
   include_role:
     name: nfsd_add_export
   vars:
@@ -121,7 +124,7 @@
     - pynfs_pnfs_block|bool
 
 - name: Wait until nfsd grace period ends
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   delegate_to: "{{ nfsd_hostname }}"
   command: /usr/bin/grep -q Y /proc/fs/nfsd/v4_end_grace
   register: result
@@ -130,17 +133,19 @@
   until: result.rc == 0
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ pynfs_results_target }}/" state=absent
+  file: path="{{ pynfs_results_target }}/" state=absent
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  local_action: file path="{{ pynfs_results_target }}/" state=directory
+  file: path="{{ pynfs_results_target }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'run_tests', 'copy_results', 'clean_local_results' ]
+  tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Run pynfs
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   script: "{{ pynfs_workflow_dir }}/scripts/run_pynfs.sh"
   environment:
     PYNFS_DATA: "{{ pynfs_data }}"
@@ -148,7 +153,7 @@
     ANSIBLE_HOST: "{{ ansible_host }}"
 
 - name: Run pynfs pNFS block tests
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   script: "{{ pynfs_workflow_dir }}/scripts/run_pynfs_block.sh"
   environment:
     PYNFS_DATA: "{{ pynfs_data }}"
@@ -158,38 +163,39 @@
     - pynfs_pnfs_block|bool
 
 - name: Get used target kernel version
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store kernel_rev variable
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   set_fact:
     kernel_rev: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ kernel_rev }} > {{ pynfs_results_target }}/../last-kernel.txt"
-  tags: [ 'run_tests', 'copy_results', 'print_results' ]
+  shell: echo {{ kernel_rev }} > {{ pynfs_results_target }}/../last-kernel.txt
+  delegate_to: localhost
+  tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
 
 - name: Copy the version-specific results to the control node
-  tags: [ 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   fetch:
     src: "{{ pynfs_data }}/pynfs-{{ item }}-results.json"
     dest: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev}}/{{ kernel_rev }}-v{{ item }}.json"
-    flat: yes
+    flat: true
   with_items:
     - 4.0
     - 4.1
 
 - name: Copy the pNFS results to the control node
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   fetch:
     src: "{{ pynfs_data }}/pynfs-{{ item }}-results.json"
@@ -201,7 +207,7 @@
     - pynfs_pnfs_block|bool
 
 - name: Verify last-run kernel directory exists
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   stat:
     path: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev }}"
@@ -212,7 +218,7 @@
     src: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev }}"
     dest: "{{ pynfs_results_full_path }}/"
   run_once: true
-  tags: [ 'copy_results' ]
+  tags: ["copy_results"]
   delegate_to: localhost
   when:
     - last_run_kernel_dir.stat.exists
diff --git a/playbooks/roles/reboot-limit/defaults/main.yml b/playbooks/roles/reboot-limit/defaults/main.yml
index ab6d0510..40cc37f9 100644
--- a/playbooks/roles/reboot-limit/defaults/main.yml
+++ b/playbooks/roles/reboot-limit/defaults/main.yml
@@ -6,6 +6,6 @@ reboot_limit_test_type: "ansible"
 reboot_limits_data: "{{ data_path }}/reboot-limit"
 reboot_limits_systemctl_analyze_log: "systemctl-analyze.txt"
 reboot_limits_count_log: "reboot-count.txt"
-reboot_limit_enable_systemd_analyze: False
-reboot_limit_boot_count_crash_enable: False
+reboot_limit_enable_systemd_analyze: false
+reboot_limit_boot_count_crash_enable: false
 reboot_limit_boot_crash_count: 0
diff --git a/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml b/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
index 43404dc2..9976786a 100644
--- a/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
+++ b/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
@@ -1,45 +1,46 @@
 ---
 # This task performs both regular and kexec reboots sequentially for comparison
 - name: Print uname for each host
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   debug: var=ansible_kernel
 
 - name: Hint to our watchdog our reboot-limit comparison tests are about to kick off
-  local_action: file path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
-  tags: [ 'run_tests' ]
+  file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
+  delegate_to: localhost
+  tags: ["run_tests"]
   run_once: true
 
 # Phase 1: Regular reboot test
 - name: Starting Phase 1 - Regular reboot test ({{ reboot_num }} of {{ reboot_limit_max }})
   debug:
     msg: "Starting regular reboot test - reboot {{ reboot_num }} of {{ reboot_limit_max }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Run the regular reboot test using the ansible reboot module
-  become: yes
+  become: true
   become_method: sudo
   reboot:
     post_reboot_delay: 10
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Handle regular reboot count and data collection
   include_tasks: handle-reboot-data.yml
   vars:
     reboot_type: "regular"
     data_path: "{{ reboot_limit_data_regular }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 # Phase 2: Kexec reboot test
 - name: Starting Phase 2 - Kexec reboot test ({{ reboot_num }} of {{ reboot_limit_max }})
   debug:
     msg: "Starting kexec reboot test - reboot {{ reboot_num }} of {{ reboot_limit_max }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 # Kexec preparation tasks
 - name: Get current kernel version for kexec
   command: uname -r
   register: current_kernel_version
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Check for kernel image locations for kexec
   stat:
@@ -53,7 +54,7 @@
     loop_var: kernel_path
   when:
     - current_kernel_version is defined
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Set kernel path for kexec
   set_fact:
@@ -63,7 +64,7 @@
     loop_var: kernel_item
   when:
     - kernel_item.stat.exists
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Check for initrd/initramfs locations for kexec
   stat:
@@ -78,7 +79,7 @@
     loop_var: initrd_path
   when:
     - current_kernel_version is defined
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Set initrd path for kexec
   set_fact:
@@ -88,16 +89,16 @@
     loop_var: initrd_item
   when:
     - initrd_item.stat.exists
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Read current kernel command line for kexec
   slurp:
     src: /proc/cmdline
   register: cmdline_content
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Load kernel into kexec
-  become: yes
+  become: true
   become_method: sudo
   command: >
     kexec -l {{ kexec_kernel_path }}
@@ -106,21 +107,21 @@
   when:
     - kexec_kernel_path is defined
     - kexec_initrd_path is defined
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Run the kexec reboot test using systemctl kexec
-  become: yes
+  become: true
   become_method: sudo
   reboot:
     msg: "Rebooting system via systemctl kexec for reboot-limit comparison test"
     reboot_command: "systemctl kexec"
     post_reboot_delay: 10
     reboot_timeout: 300
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Handle kexec reboot count and data collection
   include_tasks: handle-reboot-data.yml
   vars:
     reboot_type: "kexec"
     data_path: "{{ reboot_limit_data_kexec }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
diff --git a/playbooks/roles/reboot-limit/tasks/do-reboot.yml b/playbooks/roles/reboot-limit/tasks/do-reboot.yml
index 7b38f9dc..8f916b87 100644
--- a/playbooks/roles/reboot-limit/tasks/do-reboot.yml
+++ b/playbooks/roles/reboot-limit/tasks/do-reboot.yml
@@ -1,24 +1,25 @@
 ---
 - name: Print uname for each host
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   debug: var=ansible_kernel
 
 - name: Hint to our watchdog our reboot-limit tests are about to kick off
-  local_action: file path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
-  tags: [ 'run_tests' ]
+  file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
+  delegate_to: localhost
+  tags: ["run_tests"]
   run_once: true
 
 - name: Run the reboot test using the ansible reboot module
-  become: yes
+  become: true
   become_method: sudo
   reboot:
     post_reboot_delay: 10
   when:
     - reboot_limit_test_type == "ansible"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Reboot using systemctl reboot with proper handling
-  become: yes
+  become: true
   become_method: sudo
   reboot:
     msg: "Rebooting system via systemctl reboot for reboot-limit test"
@@ -27,7 +28,7 @@
     reboot_timeout: 300
   when:
     - reboot_limit_test_type == "systemctl_reboot"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 # kexec tasks - prepare the kernel for kexec before rebooting
 - name: Get current kernel version for kexec
@@ -35,7 +36,7 @@
   register: current_kernel_version
   when:
     - reboot_limit_test_type == "systemctl_kexec"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Check for kernel image locations for kexec
   stat:
@@ -50,7 +51,7 @@
   when:
     - reboot_limit_test_type == "systemctl_kexec"
     - current_kernel_version is defined
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Set kernel path for kexec
   set_fact:
@@ -61,7 +62,7 @@
   when:
     - reboot_limit_test_type == "systemctl_kexec"
     - kernel_item.stat.exists
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Check for initrd/initramfs locations for kexec
   stat:
@@ -77,7 +78,7 @@
   when:
     - reboot_limit_test_type == "systemctl_kexec"
     - current_kernel_version is defined
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Set initrd path for kexec
   set_fact:
@@ -88,7 +89,7 @@
   when:
     - reboot_limit_test_type == "systemctl_kexec"
     - initrd_item.stat.exists
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Read current kernel command line for kexec
   slurp:
@@ -96,10 +97,10 @@
   register: cmdline_content
   when:
     - reboot_limit_test_type == "systemctl_kexec"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Load kernel into kexec
-  become: yes
+  become: true
   become_method: sudo
   command: >
     kexec -l {{ kexec_kernel_path }}
@@ -109,10 +110,10 @@
     - reboot_limit_test_type == "systemctl_kexec"
     - kexec_kernel_path is defined
     - kexec_initrd_path is defined
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Reboot using systemctl kexec with proper handling
-  become: yes
+  become: true
   become_method: sudo
   reboot:
     msg: "Rebooting system via systemctl kexec for reboot-limit test"
@@ -121,110 +122,110 @@
     reboot_timeout: 300
   when:
     - reboot_limit_test_type == "systemctl_kexec"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Check if the reboot limit count variable file exists
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: "{{ reboot_limit_count_file }}"
   register: reboot_limit_reg_count_file
-  tags: [ 'run_tests', 'read_count', 'vars' ]
+  tags: ["run_tests", "read_count", "vars"]
 
 - name: Read last boot count variable file
-  become: yes
+  become: true
   become_method: sudo
   slurp:
     src: "{{ reboot_limit_count_file }}"
   register: reboot_limit_last_count
   when:
     - reboot_limit_reg_count_file.stat.exists
-  tags: [ 'run_tests' , 'read_count', 'vars' ]
+  tags: ["run_tests", "read_count", "vars"]
 
 - name: Set the current boot count into a variable
   set_fact:
     reboot_limit_count: "{{ reboot_limit_last_count['content'] | b64decode | int }}"
-  tags: [ 'run_tests' , 'read_count', 'vars' ]
+  tags: ["run_tests", "read_count", "vars"]
   when:
     - reboot_limit_reg_count_file.stat.exists
 
 - name: Adjust the local boot count variable if we rebooted OK
   set_fact:
     reboot_limit_count: "{{ reboot_limit_count | int + 1 }}"
-  tags: [ 'run_tests' , 'read_count' ]
+  tags: ["run_tests", "read_count"]
   when:
     - reboot_limit_reg_count_file.stat.exists
 
 - name: Set the current boot count into a variable when no prior boot test exists
   set_fact:
     reboot_limit_count: 1
-  tags: [ 'run_tests' , 'read_count', 'vars' ]
+  tags: ["run_tests", "read_count", "vars"]
   when:
     - not reboot_limit_reg_count_file.stat.exists
 
 - name: Enable sysrq key if we're about to force a crash
-  become: yes
+  become: true
   become_method: sudo
   shell: echo 1 > /proc/sys/kernel/sysrq
-  tags: [ 'run_tests' , 'read_count', 'vars', 'crash-check' ]
+  tags: ["run_tests", "read_count", "vars", "crash-check"]
   when:
     - reboot_limit_boot_count_crash_enable
     - ((reboot_limit_count | int % reboot_limit_boot_crash_count | int) == 0)
 
 - name: Force a crash if we were asked to
-  become: yes
+  become: true
   become_method: sudo
   shell: echo c > /proc/sysrq-trigger
   ignore_errors: true
-  tags: [ 'run_tests' , 'read_count', 'vars', 'crash-check' ]
+  tags: ["run_tests", "read_count", "vars", "crash-check"]
   when:
     - reboot_limit_boot_count_crash_enable
     - ((reboot_limit_count | int % reboot_limit_boot_crash_count | int) == 0)
 
 - name: Write current updated boot count variable file to be {{ reboot_limit_count }}
-  become: yes
+  become: true
   become_method: sudo
   copy:
     content: "{{ reboot_limit_count }}"
     dest: "{{ reboot_limit_count_file }}"
   when:
     - reboot_limit_reg_count_file.stat.exists
-  tags: [ 'run_tests' , 'read_count' ]
+  tags: ["run_tests", "read_count"]
 
 - name: Create last boot count variable file if it does not exist
-  become: yes
+  become: true
   become_method: sudo
   copy:
     content: "1"
     dest: "{{ reboot_limit_count_file }}"
   when:
     - not reboot_limit_reg_count_file.stat.exists
-  tags: [ 'run_tests' , 'read_count' ]
+  tags: ["run_tests", "read_count"]
 
 - name: Wait for boot up to complete before running systemd-analyze
-  become: yes
+  become: true
   become_method: sudo
   command: "systemctl is-system-running --wait"
   when:
     - reboot_limit_enable_systemd_analyze|bool
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Collect systemctl-analyze results
-  become: yes
+  become: true
   become_method: sudo
   command: "systemd-analyze"
   register: systemd_analyze_cmd
   when:
     - reboot_limit_enable_systemd_analyze|bool
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Append systemctl-analyze output
-  become: yes
+  become: true
   become_method: sudo
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   lineinfile:
     path: "{{ reboot_limit_analyze_file }}"
     line: "{{ systemd_analyze_cmd.stdout }}"
-    create: yes
+    create: true
   when:
     - reboot_limit_enable_systemd_analyze|bool
diff --git a/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml b/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml
index 6bbdbb3c..76a7ce0f 100644
--- a/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml
+++ b/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml
@@ -8,87 +8,87 @@
   set_fact:
     reboot_type_analyze_file: "{{ data_path }}/{{ ansible_ssh_host }}/{{ reboot_limits_systemctl_analyze_log }}"
     reboot_type_count_file: "{{ data_path }}/{{ ansible_ssh_host }}/{{ reboot_limits_count_log }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Create the data collection directory for {{ reboot_type }} reboot type
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ data_path }}/{{ ansible_ssh_host }}"
     state: directory
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Check if the {{ reboot_type }} reboot count file exists
-  become: yes
+  become: true
   become_method: sudo
   stat:
     path: "{{ reboot_type_count_file }}"
   register: reboot_type_count_file_stat
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Read last {{ reboot_type }} boot count
-  become: yes
+  become: true
   become_method: sudo
   slurp:
     src: "{{ reboot_type_count_file }}"
   register: reboot_type_last_count
   when:
     - reboot_type_count_file_stat.stat.exists
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Set the current {{ reboot_type }} boot count into a variable
   set_fact:
     reboot_type_count: "{{ reboot_type_last_count['content'] | b64decode | int }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   when:
     - reboot_type_count_file_stat.stat.exists
 
 - name: Adjust the {{ reboot_type }} boot count if we rebooted OK
   set_fact:
     reboot_type_count: "{{ reboot_type_count | int + 1 }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   when:
     - reboot_type_count_file_stat.stat.exists
 
 - name: Set the current {{ reboot_type }} boot count when no prior test exists
   set_fact:
     reboot_type_count: 1
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   when:
     - not reboot_type_count_file_stat.stat.exists
 
 - name: Write current {{ reboot_type }} boot count to file ({{ reboot_type_count }})
-  become: yes
+  become: true
   become_method: sudo
   copy:
     content: "{{ reboot_type_count }}"
     dest: "{{ reboot_type_count_file }}"
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Wait for boot up to complete before running systemd-analyze for {{ reboot_type }}
-  become: yes
+  become: true
   become_method: sudo
   command: "systemctl is-system-running --wait"
   when:
     - reboot_limit_enable_systemd_analyze|bool
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Collect systemctl-analyze results for {{ reboot_type }}
-  become: yes
+  become: true
   become_method: sudo
   command: "systemd-analyze"
   register: systemd_analyze_cmd
   when:
     - reboot_limit_enable_systemd_analyze|bool
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Append systemctl-analyze output for {{ reboot_type }}
-  become: yes
+  become: true
   become_method: sudo
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
   lineinfile:
     path: "{{ reboot_type_analyze_file }}"
     line: "{{ systemd_analyze_cmd.stdout }}"
-    create: yes
+    create: true
   when:
     - reboot_limit_enable_systemd_analyze|bool
diff --git a/playbooks/roles/reboot-limit/tasks/install-deps/debian/main.yml b/playbooks/roles/reboot-limit/tasks/install-deps/debian/main.yml
index bb4a1130..3604e29a 100644
--- a/playbooks/roles/reboot-limit/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/install-deps/debian/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Install kexec-tools and dependencies for reboot-limit on Debian
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.apt:
     name:
       - kexec-tools
     state: present
-    update_cache: yes
-  tags: [ 'install', 'kexec' ]
+    update_cache: true
+  tags: ["install", "kexec"]
diff --git a/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml b/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml
index 6d6ded85..ee606cad 100644
--- a/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Install kexec-tools and dependencies for reboot-limit on Red Hat
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.yum:
     name:
       - kexec-tools
     state: present
-    update_cache: yes
-  tags: [ 'install', 'kexec' ]
+    update_cache: true
+  tags: ["install", "kexec"]
diff --git a/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml b/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml
index 07b812c0..65a6aff6 100644
--- a/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Install kexec-tools and dependencies for reboot-limit on SUSE
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.zypper:
     name:
       - kexec-tools
     state: present
-    update_cache: yes
-  tags: [ 'install', 'kexec' ]
+    update_cache: true
+  tags: ["install", "kexec"]
diff --git a/playbooks/roles/reboot-limit/tasks/main.yml b/playbooks/roles/reboot-limit/tasks/main.yml
index 5cd5e088..8280df19 100644
--- a/playbooks/roles/reboot-limit/tasks/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/main.yml
@@ -1,66 +1,66 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - include_role:
     name: create_data_partition
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
 
 - name: Install dependencies for reboot-limit
   include_tasks: install-deps/main.yml
-  tags: [ 'install', 'deps' ]
+  tags: ["install", "deps"]
 
 - name: Create the reboot-limit data collection directory for each host
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ reboot_limit_data }}/{{ ansible_ssh_host }}"
     state: directory
   when: not reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'install', 'first_run' ]
+  tags: ["install", "first_run"]
 
 - name: Create the regular reboot data collection directory for comparison mode
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ reboot_limit_data_regular }}/{{ ansible_ssh_host }}"
     state: directory
   when: reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'install', 'first_run' ]
+  tags: ["install", "first_run"]
 
 - name: Create the kexec reboot data collection directory for comparison mode
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ reboot_limit_data_kexec }}/{{ ansible_ssh_host }}"
     state: directory
   when: reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'install', 'first_run' ]
+  tags: ["install", "first_run"]
 
 - name: Set the file to collect systemctl-analyze results
-  become: yes
+  become: true
   become_method: sudo
   set_fact:
     reboot_limit_analyze_file: "{{ reboot_limit_data}}/{{ ansible_ssh_host }}/{{ reboot_limits_systemctl_analyze_log }}"
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Set the file to collect the reboot count
-  become: yes
+  become: true
   become_method: sudo
   set_fact:
     reboot_limit_count_file: "{{ reboot_limit_data}}/{{ ansible_ssh_host }}/{{ reboot_limits_count_log }}"
-  tags: [ 'read_count', 'vars' ]
+  tags: ["read_count", "vars"]
 
 - name: Delete old results directory files if a reset was called (single mode)
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ item }}"
@@ -71,40 +71,42 @@
   loop_control:
     label: "{{ item | regex_replace(reboot_limit_data | regex_escape()) | regex_replace('^/', '') }}"
   when: not reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'reset' ]
+  tags: ["reset"]
 
 - name: Delete old results directory files if a reset was called (comparison mode - regular)
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ reboot_limit_data_regular }}/{{ ansible_ssh_host }}"
     state: absent
   when: reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'reset' ]
+  tags: ["reset"]
 
 - name: Delete old results directory files if a reset was called (comparison mode - kexec)
-  become: yes
+  become: true
   become_method: sudo
   file:
     path: "{{ reboot_limit_data_kexec }}/{{ ansible_ssh_host }}"
     state: absent
   when: reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'reset' ]
+  tags: ["reset"]
 
 - name: Set the path where we collect our local reboot-limit results
   set_fact:
     reboot_limit_local_results_dir: "../workflows/demos/reboot-limit/results"
-  tags: [ 'vars' ]
+  tags: ["vars"]
 
 - name: Clean up our localhost results directory and files as we are on boot number {{ reboot_limit_count }}
-  local_action: file path="{{ reboot_limit_local_results_dir }}/" state=absent
+  file: path="{{ reboot_limit_local_results_dir }}/" state=absent
+  delegate_to: localhost
   run_once: true
-  tags: [ 'clean_local_results', 'first_run' ]
+  tags: ["clean_local_results", "first_run"]
 
 - name: Create the local results directory
-  local_action: file path="{{ reboot_limit_local_results_dir }}/" state=directory
+  file: path="{{ reboot_limit_local_results_dir }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'first_run' ]
+  tags: ["first_run"]
 
 - name: Run the reboot loop (single mode)
   include_tasks: do-reboot.yml
@@ -112,7 +114,7 @@
   loop_control:
     loop_var: reboot_num
   when: not reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Run the reboot comparison loop (both regular and kexec)
   include_tasks: do-reboot-compare.yml
@@ -120,17 +122,17 @@
   loop_control:
     loop_var: reboot_num
   when: reboot_limit_compare_both_enabled|default(false)|bool
-  tags: [ 'run_tests' ]
+  tags: ["run_tests"]
 
 - name: Copy the latest results over when we're done (single mode)
-  tags: [ 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   fetch:
     src: "{{ item }}"
     dest: "{{ reboot_limit_local_results_dir }}/{{ item | regex_replace(reboot_limit_data | regex_escape()) | regex_replace('^/', '') }}"
-    flat: yes
+    flat: true
   with_items:
     - "{{ reboot_limit_analyze_file }}"
     - "{{ reboot_limit_count_file }}"
@@ -139,28 +141,28 @@
   when: not reboot_limit_compare_both_enabled|default(false)|bool
 
 - name: Copy the regular reboot results in comparison mode
-  tags: [ 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   fetch:
     src: "{{ reboot_limit_data_regular }}/{{ ansible_ssh_host }}/{{ item }}"
     dest: "{{ reboot_limit_local_results_dir }}/regular/{{ ansible_ssh_host }}/{{ item }}"
-    flat: yes
+    flat: true
   with_items:
     - "{{ reboot_limits_systemctl_analyze_log }}"
     - "{{ reboot_limits_count_log }}"
   when: reboot_limit_compare_both_enabled|default(false)|bool
 
 - name: Copy the kexec reboot results in comparison mode
-  tags: [ 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   fetch:
     src: "{{ reboot_limit_data_kexec }}/{{ ansible_ssh_host }}/{{ item }}"
     dest: "{{ reboot_limit_local_results_dir }}/kexec/{{ ansible_ssh_host }}/{{ item }}"
-    flat: yes
+    flat: true
   with_items:
     - "{{ reboot_limits_systemctl_analyze_log }}"
     - "{{ reboot_limits_count_log }}"
diff --git a/playbooks/roles/selftests/defaults/main.yml b/playbooks/roles/selftests/defaults/main.yml
index dc5982fb..45cb5022 100644
--- a/playbooks/roles/selftests/defaults/main.yml
+++ b/playbooks/roles/selftests/defaults/main.yml
@@ -8,21 +8,21 @@ target_linux_dir_path: "{{ data_path }}/{{ target_linux_tree }}"
 bootlinux_9p_host_path: "/home/user/linux/"
 
 # These are selftests specific
-kdevops_workflow_enable_selftests: False
-kdevops_run_selftests: False
-run_tests_on_failures: False
-selftests_skip_run: False
-selftests_skip_reboot: False
-selftests_build_radix_tree: False
-selftests_build_selftests_dir: False
+kdevops_workflow_enable_selftests: false
+kdevops_run_selftests: false
+run_tests_on_failures: false
+selftests_skip_run: false
+selftests_skip_reboot: false
+selftests_build_radix_tree: false
+selftests_build_selftests_dir: false
 selftests_radix_tree_dir: "tools/testing/radix-tree"
 
-selftests_section_firmware: False
-selftests_section_kmod: False
-selftests_section_maple: False
-selftests_section_sysctl: False
-selftests_section_xarray: False
-selftests_section_vma: False
+selftests_section_firmware: false
+selftests_section_kmod: false
+selftests_section_maple: false
+selftests_section_sysctl: false
+selftests_section_xarray: false
+selftests_section_vma: false
 
 selftests_ksrc: "tools/testing/selftests/"
 selftests_data: "{{ target_linux_dir_path }}/{{ selftests_ksrc }}"
@@ -31,9 +31,9 @@ selftests_data_target: "{{ data_path }}/selftests/"
 selftests_workdir: "{{ selftests_data_target }}/kselftest/kselftest_install/"
 selftest_timeout_argument: ""
 
-selftest_userspace: False
-selftest_kernelspace: False
+selftest_userspace: false
+selftest_kernelspace: false
 
-selftest_xarray: False
-selftest_maple: False
-selftest_vma: False
+selftest_xarray: false
+selftest_maple: false
+selftest_vma: false
diff --git a/playbooks/roles/selftests/tasks/install-deps/debian/main.yml b/playbooks/roles/selftests/tasks/install-deps/debian/main.yml
index 1cbee328..7fa19e20 100644
--- a/playbooks/roles/selftests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/debian/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: deps
 
 - name: Install every single selftest build dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -22,5 +22,5 @@
       - make
       - linux-perf
     state: present
-    update_cache: yes
-  tags: [ 'selftests', 'deps' ]
+    update_cache: true
+  tags: ["selftests", "deps"]
diff --git a/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml b/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml
index 3b230e2c..bca86f41 100644
--- a/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml
@@ -1,9 +1,9 @@
 ---
 - name: Install every single selftest build dependencies
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   vars:
     packages:
diff --git a/playbooks/roles/selftests/tasks/install-deps/suse/main.yml b/playbooks/roles/selftests/tasks/install-deps/suse/main.yml
index 8410a10c..ceb1806b 100644
--- a/playbooks/roles/selftests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/suse/main.yml
@@ -25,24 +25,24 @@
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle12sp5: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle15sp2: False
-    is_sle15sp3: False
-    is_sle15sp4: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle12sp5: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle15sp2: false
+    is_sle15sp3: false
+    is_sle15sp4: false
   when:
     - not is_sle|bool
 
 - name: Install every single selftest build dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/selftests/tasks/main.yml b/playbooks/roles/selftests/tasks/main.yml
index 1e1fe8c9..86bb9548 100644
--- a/playbooks/roles/selftests/tasks/main.yml
+++ b/playbooks/roles/selftests/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -18,9 +18,10 @@
   include_tasks: install-deps/main.yml
 
 - name: Install dependencies to build Linux selftests on host
-  tags: [ 'deps' ]
+  tags: ["deps"]
   run_once: true
-  local_action: import_tasks install-deps/main.yml
+  import_tasks: install-deps/main.yml
+  delegate_to: localhost
   when:
     - bootlinux_9p|bool
 
@@ -33,18 +34,18 @@
     selftest_xarray: "{{ is_selftest_xarray }}"
     selftest_maple: "{{ is_selftest_maple }}"
     selftest_vma: "{{ is_selftest_vma }}"
-  tags: ['vars']
+  tags: ["vars"]
 
 - name: Check if this node is in charge of userspace tests
   vars:
   set_fact:
     selftest_userspace: "{{ selftest_xarray or selftest_maple or selftest_vma }}"
-  tags: ['vars']
+  tags: ["vars"]
 
 - name: Check if this node is in charge of running kernel tests
   set_fact:
     selftest_kernelspace: "{{ not selftest_userspace }}"
-  tags: ['vars']
+  tags: ["vars"]
 
 - name: Debug kernelspace / userspace tests
   debug:
@@ -55,30 +56,30 @@
       - selftest_vma: {{ selftest_vma }}
       - selftest_kernelspace: {{ selftest_kernelspace }}
       - selftest_userspace: {{ selftest_userspace }}
-  tags: ['run_tests']
+  tags: ["run_tests"]
 
 - name: Fail if both userspace and kernelspace are True
   fail:
     msg: "Both selftest_userspace and selftest_kernelspace are True for host {{ ansible_host }}. This is not expected."
   when: selftest_userspace and selftest_kernelspace
-  tags: ['vars']
+  tags: ["vars"]
 
 - name: Fail if both userspace and kernelspace are False
   fail:
     msg: "Both selftest_userspace and selftest_kernelspace are False for host {{ ansible_host }}. This is not expected."
   when: not selftest_userspace and not selftest_kernelspace
-  tags: ['vars']
+  tags: ["vars"]
 
 - name: Fail if selftest_kernelspace is true on incorrect host
   fail:
     msg: "Both selftest_userspace and selftest_kernelspace are True for host {{ ansible_host }}. This is not expected."
   when: (selftest_kernelspace and (selftest_xarray or selftest_maple or selftest_vma))
-  tags: ['vars']
+  tags: ["vars"]
 
 - name: Remove /lib/udev/rules.d/50-firmware.rules
-  tags: [ 'selftests', 'deps' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "deps"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "/lib/udev/rules.d/50-firmware.rules"
@@ -87,40 +88,41 @@
     - selftests_section_firmware|bool
 
 - name: Create /lib/firmware directory
-  tags: [ 'selftests', 'deps' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "deps"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "/lib/firmware"
     state: directory
-    mode: '0755'
+    mode: "0755"
   when:
     - selftests_section_firmware|bool
 
 - include_role:
     name: create_data_partition
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
 
 - name: Get nproc
   command: "{{ num_jobs }}"
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   register: nproc
 
 - name: Get nproc on host
   command: "{{ num_jobs }}"
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   register: nproc_host
   when:
     - bootlinux_9p|bool
 
 - name: Set the target selftest
   vars:
-    all_tests: "{{ play_hosts | join(' ') | regex_replace('selftests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
+    all_tests: "{{ play_hosts | join(' ') | regex_replace('selftests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_')
+      }}"
   set_fact:
     target_selftest: "{{ ansible_host | regex_replace('selftests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
     all_selftest_targets: "{{ all_tests | regex_replace('maple') | regex_replace('xarray') }}"
-  tags: [ 'selftests', 'vars' ]
+  tags: ["selftests", "vars"]
 
 # We split building selftestss for two reasons because we can have the Linux
 # build out of the node / guest
@@ -129,7 +131,7 @@
 # 1) building selftests
 # 2) installing built selftests
 - name: Build selftests
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   make:
     chdir: "{{ selftests_data }}"
     jobs: "{{ nproc.stdout }}"
@@ -141,7 +143,7 @@
     - selftests_build_selftests_dir|bool
 
 - name: Build selftests
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   make:
     chdir: "{{ selftests_data }}"
     jobs: "{{ nproc.stdout }}"
@@ -153,7 +155,7 @@
     - selftests_build_selftests_dir|bool
 
 - name: Build radix tree tools/testing/radix-tree
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   make:
     chdir: "{{ target_linux_dir_path }}/tools/testing/radix-tree"
     jobs: "{{ nproc.stdout }}"
@@ -168,7 +170,7 @@
 # Note that some targets will not fail with an error if dependencies are not
 # met.. so you should ensure that build-deps are met before adding a new target
 - name: Build selftests on host on {{ selftests_data_9p }}
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   make:
     chdir: "{{ selftests_data_9p }}"
     jobs: "{{ nproc_host.stdout }}"
@@ -182,7 +184,7 @@
     - selftests_build_selftests_dir|bool
 
 - name: Build radix tree tools/testing/radix-tree on host
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   command: "make -j{{ nproc.stdout }}"
   args:
     chdir: "{{ bootlinux_9p_host_path }}/tools/testing/radix-tree"
@@ -193,7 +195,7 @@
     - selftests_build_radix_tree|bool
 
 - name: Build VMA tools/testing/vma
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   make:
     chdir: "{{ target_linux_dir_path }}/tools/testing/vma"
     jobs: "{{ nproc.stdout }}"
@@ -202,7 +204,7 @@
     - selftest_vma|bool
 
 - name: Build VMA tools/testing/vma on host
-  tags: [ 'selftests', 'build' ]
+  tags: ["selftests", "build"]
   command: "make -j{{ nproc.stdout }}"
   args:
     chdir: "{{ bootlinux_9p_host_path }}/tools/testing/vma"
@@ -216,10 +218,10 @@
 # 9p the path will be available and everything will have been built
 # for us.
 - name: Install selftests
-  tags: [ 'selftests', 'build' ]
-  become: yes
+  tags: ["selftests", "build"]
+  become: true
   become_method: sudo
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   make:
     chdir: "{{ selftests_data }}"
     jobs: "{{ nproc.stdout }}"
@@ -231,8 +233,8 @@
     - selftest_kernelspace|bool
 
 - name: Reboot system before our test so we know everything is sane
-  tags: [ 'selftests', 'run_tests', 'reboot' ]
-  become: yes
+  tags: ["selftests", "run_tests", "reboot"]
+  become: true
   become_method: sudo
   reboot:
     post_reboot_delay: 10
@@ -242,17 +244,17 @@
 - name: Set the path to selftests workflow
   set_fact:
     selftests_workflow_target: "../workflows/selftests/"
-  tags: [ 'selftests', 'run_tests', 'copy_results', 'prior_run', 'print_results' , 'augment_expunge_list' ]
+  tags: ["selftests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Get used target kernel version
-  tags: [ 'selftests', 'vars', 'copy_results', 'augment_expunge_list' ]
+  tags: ["selftests", "vars", "copy_results", "augment_expunge_list"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
-  tags: [ 'selftests', 'vars', 'copy_results', 'augment_expunge_list' ]
+  tags: ["selftests", "vars", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Set the path where we collect our selftests results
@@ -260,46 +262,47 @@
     selftests_results_full_path: "{{ topdir_path }}/workflows/selftests/results/"
     selftests_workflow_dir: "../workflows/selftests"
     selftests_results_target: "../workflows/selftests/results/last-run/{{ last_kernel }}"
-  tags: [ 'selftests', 'run_tests', 'copy_results', 'prior_run', 'print_results' , 'augment_expunge_list', 'vars' ]
+  tags: ["selftests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list", "vars"]
 
 - name: Print uname for each host
-  tags: [ 'selftests', 'run_tests' ]
+  tags: ["selftests", "run_tests"]
   debug: var=ansible_kernel
 
 - name: Load configfs module
-  tags: [ 'selftests', 'run_tests', 'configfs' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests", "configfs"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "modprobe configfs"
   when:
     - kdevops_run_selftests|bool
 
 - name: Clear out old results directory on target hosts
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     state: absent
     path: "{{ selftests_data_target }}/results/"
-  tags: [ 'selftests', 'run_tests', 'clean_results' ]
+  tags: ["selftests", "run_tests", "clean_results"]
 
 - name: Hint to watchdog tests are about to kick off
-  local_action: file path="{{ selftests_workflow_target }}/.begin" state=touch
-  tags: [ 'selftests', 'run_tests' ]
+  file: path="{{ selftests_workflow_target }}/.begin" state=touch
+  delegate_to: localhost
+  tags: ["selftests", "run_tests"]
   when:
     - kdevops_run_selftests|bool
   run_once: true
 
 - name: Enable low-level messages on console
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: sysctl kernel.printk="8 8 1 7"
 
 - name: Stop selftests if we're debbugging
   ansible.builtin.meta: end_play
-  tags: [ 'selftests', 'run_tests', 'vars'  ]
+  tags: ["selftests", "run_tests", "vars"]
   when:
     - selftests_skip_run|bool
 
@@ -308,7 +311,7 @@
     selftest_name: "{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') }}"
   set_fact:
     selftest_timeout_variable: "{{ 'selftests_section_' + selftest_name + '_timeout' }}"
-  tags: ['vars' ]
+  tags: ["vars"]
 
 - name: Check if selftest timeout variable exists and is not empty
   set_fact:
@@ -316,19 +319,19 @@
   when:
     - selftest_kernelspace|bool
     - lookup('vars', selftest_timeout_variable, default='') != ""
-  tags: ['vars']
+  tags: ["vars"]
 
 - name: Log timeout argument used
   debug:
     msg: "{{ ansible_host }} could use {{ selftest_timeout_variable }} : using timeout argument {{ selftest_timeout_argument }}"
-  tags: ['vars']
+  tags: ["vars"]
   when:
     - selftest_kernelspace|bool
 
 - name: Run kernel-side tests for special tests not in selftests
-  tags: [ 'selftests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ command_to_run }}"
   args:
@@ -350,9 +353,9 @@
       {%- endif -%}
 
 - name: Run userspace selftests
-  tags: [ 'selftests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "{{ command_to_run }}"
   args:
@@ -380,9 +383,9 @@
       {%- endif -%}
 
 - name: Run kernelspace selftests
-  tags: [ 'selftests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: "./run_kselftest.sh -s {{ selftest_timeout_argument }}"
   args:
@@ -393,63 +396,67 @@
     - selftest_kernelspace|bool
 
 - name: Create empty directory for log collection for non-standard tests
-  tags: [ 'selftests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ selftests_workdir }}"
     state: directory
-    mode: '0755'
+    mode: "0755"
     owner: root
     group: root
 
 - name: Remove watchdog hint that tests have started
-  local_action: file path="{{ selftests_workflow_target }}/.begin" state=absent
-  tags: [ 'selftests', 'run_tests' ]
+  file: path="{{ selftests_workflow_target }}/.begin" state=absent
+  delegate_to: localhost
+  tags: ["selftests", "run_tests"]
   when:
     - kdevops_run_selftests|bool
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  local_action: file path="{{ selftests_results_target }}/{{ item }}" state=absent
+  file: path="{{ selftests_results_target }}/{{ item }}" state=absent
+  delegate_to: localhost
   with_items:
     - "last-run"
   loop_control:
     label: "{{ item }}"
   run_once: true
-  tags: [ 'selftests', 'copy_results', 'clean_local_results' ]
+  tags: ["selftests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  local_action: file path="{{ selftests_results_target }}/" state=directory
+  file: path="{{ selftests_results_target }}/" state=directory
+  delegate_to: localhost
   run_once: true
-  tags: [ 'selftests', 'copy_results', 'clean_local_results' ]
+  tags: ["selftests", "copy_results", "clean_local_results"]
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ selftests_results_target }}/last-kernel.txt"
-  tags: [ 'selftests', 'copy_results', 'augment_expunge_list' ]
+  shell: echo {{ last_kernel }} > {{ selftests_results_target }}/last-kernel.txt
+  delegate_to: localhost
+  tags: ["selftests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Gather kernel logs from each node
-  tags: [ 'selftests', 'copy_results' ]
-  become: yes
+  tags: ["selftests", "copy_results"]
+  become: true
   become_method: sudo
   command: journalctl -k
   register: journal_cmd
 
 - name: Save kernel logs to local file per node
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   copy:
     content: "{{ journal_cmd.stdout }}"
     dest: "{{ selftests_workdir }}/dmesg.log"
-  tags: [ 'selftests', 'copy_results' ]
+  tags: ["selftests", "copy_results"]
 
 - name: Save selftest TAP output
-  tags: [ 'selftests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   copy:
     content: "{{ selftests_out.stdout_lines|join('\n') }}"
@@ -459,9 +466,9 @@
     - selftest_kernelspace|bool
 
 - name: Save userspace test output
-  tags: [ 'selftests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   copy:
     content: "{{ selftests_userspace_out.stdout_lines|join('\n') }}"
@@ -470,9 +477,9 @@
     - selftest_userspace|bool
 
 - name: Save module load test output
-  tags: [ 'selftests', 'run_tests' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "run_tests"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   copy:
     content: "{{ selftests_module_out.stdout_lines|join('\n') }}"
@@ -482,13 +489,13 @@
     - not selftest_vma|bool
 
 - name: Look for the test output logs files on {{ selftests_workdir }}
-  tags: [ 'selftests', 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   find:
     paths: "{{ selftests_workdir }}"
-    recurse: yes
+    recurse: true
     patterns:
       - "output.log"
       - "kselftest-list.txt"
@@ -499,16 +506,16 @@
   register: output_log_files
 
 - name: Copy the output files from {{ selftests_workdir }}
-  tags: [ 'selftests', 'copy_results' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["selftests", "copy_results"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   vars:
     item_with_target: "{{ target_selftest }}.{{ item.path | basename }}"
   fetch:
     src: "{{ item.path }}"
     dest: "{{ selftests_results_target }}/{{ item_with_target }}"
-    flat: yes
+    flat: true
   with_items: "{{ output_log_files.files }}"
   loop_control:
     label: "Copying {{ item_with_target }} ..."
@@ -516,7 +523,7 @@
     - output_log_files.matched > 0
 
 - name: Find all *.tap.log files in the selftests_results_target directory
-  tags: [ 'selftests', 'check_results' ]
+  tags: ["selftests", "check_results"]
   delegate_to: localhost
   find:
     paths: "{{ selftests_results_target }}"
@@ -524,7 +531,7 @@
   register: tap_log_files
 
 - name: Read each tap.log file
-  tags: [ 'selftests', 'check_results' ]
+  tags: ["selftests", "check_results"]
   delegate_to: localhost
   slurp:
     src: "{{ item.path }}"
@@ -534,13 +541,13 @@
     label: "Reading {{ item.path }}"
 
 - name: Initialize tap_failures as an empty list
-  tags: [ 'selftests', 'check_results' ]
+  tags: ["selftests", "check_results"]
   delegate_to: localhost
   set_fact:
     tap_failures: []
 
 - name: Read each tap.log file
-  tags: [ 'selftests', 'check_results' ]
+  tags: ["selftests", "check_results"]
   delegate_to: localhost
   slurp:
     src: "{{ item.path }}"
@@ -550,7 +557,7 @@
     label: "Reading {{ item.path }}"
 
 - name: Check for TAP failures in the content of each tap.log
-  tags: [ 'selftests', 'check_results' ]
+  tags: ["selftests", "check_results"]
   delegate_to: localhost
   set_fact:
     tap_failures: "{{ tap_failures + [{'file': item.item.path, 'content': item.content | b64decode | string}] }}"
@@ -560,7 +567,7 @@
     label: "Checking for failures in {{ item.item.path }}"
 
 - name: Fail if TAP failures are found
-  tags: [ 'selftests', 'check_results' ]
+  tags: ["selftests", "check_results"]
   delegate_to: localhost
   fail:
     msg: |
diff --git a/playbooks/roles/siw/tasks/main.yml b/playbooks/roles/siw/tasks/main.yml
index be5aeb70..16f074f0 100644
--- a/playbooks/roles/siw/tasks/main.yml
+++ b/playbooks/roles/siw/tasks/main.yml
@@ -1,15 +1,16 @@
+---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
 
 - name: Insert udev rule to create siw device on the target host
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.template:
     src: "udev-rule.j2"
@@ -20,6 +21,6 @@
     force: false
 
 - name: Force the target host to reload its udev ruleset
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.shell: "udevadm control --reload && udevadm trigger"
diff --git a/playbooks/roles/smbd/tasks/install-deps/debian/main.yml b/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
index beb1acdc..e32a052c 100644
--- a/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ansible_distribution}}.yml'
-        - '{{ansible_os_family}}.yml'
+        - "{{ansible_distribution}}.yml"
+        - "{{ansible_os_family}}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ smbd_share_fstype }}"
   set_fact:
@@ -22,10 +22,10 @@
     - fsprogs
 
 - name: Install smbd dependencies
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name: "{{ smbd_packages }}"
     state: present
-    update_cache: yes
-  tags: [ 'deps' ]
+    update_cache: true
+  tags: ["deps"]
diff --git a/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml b/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
index 92baaee3..f5410bd3 100644
--- a/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ansible_distribution}}.yml'
-        - '{{ansible_os_family}}.yml'
+        - "{{ansible_distribution}}.yml"
+        - "{{ansible_os_family}}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ smbd_share_fstype }}"
   set_fact:
@@ -22,10 +22,10 @@
     - fsprogs
 
 - name: Install smbd dependencies
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ smbd_packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/smbd/tasks/install-deps/suse/main.yml b/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
index e90fe894..112e3962 100644
--- a/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
@@ -4,11 +4,11 @@
   vars:
     params:
       files:
-        - '{{ansible_distribution}}.yml'
-        - '{{ansible_os_family}}.yml'
+        - "{{ansible_distribution}}.yml"
+        - "{{ansible_os_family}}.yml"
         - default.yml
       paths:
-        - 'vars'
+        - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ smbd_share_fstype }}"
   set_fact:
@@ -22,7 +22,7 @@
     - fsprogs
 
 - name: Install smbd dependencies
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name: "{{ smbd_packages }}"
diff --git a/playbooks/roles/smbd/tasks/main.yml b/playbooks/roles/smbd/tasks/main.yml
index 042c3085..aee5b04b 100644
--- a/playbooks/roles/smbd/tasks/main.yml
+++ b/playbooks/roles/smbd/tasks/main.yml
@@ -12,15 +12,15 @@
   when: ansible_os_family == 'RedHat'
 
 - name: Create smb.conf
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.template:
     src: smb.conf.j2
     dest: /etc/samba/smb.conf
     owner: root
     group: root
-    mode: 0644
+    mode: "0644"
 
 - name: Set up a volume group on local block devices
   ansible.builtin.include_role:
@@ -29,23 +29,23 @@
     volume_group_name: "shares"
 
 - name: Create {{ smbd_share_path }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ smbd_share_path }}"
     state: directory
-    mode: 0755
+    mode: "0755"
 
 - name: Test whether SELinux is enabled
   command: /usr/sbin/selinuxenabled
   register: selinux_status
-  changed_when: False
-  failed_when: False
+  changed_when: false
+  failed_when: false
 
 - name: Set samba_export_all_rw selinux boolean
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.posix.seboolean:
     name: samba_export_all_rw
@@ -57,8 +57,8 @@
   ansible.builtin.service_facts:
 
 - name: Allow access to samba in firewalld
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.posix.firewalld:
     service: samba
@@ -68,8 +68,8 @@
   when: '"firewalld.service" in ansible_facts.services'
 
 - name: Start and enable samba systemd service
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.systemd:
     name: smb
@@ -77,8 +77,8 @@
     state: started
 
 - name: Set SMB password for root
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.shell:
     cmd: printf "{{ smb_root_pw }}\n{{ smb_root_pw }}" | smbpasswd -a root -s
diff --git a/playbooks/roles/smbd_add_share/tasks/main.yml b/playbooks/roles/smbd_add_share/tasks/main.yml
index 4958d6a9..ba815be0 100644
--- a/playbooks/roles/smbd_add_share/tasks/main.yml
+++ b/playbooks/roles/smbd_add_share/tasks/main.yml
@@ -1,7 +1,7 @@
 ---
 - name: Create a new LVM partition
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   community.general.lvol:
@@ -12,8 +12,8 @@
     - share_fstype != "tmpfs"
 
 - name: Format new volume for {{ share_fstype }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   filesystem:
@@ -23,11 +23,11 @@
     - share_fstype != "tmpfs"
 
 - name: Mount volume under {{ smbd_share_path }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  throttle: 1  # running this in parallel can clobber fstab changes
+  throttle: 1 # running this in parallel can clobber fstab changes
   mount:
     path: "{{ smbd_share_path }}/{{ share_volname }}"
     src: "/dev/shares/{{ share_volname }}"
@@ -37,11 +37,11 @@
     - share_fstype != "tmpfs"
 
 - name: Mount tmpfs under {{ smbd_share_path }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  throttle: 1  # running this in parallel can clobber fstab changes
+  throttle: 1 # running this in parallel can clobber fstab changes
   mount:
     path: "{{ smbd_share_path }}/{{ share_volname }}"
     src: "tmpfs"
@@ -51,8 +51,8 @@
     - share_fstype == "tmpfs"
 
 - name: Ensure {{ share_volname }} has correct permissions
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   file:
@@ -66,23 +66,23 @@
   command: /usr/sbin/selinuxenabled
   register: selinux_status
   delegate_to: "{{ server_host }}"
-  changed_when: False
-  failed_when: False
+  changed_when: false
+  failed_when: false
 
 - name: Fix SELinux file context under new mount
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   command: /usr/sbin/restorecon -R "{{ smbd_share_path }}/{{ share_volname }}"
   when: selinux_status.rc == 0
 
 - name: Create an SMB share for the new fs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  throttle: 1  # running this in parallel can clobber smb.conf changes
+  throttle: 1 # running this in parallel can clobber smb.conf changes
   ansible.builtin.blockinfile:
     dest: /etc/samba/smb.conf
     block: "{{ lookup('template', 'share.j2') }}"
@@ -92,12 +92,11 @@
     insertafter: "EOF"
 
 - name: Reload the smb services
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
   ansible.builtin.systemd_service:
-    name: smb.service 
+    name: smb.service
     enabled: true
     state: reloaded
-
diff --git a/playbooks/roles/steady_state/defaults/main.yml b/playbooks/roles/steady_state/defaults/main.yml
index d38ba2b5..11b2bae2 100644
--- a/playbooks/roles/steady_state/defaults/main.yml
+++ b/playbooks/roles/steady_state/defaults/main.yml
@@ -14,10 +14,10 @@ ssd_steady_state_bw_mean_limit: "20%"
 ssd_steady_state_bw_mean_dur: "2h"
 ssd_steady_state_bw_slope: "10%"
 ssd_steady_state_bw_slope_dur: "2h"
-kdevops_run_ssd_steady_state: False
+kdevops_run_ssd_steady_state: false
 
 # Prefill configuration defaults
-ssd_steady_state_prefill_verbose: False
+ssd_steady_state_prefill_verbose: false
 ssd_steady_state_prefill_max_size: ""
 ssd_steady_state_prefill_physical_bs: ""
 ssd_steady_state_prefill_ioengine: "io_uring"
diff --git a/playbooks/roles/steady_state/tasks/main.yaml b/playbooks/roles/steady_state/tasks/main.yaml
index ba76e715..bde1abfe 100644
--- a/playbooks/roles/steady_state/tasks/main.yaml
+++ b/playbooks/roles/steady_state/tasks/main.yaml
@@ -13,62 +13,62 @@
 
 - include_role:
     name: create_data_partition
-  tags: [ 'data_partition' ]
+  tags: ["data_partition"]
 
 - name: Ensure fio is installed
-  become: yes
+  become: true
   package:
     name: fio
     state: present
 
 - name: Ensure steady state directory exists
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.file:
     path: "{{ steady_state_data }}"
     state: directory
-  tags: ['setup']
+  tags: ["setup"]
 
 - name: Generate fio steady state configs
-  become: yes
+  become: true
   become_method: sudo
   template:
     src: "{{ item }}.j2"
     dest: "{{ steady_state_data }}/{{ item }}"
-    mode: '0644'
+    mode: "0644"
   loop:
     - ss_iops.ini
     - ss_bw.ini
-  tags: ['setup']
+  tags: ["setup"]
 
 - name: Resolve real path of target block device
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command: realpath {{ ssd_steady_state_device }}
   register: real_device_path
   when: kdevops_run_ssd_steady_state | bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Inform user of target block device for steady_state_device
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.debug:
     msg:
       - "Target device is {{ ssd_steady_state_device }} real device is: {{ real_device_path.stdout }}"
   when: kdevops_run_ssd_steady_state | bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Check if target is a block device
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.stat:
     path: "{{ real_device_path.stdout }}"
   register: device_stat
   when: kdevops_run_ssd_steady_state | bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Fail if target is not a block device
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.fail:
     msg: "Target {{ ssd_steady_state_device }} must be a block device"
@@ -76,27 +76,27 @@
     - kdevops_run_ssd_steady_state | bool
     - device_stat.stat.exists | default(false)
     - not device_stat.stat.isblk | default(false)
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Get device basename from resolved symlink
-  become: yes
+  become: true
   become_method: sudo
   set_fact:
     device_basename: "{{ real_device_path.stdout | basename }}"
   when: kdevops_run_ssd_steady_state | bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Inform user of short basename of target device
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.debug:
     msg:
       - "Target device base name is {{ device_basename }}"
   when: kdevops_run_ssd_steady_state | bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Read block device properties from sysfs
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.slurp:
     src: "{{ item.path }}"
@@ -105,19 +105,19 @@
     - { path: "/sys/block/{{ device_basename }}/queue/optimal_io_size", var: "device_optimal_io_raw" }
   register: device_sysfs_read
   when: kdevops_run_ssd_steady_state | bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Get device capacity
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command: /usr/sbin/blockdev --getsize64 {{ ssd_steady_state_device }}
   register: device_capacity_raw
   changed_when: false
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Set block device properties as facts
-  become: yes
+  become: true
   become_method: sudo
   set_fact:
     device_physical_block_size: >-
@@ -134,10 +134,10 @@
       }}
     device_capacity: "{{ device_capacity_raw.stdout | int }}"
   when: kdevops_run_ssd_steady_state | bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Calculate effective configuration values
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     effective_physical_bs: "{{ ssd_steady_state_prefill_physical_bs | default(device_physical_block_size, true) | int }}"
@@ -152,10 +152,10 @@
       {% endif %}
     effective_jobs: "{{ ssd_steady_state_numjobs | default(ansible_processor_vcpus, true) | int }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Fix syntax for effective_blocksize
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     effective_blocksize: "{{ effective_blocksize | trim | int }}"
@@ -165,106 +165,106 @@
     msg: "device_optimal_io_size={{ device_optimal_io_size }} ({{ device_optimal_io_size | type_debug }})"
 
 - name: Validate capacity alignment to physical block size
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.fail:
     msg: "Device capacity {{ effective_max_size }} not aligned to physical block size {{ effective_physical_bs }}"
   when:
     - kdevops_run_ssd_steady_state|bool
     - (effective_max_size | int) % (effective_physical_bs | int) != 0
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Validate blocksize alignment to physical block size
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.fail:
     msg: "Block size {{ effective_blocksize }} not aligned to physical block size {{ effective_physical_bs }}"
   when:
     - kdevops_run_ssd_steady_state|bool
     - (effective_blocksize | int) % (effective_physical_bs | int) != 0
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Calculate prefill job distribution
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     aligned_pbs_blocks: "{{ (effective_max_size | int) // (effective_physical_bs | int) }}"
     aligned_bs_per_block: "{{ (effective_blocksize | int) // (effective_physical_bs | int) }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Calculate aligned blocks and job distribution
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     aligned_blocks: "{{ aligned_pbs_blocks | int // aligned_bs_per_block | int }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Calculate job alignment
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     blocks_per_job_remainder: "{{ aligned_blocks | int % effective_jobs | int }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Set aligned job distribution
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     aligned_jobs: "{{ effective_jobs if blocks_per_job_remainder == 0 else (effective_jobs | int - 1) }}"
     unaligned_jobs: "{{ 0 if blocks_per_job_remainder == 0 else 1 }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Set aligned blocks per job
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     aligned_blocks_per_job: "{{ aligned_blocks | int // aligned_jobs | int if blocks_per_job_remainder != 0 else aligned_blocks | int // effective_jobs | int }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Calculate byte distribution for jobs
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     aligned_block_bytes: "{{ aligned_blocks_per_job | int * effective_blocksize | int }}"
     total_aligned_block_bytes: "{{ aligned_blocks_per_job | int * effective_blocksize | int * aligned_jobs | int }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Calculate remainder bytes for unaligned job
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.set_fact:
     remainder_block_bytes: "{{ effective_max_size | int - total_aligned_block_bytes | int }}"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Validate job byte alignment to blocksize
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.fail:
     msg: "Aligned job bytes {{ aligned_block_bytes }} not aligned to blocksize {{ effective_blocksize }}"
   when:
     - kdevops_run_ssd_steady_state|bool
     - (aligned_block_bytes | int) % (effective_blocksize | int) != 0
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Validate job byte alignment to physical block size
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.fail:
     msg: "Aligned job bytes {{ aligned_block_bytes }} not aligned to physical block size {{ effective_physical_bs }}"
   when:
     - kdevops_run_ssd_steady_state|bool
     - (aligned_block_bytes | int) % (effective_physical_bs | int) != 0
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Validate remainder alignment to physical block size
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.fail:
     msg: "Remainder bytes {{ remainder_block_bytes }} not aligned to physical block size {{ effective_physical_bs }}"
@@ -272,10 +272,10 @@
     - kdevops_run_ssd_steady_state|bool
     - remainder_block_bytes | int != 0
     - (remainder_block_bytes | int) % (effective_physical_bs | int) != 0
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Run main prefill fio job for aligned data
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command: >-
     fio --filename={{ ssd_steady_state_device }}
@@ -293,10 +293,10 @@
   when:
     - kdevops_run_ssd_steady_state|bool
     - aligned_jobs | int > 0
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Run remainder prefill fio job for unaligned data
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command: >-
     fio --filename={{ ssd_steady_state_device }}
@@ -313,10 +313,10 @@
     - kdevops_run_ssd_steady_state|bool
     - unaligned_jobs | int > 0
     - remainder_block_bytes | int > 0
-  tags: ['prefill']
+  tags: ["prefill"]
 
 - name: Run fio steady state for iops
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command: >-
     fio {{ steady_state_data }}/ss_iops.ini
@@ -325,10 +325,10 @@
     --output-format=json+
     --output={{ steady_state_data }}/ss_iops.json
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['steady_state']
+  tags: ["steady_state"]
 
 - name: Run fio steady state for bw
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.command: >-
     fio {{ steady_state_data }}/ss_bw.ini
@@ -337,16 +337,16 @@
     --output-format=json+
     --output={{ steady_state_data }}/ss_bw.json
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['steady_state']
+  tags: ["steady_state"]
 
 - name: Create local results directory
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ topdir_path }}/workflows/steady_state/results/{{ inventory_hostname }}/"
     state: directory
-    mode: '0755'
+    mode: "0755"
   run_once: false
-  tags: ['results']
+  tags: ["results"]
 
 - name: Copy steady state results to controller
   delegate_to: localhost
@@ -358,4 +358,4 @@
     rsync_opts:
       - "--ignore-existing"
   when: kdevops_run_ssd_steady_state|bool
-  tags: ['results']
+  tags: ["results"]
diff --git a/playbooks/roles/sysbench/defaults/main.yml b/playbooks/roles/sysbench/defaults/main.yml
index ea198adf..cf5e61fb 100644
--- a/playbooks/roles/sysbench/defaults/main.yml
+++ b/playbooks/roles/sysbench/defaults/main.yml
@@ -2,7 +2,7 @@
 sysbench_db_type: "mysql"
 sysbench_db_type_mysql: false
 sysbench_docker: false
-sysbench_type_mysql_docker: False
+sysbench_type_mysql_docker: false
 sysbench_disk_setup_env: ""
 
 sysbench_fs_sector_size: "512"
@@ -14,16 +14,16 @@ sysbench_fs_opts: ""
 sysbench_mount_opts: ""
 sysbench_mnt: "/db"
 
-sysbench_host_is_baseline: False
+sysbench_host_is_baseline: false
 
 sysbench_mysql_table_engine: "innodb"
 
-sysbench_test_atomics: False
-sysbench_test_atomics_tps_variability: False
+sysbench_test_atomics: false
+sysbench_test_atomics_tps_variability: false
 
 sysbench_sectsize_size_env: ""
 
-sysbench_mysql_container_host_client_config_path:  "/data/my.cnf"
+sysbench_mysql_container_host_client_config_path: "/data/my.cnf"
 sysbench_mysql_container_client_config: "/root/.my.cnf"
 
 sysbench_mysql_container_image_string: "mysql:8.0"
@@ -53,8 +53,8 @@ sysbench_threads: 128
 sysbench_telemetry_path: "/data/sysbench-telemetry"
 sysbench_docker_telemetry_path: "/data/sysbench-telemetry"
 
-sysbench_disable_doublewrite_auto: False
-sysbench_disable_doublewrite_always: False
+sysbench_disable_doublewrite_auto: false
+sysbench_disable_doublewrite_always: false
 
 sysbench_type_postgresql_native: false
 
diff --git a/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml b/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml
index 33f28530..c38aa502 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml
@@ -1,24 +1,24 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
 - name: Update apt cache
-  become: yes
+  become: true
   become_method: sudo
   apt:
-    update_cache: yes
+    update_cache: true
   tags: deps
 
 - name: Install sysbench deps
-  become: yes
+  become: true
   become_method: sudo
   apt:
     name:
@@ -27,11 +27,11 @@
       - rsync
     state: present
     update_cache: true
-  tags: ['deps']
-  when: 'sysbench_type_mysql_docker|bool'
+  tags: ["deps"]
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Install PosgreSQL build deps
-  tags: ['deps']
+  tags: ["deps"]
   become: true
   become_method: sudo
   ansible.builtin.apt:
@@ -47,12 +47,12 @@
       - zlib1g-dev
     state: present
     update_cache: true
-  when: 'sysbench_type_postgresql_native|bool'
+  when: "sysbench_type_postgresql_native|bool"
 
 # acl - Required for running Ansible with unpriviledge user (sysbench_postgresql_user)
 # https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_privilege_escalation.html#risks-of-becoming-an-unprivileged-user
 - name: Install PosgreSQL runtime deps
-  tags: ['deps']
+  tags: ["deps"]
   become: true
   become_method: sudo
   ansible.builtin.apt:
@@ -62,10 +62,10 @@
       - nvme-cli
     state: present
     update_cache: true
-  when: 'sysbench_type_postgresql_native|bool'
+  when: "sysbench_type_postgresql_native|bool"
 
 - name: Install sysbench deps
-  tags: ['deps']
+  tags: ["deps"]
   become: true
   become_method: sudo
   ansible.builtin.apt:
@@ -74,10 +74,10 @@
       - rsync
     state: present
     update_cache: true
-  when: 'sysbench_type_postgresql_native|bool'
+  when: "sysbench_type_postgresql_native|bool"
 
 - name: Install plot deps
-  tags: ['deps']
+  tags: ["deps"]
   become: true
   become_method: sudo
   delegate_to: localhost
@@ -87,4 +87,4 @@
       - python3-seaborn
     state: present
     update_cache: true
-  when: 'sysbench_type_postgresql_native|bool'
+  when: "sysbench_type_postgresql_native|bool"
diff --git a/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml b/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml
index ad3fcf6a..87c3c3af 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml
@@ -10,10 +10,10 @@
     - ansible_distribution != "Fedora"
 
 - name: Install docker
-  become: yes
+  become: true
   become_method: sudo
   yum:
-    update_cache: yes
+    update_cache: true
     name: "{{ packages }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml b/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml
index 6a31dca6..9d6470e0 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml
@@ -25,19 +25,19 @@
 
 - name: Set SLE specific version labels to make checks easier when not SLE
   set_fact:
-    is_sle10: False
-    is_sle11: False
-    is_sle12: False
-    is_sle15: False
-    is_sle10sp3: False
-    is_sle11sp1: False
-    is_sle11sp4: False
-    is_sle12sp1: False
-    is_sle12sp3: False
-    is_sle12sp5: False
-    is_sle15sp2: False
-    is_sle15sp3: False
-    is_sle15sp4: False
+    is_sle10: false
+    is_sle11: false
+    is_sle12: false
+    is_sle15: false
+    is_sle10sp3: false
+    is_sle11sp1: false
+    is_sle11sp4: false
+    is_sle12sp1: false
+    is_sle12sp3: false
+    is_sle12sp5: false
+    is_sle15sp2: false
+    is_sle15sp3: false
+    is_sle15sp4: false
   when:
     - not is_sle|bool
 
@@ -54,10 +54,10 @@
 
 - name: The default is to assume all distros have the indent package
   set_fact:
-    has_indent: True
+    has_indent: true
 
 - name: Install docker tools
-  become: yes
+  become: true
   become_method: sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/sysbench/tasks/main.yaml b/playbooks/roles/sysbench/tasks/main.yaml
index ac080cee..451a5659 100644
--- a/playbooks/roles/sysbench/tasks/main.yaml
+++ b/playbooks/roles/sysbench/tasks/main.yaml
@@ -12,9 +12,9 @@
   tags: vars
 
 - name: Create a few directories which kdevops uses for sysbench if they do not exist
-  tags: [ 'mkfs' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["mkfs"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ item }}"
@@ -29,7 +29,7 @@
 
 - include_role:
     name: create_data_partition
-  tags: [ 'mkfs' ]
+  tags: ["mkfs"]
 
 - name: MySQL Docker
   ansible.builtin.import_tasks: mysql-docker/main.yaml
diff --git a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
index 0227fe65..480fbe24 100644
--- a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
+++ b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
@@ -1,31 +1,32 @@
 ---
 - name: Ensure telemetry data directory exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ sysbench_telemetry_path }}"
     state: directory
     mode: "u=rwx,g=rx,o=rx"
-  when: 'sysbench_type_mysql_docker|bool'
-  tags: ['setup']
+  when: "sysbench_type_mysql_docker|bool"
+  tags: ["setup"]
 
 - name: Ensure MySQL root user directory exists
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ sysbench_mysql_container_host_root_path }}"
     state: directory
     mode: "u=rwx,g=rx,o=rx"
-  when: 'sysbench_type_mysql_docker|bool'
-  tags: ['setup']
+  when: "sysbench_type_mysql_docker|bool"
+  tags: ["setup"]
 
 - name: Determine filesystem setting used and db page size
   vars:
     fs_type_variable: "{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '')  | regex_replace('-.+', '') }}"
     fs_command_variable_simple: "sysbench_{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') | regex_replace('-dev$', '') }}_cmd"
-    fs_command_variable: "{{ fs_command_variable_simple | regex_replace('-', '_') | regex_replace('^sysbench_' + fs_type_variable, fs_type_variable + '_section') }}"
+    fs_command_variable: "{{ fs_command_variable_simple | regex_replace('-', '_') | regex_replace('^sysbench_' + fs_type_variable, fs_type_variable + '_section')
+      }}"
     db_page_size_simple: "sysbench_{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') | regex_replace('-dev$', '') }}_db_page_size"
     db_page_size_variable: "{{ db_page_size_simple | regex_replace('-', '_') | regex_replace('^sysbench_' + fs_type_variable, fs_type_variable + '_section') }}"
     fs_sector_size_variable: "sysbench_{{ fs_type_variable }}_sector_size"
@@ -38,19 +39,19 @@
     sysbench_fstype: "{{ fs_type_variable }}"
     sysbench_fs_opts_without_sector_size: "{{ fs_cmd | regex_replace('^[^ ]+ ', '')  }}"
     sysbench_db_page_size: "{{ db_page_size }}"
-  tags: ['vars' ]
+  tags: ["vars"]
 
 - name: Set filesystem options for XFS with sector size
   set_fact:
     sysbench_fs_opts: "{{ sysbench_fs_opts_without_sector_size }} -s size={{ sysbench_fs_sector_size }} -L {{ sysbench_label }}"
   when: sysbench_fstype != 'ext4'
-  tags: ['mkfs']
+  tags: ["mkfs"]
 
 - name: Set filesystem options for ext4 without sector size
   set_fact:
     sysbench_fs_opts: "{{ sysbench_fs_opts_without_sector_size }} -L {{ sysbench_label }}"
   when: sysbench_fstype == 'ext4'
-  tags: ['mkfs']
+  tags: ["mkfs"]
 
 - name: Set environment variable for sector size for ext4
   vars:
@@ -58,13 +59,13 @@
     sysbench_fs_env:
       MKE2FS_DEVICE_SECTSIZE: "{{ sysbench_fs_sector_size }}"
   when: sysbench_fstype == 'ext4'
-  tags: ['mkfs']
+  tags: ["mkfs"]
 
 - name: Clear environment variable for non-ext4 filesystems
   set_fact:
     sysbench_fs_env: {}
   when: sysbench_fstype != 'ext4'
-  tags: ['mkfs']
+  tags: ["mkfs"]
 
 - name: Display the filesystem options and environment variable for the current host
   debug:
@@ -75,52 +76,52 @@
       Sysbench label:     {{ sysbench_label }}
       Sysbench mount:     {{ sysbench_mnt }}
       Sysbench env:       {{ sysbench_fs_env }}
-  tags: ['debug']
+  tags: ["debug"]
 
 - name: Fail if no filesystem command is found for the host
   fail:
     msg: "No filesystem configuration command found for the current host: {{ ansible_host }}"
   when: filesystem_command_for_host is undefined
-  tags: ['mkfs']
+  tags: ["mkfs"]
 
 - name: Remove any old sysbench container
-  tags: ['post_entrypoint', 'clean' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint", "clean"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container:
     name: "{{ sysbench_container_name }}"
     image: "{{ sysbench_container_image_name }}"
     state: absent
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Remove any old MySQL container
-  tags: ['post_entrypoint', 'clean' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint", "clean"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container:
     name: "{{ sysbench_mysql_container_name }}"
     image: "{{ sysbench_mysql_container_image_string }}"
     state: absent
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Unmount {{ sysbench_mnt }}
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.mount:
     path: "{{ sysbench_mnt }}"
     state: unmounted
-  tags: ['clean', 'mkfs']
+  tags: ["clean", "mkfs"]
 
 - name: Wipe filesystem signatures from the device
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.command:
     cmd: "wipefs --all {{ sysbench_device }}"
-  tags: ['clean', 'mkfs']
+  tags: ["clean", "mkfs"]
 
 - name: Create the filesystem we'll use to place the database under test
   ansible.builtin.include_role:
@@ -132,43 +133,43 @@
     disk_setup_path: "{{ sysbench_mnt }}"
     disk_setup_fs_opts: "{{ sysbench_fs_opts }}"
     disk_setup_env: "{{ sysbench_fs_env }}"
-  tags: ['clean', 'mkfs']
+  tags: ["clean", "mkfs"]
 
 - name: Set sysbench_mysql_innodb_doublewrite based on ansible_host
-  tags: ['vars' ]
+  tags: ["vars"]
   set_fact:
     sysbench_host_is_baseline: "{{ False if ansible_host is search('-dev$') else True }}"
     sysbench_mysql_innodb_doublewrite: "{{ '0' if ansible_host is search('-dev$') else '1' }}"
   when:
-    - 'sysbench_disable_doublewrite_auto|bool'
+    - "sysbench_disable_doublewrite_auto|bool"
 
 - name: Set sysbench_mysql_innodb_doublewrite based on ansible_host
-  tags: ['vars' ]
+  tags: ["vars"]
   set_fact:
-    sysbench_mysql_innodb_doublewrite: '0'
+    sysbench_mysql_innodb_doublewrite: "0"
   when:
-    - 'sysbench_disable_doublewrite_always|bool'
+    - "sysbench_disable_doublewrite_always|bool"
 
 - name: Generate MySQL client configuration file from template
-  tags: ['setup']
+  tags: ["setup"]
   ansible.builtin.template:
     src: "{{ sysbench_mysql_container_host_client_config_path | basename }}.j2"
     dest: "{{ sysbench_mysql_container_host_client_config_path }}"
     mode: "u=rw,g=r,o=r"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Generate MySQL server configuration file from template
-  tags: ['setup']
+  tags: ["setup"]
   ansible.builtin.template:
     src: "{{ sysbench_mysql_container_host_config_path | basename }}.j2"
     dest: "{{ sysbench_mysql_container_host_config_path }}"
     mode: "u=rw,g=r,o=r"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Create a few directories needed for telemetry inside the docker container
-  tags: [ 'setup' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["setup"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ item }}"
@@ -177,32 +178,32 @@
     - "{{ sysbench_mysql_container_host_root_path }}/.mysqlsh/"
 
 - name: git clone our mysqlsh plugin for telemetry
-  tags: ['setup']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["setup"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   environment:
-    GIT_SSL_NO_VERIFY:  true
+    GIT_SSL_NO_VERIFY: true
   git:
     repo: "https://github.com/lefred/mysqlshell-plugins.git"
     dest: "{{ sysbench_mysql_container_host_root_path }}/.mysqlsh/plugins/"
-    update: yes
+    update: true
     version: master
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Get used target kernel version
-  tags: [ 'db_start' ]
+  tags: ["db_start"]
   command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
-  tags: ['db_start']
+  tags: ["db_start"]
   run_once: true
 
 - name: Ensure the results directory exists on the localhost
-  tags: ['db_start']
+  tags: ["db_start"]
   local_action: file
   args:
     path: "{{ topdir_path }}/workflows/sysbench/results/"
@@ -210,29 +211,32 @@
   run_once: true
 
 - name: Ensure the results directory exists on the localhost for each node locally
-  tags: ['db_start']
+  tags: ["db_start"]
   local_action: file
   args:
     path: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/"
     state: directory
 
 - name: Document used target kernel version
-  local_action: "shell echo {{ last_kernel }} > {{ topdir_path }}/workflows/sysbench/results/last-kernel.txt"
-  tags: ['db_start']
+  shell: echo {{ last_kernel }} > {{ topdir_path }}/workflows/sysbench/results/last-kernel.txt
+  delegate_to: localhost
+  tags: ["db_start"]
   run_once: true
 
 - name: Document double write buffer setting on node
-  local_action: "shell echo {{ sysbench_mysql_innodb_doublewrite }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_doublewrite.txt"
-  tags: ['db_start']
+  shell: echo {{ sysbench_mysql_innodb_doublewrite }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_doublewrite.txt
+  delegate_to: localhost
+  tags: ["db_start"]
 
 - name: Document db page size setting on node
-  local_action: "shell echo {{ sysbench_db_page_size }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_page_size.txt"
-  tags: ['db_start']
+  shell: echo {{ sysbench_db_page_size }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_page_size.txt
+  delegate_to: localhost
+  tags: ["db_start"]
 
 - name: Start MySQL Docker container
-  tags: ['db_start']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["db_start"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container:
     name: "{{ sysbench_mysql_container_name }}"
@@ -251,141 +255,141 @@
       MYSQL_DATABASE: "{{ sysbench_db_name }}"
       MYSQL_ROOT_PASSWORD: "{{ sysbench_root_db_password }}"
       PYTHONPATH: "{{ sysbench_mysql_container_python_path }}"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Wait for for it... (MySQL data port to be up)
-  tags: ['db_start']
+  tags: ["db_start"]
   ansible.builtin.wait_for:
     port: "{{ sysbench_local_db_port }}"
     timeout: 20
     state: started
 
 - name: Wait for MySQL socket file inside Docker container
-  tags: ['db_start']
-  become: yes
+  tags: ["db_start"]
+  become: true
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: /bin/bash -c "test -S /var/lib/mysql/mysql.sock"
   register: result
-  retries: 12  # Retry up to 12 times
-  delay: 5  # Delay 5 seconds between retries
+  retries: 12 # Retry up to 12 times
+  delay: 5 # Delay 5 seconds between retries
   until: result.rc == 0
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Verify MySQL client works inside Docker container using explicit socket
-  tags: ['db_start']
-  become: yes
+  tags: ["db_start"]
+  become: true
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: mysql --socket=/var/lib/mysql/mysql.sock -e "SHOW DATABASES;"
   register: mysql_socket_output_explicit
   ignore_errors: true
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save MySQL client explicit socket test output to a file on the host
-  tags: ['db_start']
-  become: yes
+  tags: ["db_start"]
+  become: true
   become_method: sudo
   copy:
     content: "{{ mysql_socket_output_explicit.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-mysql-client-explicit-test.txt"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Verify MySQL client works on server and capture output
-  tags: ['db_start']
-  become: yes
+  tags: ["db_start"]
+  become: true
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: mysql -h localhost -e "SHOW DATABASES;"
   register: mysql_socket_output
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save MySQL client socket test output to a file on the host
-  tags: ['db_start']
-  become: yes
+  tags: ["db_start"]
+  become: true
   become_method: sudo
   copy:
     content: "{{ mysql_socket_output.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-mysql-client-test.txt"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Add sysbench test user using the MySQL container
-  tags: ['post_entrypoint']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: mysql -e "CREATE USER {{ sysbench_db_username }}@'%' IDENTIFIED WITH 'mysql_native_password' BY '{{ sysbench_db_password }}';"
   register: mysql_add_sysbench_user
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save MySQL output of adding sysbench user
-  tags: ['post_entrypoint']
-  become: yes
+  tags: ["post_entrypoint"]
+  become: true
   become_method: sudo
   copy:
     content: "{{ mysql_add_sysbench_user.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0001-add-user.txt"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Grant sysbench test user privileges using the MySQL container
-  tags: ['post_entrypoint']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: mysql -e "GRANT ALL PRIVILEGES ON {{ sysbench_db_name }}.* to {{ sysbench_db_username }}@'%';"
   register: mysql_sysbench_privs
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save MySQL output of granting all privileges to sysbench user
-  tags: ['post_entrypoint']
-  become: yes
+  tags: ["post_entrypoint"]
+  become: true
   become_method: sudo
   copy:
     content: "{{ mysql_sysbench_privs.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0002-grant-privs-user.txt"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Flush privileges
-  tags: ['post_entrypoint']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: mysql -e "FLUSH PRIVILEGES;"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Install pip using MySQL container
-  tags: ['post_entrypoint']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: microdnf install -y python-pip
   register: mysql_pip
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save MySQL output of installing pip
-  tags: ['post_entrypoint']
-  become: yes
+  tags: ["post_entrypoint"]
+  become: true
   become_method: sudo
   copy:
     content: "{{ mysql_pip.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0003-install-python-pip.txt"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Install Python packages we need for telemetry pip using the MySQL container
-  tags: ['post_entrypoint']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
@@ -393,44 +397,44 @@
     env:
       PYTHONPATH: "{{ sysbench_mysql_container_python_path }}"
   register: mysql_pip_install_deps
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save MySQL output of installing telemetry reqs with pip
-  tags: ['post_entrypoint']
-  become: yes
+  tags: ["post_entrypoint"]
+  become: true
   become_method: sudo
   copy:
     content: "{{ mysql_pip_install_deps.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0004-install-telemetry-reqs.txt"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Ensure sysbench user is present on the mysql container
-  tags: ['post_entrypoint']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["post_entrypoint"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
     command: mysql -e "SELECT user, host, plugin FROM mysql.user WHERE user = '{{ sysbench_db_username }}' AND plugin = 'mysql_native_password';"
   register: user_check_result
   failed_when: user_check_result.stdout.find(sysbench_db_username) == -1
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Remove the sysbench container
-  tags: ['populate_sbtest']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["populate_sbtest"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container:
     name: "{{ sysbench_container_name }}"
     image: "{{ sysbench_container_image_name }}"
     state: absent
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Start a sysbench container we will re-use for population and running the test
-  tags: ['populate_sbtest']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["populate_sbtest"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container:
     name: "{{ sysbench_container_name }}"
@@ -441,13 +445,13 @@
     state: started
     detach: true
     restart_policy: unless-stopped
-    command: "tail -f /dev/null"  # Keeps the container running
-  when: 'sysbench_type_mysql_docker|bool'
+    command: "tail -f /dev/null" # Keeps the container running
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Wait for the sysbench container to be in running state
-  tags: ['populate_sbtest']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["populate_sbtest"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_info:
     name: "{{ sysbench_container_name }}"
@@ -455,14 +459,14 @@
   until: sysbench_container_status.container is defined and sysbench_container_status.container.State.Running
   retries: 5
   delay: 5
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 # Keep this at threads=1 as multiple threads don't work when building the
 # initial database.
 - name: Use the sysbench container to populate the sysbench database
-  tags: [ 'populate_sbtest' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["populate_sbtest"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_container_name }}"
@@ -481,24 +485,24 @@
       --mysql-password={{ sysbench_db_password }}
       run
   register: sysbench_init_pop
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save the output of popuating the initial sysench database
-  tags: ['post_entrypoint']
-  become: yes
+  tags: ["post_entrypoint"]
+  become: true
   become_method: sudo
   copy:
     content: "{{ sysbench_init_pop.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/sysbench_populate.txt"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 # We use a shell here to be able to directly output to a file instad
 # of saving to an ansible variable with register because we expect this
 # file to be long.
 - name: Run sysbench benchmark workload against MySQL
-  tags: ['run_sysbench']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["run_sysbench"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_container_name }}"
@@ -522,12 +526,12 @@
   async: "{{ sysbench_test_duration | int + 10 }}" # Maximum allowed time to complete
   poll: 0 # Run in the background
   register: sysbench_job # Register the job ID
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Collect MySQL telemetry inside the Docker MySQL container at the same time
-  tags: ['telemetry', 'tel' ]
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["telemetry", "tel"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container_exec:
     container: "{{ sysbench_mysql_container_name }}"
@@ -538,95 +542,95 @@
     command: |
       mysqlsh --execute
       "support.collect(mysql=true, os=true, time={{ sysbench_test_duration | int // 60 }}, outputdir='{{ sysbench_telemetry_path }}')"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Wait for sysbench workload to complete
-  tags: ['run_sysbench']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["run_sysbench"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   async_status:
     jid: "{{ sysbench_job.ansible_job_id }}"
   register: sysbench_result
   until: sysbench_result.finished
-  retries: "{{ sysbench_test_duration | int // 60 }}"  # Retries every minute
-  delay: 60  # Delay between retries (in seconds)
+  retries: "{{ sysbench_test_duration | int // 60 }}" # Retries every minute
+  delay: 60 # Delay between retries (in seconds)
 
 - name: Move sysbench async results file to telemetry
-  tags: ['run_sysbench']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["run_sysbench"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   command: mv "{{ sysbench_result.results_file }}" "{{ sysbench_telemetry_path }}/sysbench_output.txt"
 
 - name: Fetch sysbench container logs
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  tags: ['run_sysbench']
-  ansible.builtin.shell:
+  tags: ["run_sysbench"]
+  ansible.builtin.command:
     cmd: "docker logs {{ sysbench_container_name }}"
   register: sysbench_logs
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save sysbench logs to a file on the local machine
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  tags: ['run_sysbench']
+  tags: ["run_sysbench"]
   copy:
     content: "{{ sysbench_logs.stdout }}"
     dest: "{{ sysbench_telemetry_path }}/docker-sysbench-results-{{ ansible_date_time.iso8601 }}.log"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Collect sysbench docker logs for MySQL container
-  tags: ['logs']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["logs"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.shell:
+  ansible.builtin.command:
     cmd: "docker logs {{ sysbench_mysql_container_name }}"
   register: sysbench_mysql_container_logs
   changed_when: false
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Save docker MySQL logs on node
-  tags: ['logs']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["logs"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.copy:
     content: "{{ sysbench_mysql_container_logs.stdout }}"
     dest: "{{ sysbench_telemetry_path}}/docker-mysql-results-{{ ansible_date_time.iso8601 }}.log"
     mode: "u=rw,g=r,o=r"
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Remove the sysbench container which ran the benchmark
-  tags: ['run_sysbench']
-  become: yes
-  become_flags: 'su - -c'
+  tags: ["run_sysbench"]
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   community.docker.docker_container:
     name: "{{ sysbench_container_name }}"
     image: "{{ sysbench_container_image_name }}"
     state: absent
-  when: 'sysbench_type_mysql_docker|bool'
+  when: "sysbench_type_mysql_docker|bool"
 
 - name: Copy telemetry data from each node to the localhost
-  tags: ['results']
+  tags: ["results"]
   synchronize:
     src: "{{ sysbench_telemetry_path }}/"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/"
     mode: pull
-    recursive: yes
+    recursive: true
     rsync_opts:
       - "--ignore-existing"
   delegate_to: localhost
   become: false
 
 - name: Gather kernel logs from each node
-  tags: ['results']
-  become: yes
+  tags: ["results"]
+  become: true
   become_method: sudo
   command: journalctl -k
   register: journal_cmd
@@ -636,11 +640,11 @@
     content: "{{ journal_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/dmesg.txt"
   delegate_to: localhost
-  tags: ['results']
+  tags: ["results"]
 
 - name: Gather memory fragmentation index on each node
-  tags: ['results']
-  become: yes
+  tags: ["results"]
+  become: true
   become_method: sudo
   command: cat /sys/kernel/debug/extfrag/extfrag_index
   register: extfrag_index_cmd
@@ -650,11 +654,11 @@
     content: "{{ extfrag_index_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/extfrag_index.txt"
   delegate_to: localhost
-  tags: ['results']
+  tags: ["results"]
 
 - name: Gather memory unusable index on each node
-  tags: ['results']
-  become: yes
+  tags: ["results"]
+  become: true
   become_method: sudo
   command: cat /sys/kernel/debug/extfrag/unusable_index
   register: unusable_index_cmd
@@ -664,11 +668,11 @@
     content: "{{ unusable_index_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/unusable_index.txt"
   delegate_to: localhost
-  tags: ['results']
+  tags: ["results"]
 
 - name: Remove all results and telemetry directories on the node
-  become: yes
-  become_flags: 'su - -c'
+  become: true
+  become_flags: "su - -c"
   become_method: sudo
   file:
     path: "{{ item }}"
@@ -677,30 +681,30 @@
     - "{{ sysbench_telemetry_path }}/"
   loop_control:
     label: "Removing {{ item }}"
-  tags: ['clean']
+  tags: ["clean"]
 
 - name: Remove all results and telemetry directories on the host
-  become: yes
+  become: true
   file:
     path: "{{ item }}"
     state: absent
   loop:
     - "{{ topdir_path }}/workflows/sysbench/results/"
   delegate_to: localhost
-  tags: ['clean']
+  tags: ["clean"]
 
 - name: Find directories under sysbench results target
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
   find:
     paths: "{{ sysbench_results_target }}"
-    recurse: no
+    recurse: false
     file_type: directory
   register: sysbench_results_dirs
   delegate_to: localhost
-  tags: [ 'plot' ]
+  tags: ["plot"]
   when:
-    - 'sysbench_type_mysql_docker|bool'
+    - "sysbench_type_mysql_docker|bool"
 
 - name: Check if sysbench_tps.txt exists in each directory
   vars:
@@ -712,9 +716,9 @@
   loop_control:
     label: "Checking sysbench tps output file exists  {{ item.path }}/sysbench_tps.txt"
   delegate_to: localhost
-  tags: [ 'plot' ]
+  tags: ["plot"]
   when:
-    - 'sysbench_type_mysql_docker|bool'
+    - "sysbench_type_mysql_docker|bool"
 
 - name: Plot sysbench tps plot for each node
   vars:
@@ -722,13 +726,13 @@
     host_dir: "{{ item.item.path | basename }}"
     output_image: "{{ sysbench_results_target }}/{{ host_dir }}/sysbench_tps_plot.png"
   command: "./python/workflows/sysbench/sysbench-tps-plot.py {{ sysbench_results_target }}/{{ host_dir }}/sysbench_tps.txt --output {{ output_image }}"
-  tags: [ 'plot' ]
+  tags: ["plot"]
   delegate_to: localhost
   with_items: "{{ sysbench_tps_exists.results }}"
   loop_control:
     label: "Generating plot for {{ output_image }}"
   when:
-    - 'sysbench_type_mysql_docker|bool'
+    - "sysbench_type_mysql_docker|bool"
     - "item.stat.exists"
 
 - name: Plot sysbench tps non-atomic Vs atomic
@@ -742,15 +746,16 @@
     legend2: "{{ fs_type }} innodb_doublewrite=OFF"
     file2: "{{ sysbench_results_target }}/{{ dev_host }}/sysbench_tps.txt"
     output_image: "{{ sysbench_results_target }}a_vs_b.png"
-  command: "./python/workflows/sysbench/sysbench-tps-compare.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --output {{ output_image }} {{ file1 }} {{ file2 }}"
-  tags: [ 'plot' ]
+  command: "./python/workflows/sysbench/sysbench-tps-compare.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --output {{ output_image }} {{ file1 }} {{
+    file2 }}"
+  tags: ["plot"]
   delegate_to: localhost
   with_items:
     - "{{ hostvars[inventory_hostname]['groups']['baseline'] }}"
   when:
-    - 'sysbench_type_mysql_docker|bool'
-    - 'kdevops_baseline_and_dev|bool'
-    - 'sysbench_host_is_baseline|bool'
+    - "sysbench_type_mysql_docker|bool"
+    - "kdevops_baseline_and_dev|bool"
+    - "sysbench_host_is_baseline|bool"
 
 - name: Plot sysbench TPS variance
   vars:
@@ -762,12 +767,13 @@
     dev_host: "{{ item }}-dev"
     legend2: "{{ fs_type }} innodb_doublewrite=OFF"
     file2: "{{ sysbench_results_target }}/{{ dev_host }}/sysbench_tps.txt"
-  command: "./python/workflows/sysbench/sysbench-tps-variance.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --dir {{ sysbench_results_target }} {{ file1 }} {{ file2}}"
-  tags: [ 'plot' ]
+  command: "./python/workflows/sysbench/sysbench-tps-variance.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --dir {{ sysbench_results_target }} {{ file1
+    }} {{ file2}}"
+  tags: ["plot"]
   delegate_to: localhost
   with_items:
     - "{{ hostvars[inventory_hostname]['groups']['baseline'] }}"
   when:
-    - 'sysbench_type_mysql_docker|bool'
-    - 'kdevops_baseline_and_dev|bool'
-    - 'sysbench_host_is_baseline|bool'
+    - "sysbench_type_mysql_docker|bool"
+    - "kdevops_baseline_and_dev|bool"
+    - "sysbench_host_is_baseline|bool"
diff --git a/playbooks/roles/sysbench/tasks/postgresql-native/main.yaml b/playbooks/roles/sysbench/tasks/postgresql-native/main.yaml
index 416f137c..9d5eaba3 100644
--- a/playbooks/roles/sysbench/tasks/postgresql-native/main.yaml
+++ b/playbooks/roles/sysbench/tasks/postgresql-native/main.yaml
@@ -1,6 +1,6 @@
 ---
 - name: Get the latest PostgreSQL ref
-  tags: ['setup']
+  tags: ["setup"]
   ansible.builtin.shell: |
     set -o pipefail && \
     git ls-remote --tags --sort="-version:refname" \
@@ -15,7 +15,7 @@
   changed_when: false
 
 - name: Git clone PostgreSQL
-  tags: ['setup']
+  tags: ["setup"]
   ansible.builtin.git:
     repo: "https://git.postgresql.org/git/postgresql.git"
     dest: "{{ sysbench_postgresql_repo_path }}"
@@ -25,33 +25,33 @@
     GIT_SSL_NO_VERIFY: "true"
 
 - name: Get number of processing units available
-  tags: ['always']
+  tags: ["always"]
   ansible.builtin.command: nproc --all
   register: _sysbench_punits
   changed_when: _sysbench_punits.rc != 0
 
 - name: Set threads using nproc output
-  tags: ['always']
+  tags: ["always"]
   ansible.builtin.set_fact:
     _sysbench_threads: "{{ _sysbench_punits.stdout }}"
   when:
     - sysbench_threads == 0
 
 - name: Set threads manually
-  tags: ['always']
+  tags: ["always"]
   ansible.builtin.set_fact:
     _sysbench_threads: "{{ sysbench_threads }}"
   when:
     - sysbench_threads != 0
 
 - name: Check if clean is required for PostgreSQL builddir
-  tags: ['setup']
+  tags: ["setup"]
   ansible.builtin.stat:
     path: "{{ sysbench_postgresql_repo_path }}/GNUmakefile"
   register: _sysbench_postgresql_cleanup
 
 - name: Clean PostgreSQL builddir
-  tags: ['setup']
+  tags: ["setup"]
   ansible.builtin.command:
     cmd: |
       make clean
@@ -65,7 +65,7 @@
   ignore_errors: true
 
 - name: Configure PostgreSQL
-  tags: ['setup']
+  tags: ["setup"]
   ansible.builtin.command:
     cmd: >
       ./configure
@@ -77,7 +77,7 @@
   changed_when: _sysbench_postgresql_configure.rc != 0
 
 - name: Build PostgreSQL
-  tags: ['setup']
+  tags: ["setup"]
   community.general.make:
     jobs: "{{ _sysbench_punits.stdout }}"
   args:
@@ -85,7 +85,7 @@
   changed_when: false
 
 - name: Install PostgreSQL
-  tags: ['setup']
+  tags: ["setup"]
   become: true
   become_method: sudo
   community.general.make:
@@ -94,16 +94,16 @@
     chdir: "{{ sysbench_postgresql_repo_path }}"
 
 - name: Create PostgreSQL benchmark user
-  tags: ['setup']
+  tags: ["setup"]
   become: true
   become_method: sudo
   ansible.builtin.user:
     name: "{{ sysbench_postgresql_user }}"
 
 - name: Ensure telemetry data directory exists
-  tags: ['setup', 'db_start']
+  tags: ["setup", "db_start"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ sysbench_telemetry_path }}"
@@ -111,7 +111,7 @@
     mode: "u=rwx,g=rx,o=rx"
 
 - name: Check if PostgreSQL Server is Running
-  tags: ['always']
+  tags: ["always"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.stat:
@@ -119,7 +119,7 @@
   register: _sysbench_postgresql_stop
 
 - name: Stop the PostgreSQL Server
-  tags: ['always']
+  tags: ["always"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -135,11 +135,12 @@
     - _sysbench_postgresql_stop.stat.exists | bool
 
 - name: Determine filesystem setting used and db page size
-  tags: ['vars']
+  tags: ["vars"]
   vars:
     fs_type_variable: "{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') | regex_replace('-.+', '') }}"
     fs_command_variable_simple: "sysbench_{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') | regex_replace('-dev$', '') }}_cmd"
-    fs_command_variable: "{{ fs_command_variable_simple | regex_replace('-', '_') | regex_replace('^sysbench_' + fs_type_variable, fs_type_variable + '_section') }}"
+    fs_command_variable: "{{ fs_command_variable_simple | regex_replace('-', '_') | regex_replace('^sysbench_' + fs_type_variable, fs_type_variable + '_section')
+      }}"
     db_page_size_simple: "sysbench_{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') | regex_replace('-dev$', '') }}_db_page_size"
     db_page_size_variable: "{{ db_page_size_simple | regex_replace('-', '_') | regex_replace('^sysbench_' + fs_type_variable, fs_type_variable + '_section') }}"
     fs_sector_size_variable: "sysbench_{{ fs_type_variable }}_sector_size"
@@ -154,32 +155,32 @@
     sysbench_db_page_size: "{{ db_page_size }}"
 
 - name: Set filesystem options for XFS with sector size
-  tags: ['mkfs']
+  tags: ["mkfs"]
   ansible.builtin.set_fact:
     sysbench_fs_opts: "{{ sysbench_fs_opts_without_sector_size }} -s size={{ sysbench_fs_sector_size }} -L {{ sysbench_label }}"
   when: sysbench_fstype != 'ext4'
 
 - name: Set filesystem options for ext4 without sector size
-  tags: ['mkfs']
+  tags: ["mkfs"]
   ansible.builtin.set_fact:
     sysbench_fs_opts: "{{ sysbench_fs_opts_without_sector_size }} -L {{ sysbench_label }}"
   when: sysbench_fstype == 'ext4'
 
 - name: Set environment variable for sector size for ext4
-  tags: ['mkfs']
+  tags: ["mkfs"]
   ansible.builtin.set_fact:
     sysbench_fs_env:
       MKE2FS_DEVICE_SECTSIZE: "{{ sysbench_fs_sector_size }}"
   when: sysbench_fstype == 'ext4'
 
 - name: Clear environment variable for non-ext4 filesystems
-  tags: ['mkfs']
+  tags: ["mkfs"]
   ansible.builtin.set_fact:
     sysbench_fs_env: {}
   when: sysbench_fstype != 'ext4'
 
 - name: Display the filesystem options and environment variable for the current host
-  tags: ['debug']
+  tags: ["debug"]
   ansible.builtin.debug:
     msg: |
       Sysbench device:    {{ sysbench_device }}
@@ -190,24 +191,24 @@
       Sysbench env:       {{ sysbench_fs_env }}
 
 - name: Fail if no filesystem command is found for the host
-  tags: ['mkfs']
+  tags: ["mkfs"]
   ansible.builtin.fail:
     msg: "No filesystem configuration command found for the current host: {{ ansible_host }}"
   when: filesystem_command_for_host is undefined
 
 - name: Unmount {{ sysbench_mnt }}
-  tags: ['clean', 'mkfs']
+  tags: ["clean", "mkfs"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.posix.mount:
     path: "{{ sysbench_mnt }}"
     state: unmounted
 
 - name: Wipe filesystem signatures from the device
-  tags: ['clean', 'mkfs']
+  tags: ["clean", "mkfs"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.command:
     cmd: "wipefs --all {{ sysbench_device }}"
@@ -215,7 +216,7 @@
   changed_when: _sysbench_postgresql_wipefs.rc != 0
 
 - name: Create the filesystem we'll use to place the database under test
-  tags: ['clean', 'mkfs']
+  tags: ["clean", "mkfs"]
   ansible.builtin.include_role:
     name: create_partition
   vars:
@@ -236,7 +237,7 @@
     recurse: true
 
 - name: Initialize the PostgreSQL database
-  tags: ['setup']
+  tags: ["setup"]
   become: true
   become_method: sudo
   become_user: "{{ sysbench_postgresql_user }}"
@@ -247,7 +248,7 @@
   changed_when: _sysbench_postgresql_initdb.rc != 0
 
 - name: Set sysbench_postgresql_full_page_writes based on ansible_host
-  tags: ['vars']
+  tags: ["vars"]
   ansible.builtin.set_fact:
     sysbench_host_is_baseline: "{{ False if ansible_host is search('-dev$') else True }}"
     sysbench_postgresql_full_page_writes: "{{ 'off' if ansible_host is search('-dev$') else 'on' }}"
@@ -255,14 +256,14 @@
     - sysbench_disable_full_page_writes_auto|bool
 
 - name: Set sysbench_postgresql_full_page_writes based on ansible_host
-  tags: ['vars']
+  tags: ["vars"]
   ansible.builtin.set_fact:
-    sysbench_postgresql_full_page_writes: 'off'
+    sysbench_postgresql_full_page_writes: "off"
   when:
     - sysbench_disable_full_page_writes_always|bool
 
 - name: Generate PostgreSQL configuration file from template
-  tags: ['setup']
+  tags: ["setup"]
   become: true
   become_method: sudo
   become_user: "{{ sysbench_postgresql_user }}"
@@ -272,45 +273,45 @@
     mode: "u=rw,g=r,o=r"
 
 - name: Get used target kernel version
-  tags: ['db_start']
+  tags: ["db_start"]
   ansible.builtin.command: "uname -r"
   changed_when: false
   register: _uname_cmd
 
 - name: Store last kernel variable
-  tags: ['db_start']
+  tags: ["db_start"]
   ansible.builtin.set_fact:
     last_kernel: "{{ _uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   run_once: true
 
 - name: Ensure the results directory exists on the localhost
-  tags: ['db_start', 'results']
+  tags: ["db_start", "results"]
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ topdir_path }}/workflows/sysbench/results/"
     state: directory
-    mode: '0755'
+    mode: "0755"
   run_once: true
 
 - name: Ensure the results directory exists on the localhost for each node locally
-  tags: ['db_start', 'results']
+  tags: ["db_start", "results"]
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/"
     state: directory
-    mode: '0755'
+    mode: "0755"
 
 - name: Ensure the results directory exists on the localhost for each node locally
-  tags: ['db_start', 'plot']
+  tags: ["db_start", "plot"]
   delegate_to: localhost
   ansible.builtin.file:
     path: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}-ab/"
     state: directory
-    mode: '0755'
+    mode: "0755"
   when: "'-dev' not in inventory_hostname"
 
 - name: Document used target kernel version
-  tags: ['db_start']
+  tags: ["db_start"]
   delegate_to: localhost
   ansible.builtin.shell: |
     echo {{ last_kernel }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}-ab/last-kernel.txt
@@ -319,21 +320,21 @@
   when: "'-dev' not in inventory_hostname"
 
 - name: Document full_page_writes setting on node
-  tags: ['db_start']
+  tags: ["db_start"]
   delegate_to: localhost
   ansible.builtin.shell: |
     echo {{ sysbench_postgresql_full_page_writes }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/full_page_writes.txt
   changed_when: false
 
 - name: Document db blocksize setting on node
-  tags: ['db_start']
+  tags: ["db_start"]
   delegate_to: localhost
   ansible.builtin.shell: |
     echo {{ sysbench_db_page_size }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/postgresql_blocksize.txt
   changed_when: false
 
 - name: Start the PostgreSQL server
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -344,7 +345,7 @@
   changed_when: false
 
 - name: Create PostgreSQL database USER
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -357,7 +358,7 @@
   changed_when: "'CREATE ROLE' in _sysbench_postgresql_create_user_result.stderr"
 
 - name: Create PostgreSQL database DATABASE
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -370,7 +371,7 @@
   changed_when: "'CREATE DATABASE' in _sysbench_postgresql_create_db_result.stderr"
 
 - name: Grant USER privileges to DATABASE
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -379,7 +380,7 @@
   changed_when: false
 
 - name: Grant ALL public Privileges to DATABASE
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -393,7 +394,7 @@
   changed_when: false
 
 - name: Test and Ensure Permissions are Set Correctly
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -413,7 +414,7 @@
 # Keep this at threads=1 as multiple threads don't work when building the
 # initial database.
 - name: Populate sysbench database
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -437,16 +438,16 @@
   changed_when: "'CREATE TABLE' in _sysbench_init_pop.stdout"
 
 - name: Save the output of populating the initial sysbench database
-  tags: ['db_start']
+  tags: ["db_start"]
   become: true
   become_method: sudo
   ansible.builtin.copy:
     content: "{{ _sysbench_init_pop.stdout }}"
     dest: "{{ sysbench_telemetry_path }}/sysbench_populate.txt"
-    mode: '0755'
+    mode: "0755"
 
 - name: Start sysbench run
-  tags: ['run_sysbench']
+  tags: ["run_sysbench"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -471,7 +472,7 @@
   register: sysbench_postgresql_run_output
 
 - name: Stop the PostgreSQL server (Smart Mode)
-  tags: ['run_sysbench']
+  tags: ["run_sysbench"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -488,7 +489,7 @@
   ignore_errors: true
 
 - name: Stop the PostgreSQL server (Fast Mode)
-  tags: ['run_sysbench']
+  tags: ["run_sysbench"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -506,7 +507,7 @@
   ignore_errors: true
 
 - name: Stop the PostgreSQL server (Immediate Mode)
-  tags: ['run_sysbench']
+  tags: ["run_sysbench"]
   become: true
   become_user: "{{ sysbench_postgresql_user }}"
   ansible.builtin.command: >
@@ -523,17 +524,17 @@
     - _sysbench_postgresql_stop_fast.rc | default(0) != 0
 
 - name: Write sysbench run output to log file
-  tags: ['run_sysbench']
+  tags: ["run_sysbench"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.copy:
     content: "{{ sysbench_postgresql_run_output.stdout }}"
     dest: "{{ sysbench_telemetry_path }}/sysbench_tps.txt"
-    mode: '0755'
+    mode: "0755"
 
 - name: Collect PostgreSQL database cluster control information
-  tags: ['logs']
+  tags: ["logs"]
   become: true
   become_method: sudo
   become_user: "{{ sysbench_postgresql_user }}"
@@ -544,20 +545,20 @@
   changed_when: false
 
 - name: Write PostgreSQL database cluster control information to log file
-  tags: ['logs']
+  tags: ["logs"]
   become: true
   become_method: sudo
   become_user: root
   ansible.builtin.copy:
     content: "{{ _sysbench_postgresql_controldata_output.stdout }}"
     dest: "{{ sysbench_postgresql_controldata_logfile }}"
-    mode: '0755'
+    mode: "0755"
     owner: "{{ sysbench_postgresql_user }}"
     group: "{{ sysbench_postgresql_user }}"
     remote_src: true
 
 - name: Copy telemetry data from each node to the localhost
-  tags: ['results']
+  tags: ["results"]
   ansible.posix.synchronize:
     src: "{{ sysbench_telemetry_path }}/"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/"
@@ -569,7 +570,7 @@
   become: false
 
 - name: Gather kernel logs from each node
-  tags: ['results']
+  tags: ["results"]
   become: true
   become_method: sudo
   ansible.builtin.command: journalctl -k
@@ -577,15 +578,15 @@
   register: journal_cmd
 
 - name: Save kernel logs to local file per node
-  tags: ['results']
+  tags: ["results"]
   ansible.builtin.copy:
     content: "{{ journal_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/dmesg.txt"
-    mode: '0755'
+    mode: "0755"
   delegate_to: localhost
 
 - name: Gather memory fragmentation index on each node
-  tags: ['results']
+  tags: ["results"]
   become: true
   become_method: sudo
   ansible.builtin.command: cat /sys/kernel/debug/extfrag/extfrag_index
@@ -593,15 +594,15 @@
   register: extfrag_index_cmd
 
 - name: Save memory fragmentation index per node
-  tags: ['results']
+  tags: ["results"]
   ansible.builtin.copy:
     content: "{{ extfrag_index_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/extfrag_index.txt"
-    mode: '0755'
+    mode: "0755"
   delegate_to: localhost
 
 - name: Gather memory unusable index on each node
-  tags: ['results']
+  tags: ["results"]
   become: true
   become_method: sudo
   ansible.builtin.command: cat /sys/kernel/debug/extfrag/unusable_index
@@ -609,39 +610,39 @@
   register: unusable_index_cmd
 
 - name: Save memory unusable index per node
-  tags: ['results']
+  tags: ["results"]
   ansible.builtin.copy:
     content: "{{ unusable_index_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/unusable_index.txt"
-    mode: '0755'
+    mode: "0755"
   delegate_to: localhost
 
 - name: Remove all results and telemetry directories on the node
-  tags: ['clean']
+  tags: ["clean"]
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: sudo
   ansible.builtin.file:
     path: "{{ item }}"
     state: absent
-    mode: '0755'
+    mode: "0755"
   loop:
     - "{{ sysbench_telemetry_path }}/"
   loop_control:
     label: "Removing {{ item }}"
 
 - name: Remove all results and telemetry directories on the host
-  tags: ['clean']
+  tags: ["clean"]
   ansible.builtin.file:
     path: "{{ item }}"
     state: absent
-    mode: '0755'
+    mode: "0755"
   loop:
     - "{{ topdir_path }}/workflows/sysbench/results/"
   delegate_to: localhost
 
 - name: Find directories under sysbench results target
-  tags: ['plot']
+  tags: ["plot"]
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
   ansible.builtin.find:
@@ -652,7 +653,7 @@
   delegate_to: localhost
 
 - name: Check if sysbench_tps.txt exists in each directory
-  tags: ['plot']
+  tags: ["plot"]
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
   ansible.builtin.stat:
@@ -664,7 +665,7 @@
   delegate_to: localhost
 
 - name: Plot sysbench tps plot for each node
-  tags: ['plot']
+  tags: ["plot"]
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
     host_dir: "{{ item.item.path | basename }}"
@@ -682,7 +683,7 @@
     - "item.stat.exists"
 
 - name: Plot sysbench tps non-atomic Vs atomic
-  tags: ['plot']
+  tags: ["plot"]
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
     sysbench_results_target_ab: "{{ sysbench_results_target }}{{ item }}-ab/"
@@ -705,11 +706,11 @@
   with_items:
     - "{{ hostvars[inventory_hostname]['groups']['baseline'] }}"
   when:
-    - 'kdevops_baseline_and_dev|bool'
-    - 'sysbench_host_is_baseline|bool'
+    - "kdevops_baseline_and_dev|bool"
+    - "sysbench_host_is_baseline|bool"
 
 - name: Plot sysbench TPS variance
-  tags: ['plot']
+  tags: ["plot"]
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
     sysbench_results_target_ab: "{{ sysbench_results_target }}{{ item }}-ab/"
@@ -731,5 +732,5 @@
   with_items:
     - "{{ hostvars[inventory_hostname]['groups']['baseline'] }}"
   when:
-    - 'kdevops_baseline_and_dev|bool'
-    - 'sysbench_host_is_baseline|bool'
+    - "kdevops_baseline_and_dev|bool"
+    - "sysbench_host_is_baseline|bool"
diff --git a/playbooks/roles/update_etc_hosts/defaults/main.yml b/playbooks/roles/update_etc_hosts/defaults/main.yml
index 88e24b26..7d72da23 100644
--- a/playbooks/roles/update_etc_hosts/defaults/main.yml
+++ b/playbooks/roles/update_etc_hosts/defaults/main.yml
@@ -1,4 +1,5 @@
+---
 # SPDX-License-Identifier GPL-2.0+
 #
 terraform_private_net_enabled: false
-kdevops_enable_guestfs: False
+kdevops_enable_guestfs: false
diff --git a/playbooks/roles/update_etc_hosts/tasks/main.yml b/playbooks/roles/update_etc_hosts/tasks/main.yml
index 2b9af91d..f026b098 100644
--- a/playbooks/roles/update_etc_hosts/tasks/main.yml
+++ b/playbooks/roles/update_etc_hosts/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Import optional extra_args file
   include_vars: "{{ item }}"
-  ignore_errors: yes
+  ignore_errors: true
   with_first_found:
     - files:
-      - "../extra_vars.yml"
-      - "../extra_vars.yaml"
-      - "../extra_vars.json"
+        - "../extra_vars.yml"
+        - "../extra_vars.yaml"
+        - "../extra_vars.json"
       skip: true
   tags: vars
 
@@ -16,7 +16,7 @@
 - name: Gather network facts
   ansible.builtin.setup:
     gather_subset:
-      - 'network'
+      - "network"
 
 - name: Build network address
   set_fact:
@@ -37,7 +37,7 @@
   register: cloud_init
 
 - name: Disable cloud-init hosts management
-  become: yes
+  become: true
   become_method: sudo
   lineinfile:
     dest: /etc/cloud/cloud.cfg.d/99-kdevops-manage-net-disable
@@ -47,11 +47,11 @@
     - cloud_init.stat.exists
 
 - name: Add IP address of all hosts to all hosts
-  become: yes
+  become: true
   become_method: sudo
   lineinfile:
     dest: /etc/hosts
-    regexp: '.*{{ item }}$'
+    regexp: ".*{{ item }}$"
     line: "{{ hostvars[item].ansible_all_ipv4_addresses | ipaddr(private_network) | first }} {{ item }}"
     state: present
   with_items: "{{ ueh_hosts }}"
@@ -59,11 +59,11 @@
     - terraform_private_net_enabled
 
 - name: Add IP address of all hosts to all hosts
-  become: yes
+  become: true
   become_method: sudo
   lineinfile:
     dest: /etc/hosts
-    regexp: '.*{{ item }}$'
+    regexp: ".*{{ item }}$"
     line: "{{ hostvars[item].ansible_all_ipv4_addresses | first }} {{item}}"
     state: present
   with_items: "{{ ueh_hosts }}"
@@ -71,13 +71,13 @@
     - not terraform_private_net_enabled
 
 - name: Fix up hostname on Debian guestfs hosts
-  become: yes
+  become: true
   become_method: sudo
   lineinfile:
     path: /etc/hosts
-    regexp: '^(127\.0\.1\.1)(\s+)unassigned-hostname\.unassigned-domain\s+({{ ansible_hostname }})$'
-    backrefs: yes
-    line: '\1\2\3'
+    regexp: "^(127\\.0\\.1\\.1)(\\s+)unassigned-hostname\\.unassigned-domain\\s+({{ ansible_hostname }})$"
+    backrefs: true
+    line: "\\1\\2\\3"
   when:
     - ansible_os_family == 'Debian'
     - kdevops_enable_guestfs|bool
diff --git a/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml b/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml
index 6606a6c6..8ef64562 100644
--- a/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml
+++ b/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml
@@ -1,3 +1,4 @@
+---
 - name: Check if the ssh config file exists
   stat:
     path: "~/.ssh/config"
@@ -9,7 +10,7 @@
     path: ~/.ssh/config
     regexp: "Include ~/.ssh/config_kdevops_*"
     state: absent
-  check_mode: yes
+  check_mode: true
   changed_when: false
   register: kdevops_ssh_include
   when: ssh_config.stat.exists
@@ -20,7 +21,7 @@
     path: ~/.ssh/config
     regexp: "^#(.*)kdevops_version(.*)"
     state: absent
-  check_mode: yes
+  check_mode: true
   changed_when: false
   register: fixed_ssh_entry
   when: ssh_config.stat.exists
@@ -54,8 +55,8 @@
 - name: Remove any extra new lines
   replace:
     path: ~/.ssh/config
-    regexp: '(^\s*$)'
-    replace: ''
+    regexp: "(^\\s*$)"
+    replace: ""
   when: ssh_config.stat.exists
 
 # ssh include directives must follow a new line.
diff --git a/playbooks/roles/volume_group/tasks/main.yml b/playbooks/roles/volume_group/tasks/main.yml
index 4cafe150..ef7876b6 100644
--- a/playbooks/roles/volume_group/tasks/main.yml
+++ b/playbooks/roles/volume_group/tasks/main.yml
@@ -8,7 +8,7 @@
 
 - name: Install dependencies for LVM support
   become: true
-  become_flags: 'su - -c'
+  become_flags: "su - -c"
   become_method: ansible.builtin.sudo
   ansible.builtin.package:
     name:
diff --git a/playbooks/roles/volume_group/tasks/terraform/aws.yml b/playbooks/roles/volume_group/tasks/terraform/aws.yml
index 0d9e6f70..e4353802 100644
--- a/playbooks/roles/volume_group/tasks/terraform/aws.yml
+++ b/playbooks/roles/volume_group/tasks/terraform/aws.yml
@@ -35,8 +35,7 @@
     local_map: "{{ block_device_dict[inventory_hostname] }}"
   ansible.builtin.set_fact:
     ebs_volume_ids: "{{ ebs_volume_ids + [ 'nvme-Amazon_Elastic_Block_Store_' + item.value | regex_replace('-', '') ] }}"
-  when:
-    item.key != "/dev/sdf"
+  when: item.key != "/dev/sdf"
   with_dict: "{{ local_map }}"
 
 - name: Add unused EBS volumes to the volume list
diff --git a/playbooks/update_etc_hosts.yml b/playbooks/update_etc_hosts.yml
index 90cf7083..6fb8f787 100644
--- a/playbooks/update_etc_hosts.yml
+++ b/playbooks/update_etc_hosts.yml
@@ -1,6 +1,6 @@
 ---
 - name: Update target /etc/hosts with all targets and disable cloud-init
   hosts: baseline:dev
-  gather_facts: no
+  gather_facts: false
   roles:
     - role: update_etc_hosts

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH RFT 2/8] playbooks: ansible-lint fix fqcn
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 1/8] playbooks: ansible-lint fix deprecated-local-action Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 3/8] playbooks: ansible-lint fix jinja Daniel Gomez
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix fqcn ansible-lint rule violations

Fixed fqcn rule violations across 175 file(s).

Affected files include:
- playbooks/monitor-results.yml
- playbooks/roles/blktests/handlers/main.yml
- playbooks/roles/blktests/tasks/install-deps/debian/main.yml
- playbooks/roles/blktests/tasks/install-deps/main.yml
- playbooks/roles/blktests/tasks/install-deps/redhat/main.yml
... and 170 more files

Applied using the ansible-lint --fix=fqcn.

Generated-by: Ansible Lint
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/monitor-results.yml                      |   4 +-
 playbooks/roles/blktests/handlers/main.yml         |   2 +-
 .../blktests/tasks/install-deps/debian/main.yml    |   6 +-
 .../roles/blktests/tasks/install-deps/main.yml     |   8 +-
 .../blktests/tasks/install-deps/redhat/main.yml    |   2 +-
 .../blktests/tasks/install-deps/suse/main.yml      |  42 ++--
 playbooks/roles/blktests/tasks/main.yml            | 111 +++++-----
 playbooks/roles/bootlinux/tasks/build/9p.yml       |  40 ++--
 playbooks/roles/bootlinux/tasks/build/targets.yml  |  28 +--
 .../bootlinux/tasks/install-deps/debian/main.yml   |   4 +-
 .../bootlinux/tasks/install-deps/redhat/main.yml   |   6 +-
 .../bootlinux/tasks/install-deps/suse/main.yml     |   2 +-
 .../tasks/install-minimal-deps/debian/main.yml     |   4 +-
 .../tasks/install-minimal-deps/redhat/main.yml     |   4 +-
 .../tasks/install-minimal-deps/suse/main.yml       |   2 +-
 playbooks/roles/bootlinux/tasks/main.yml           |  60 +++---
 .../roles/bootlinux/tasks/update-grub/debian.yml   |   2 +-
 .../roles/bootlinux/tasks/update-grub/install.yml  |  15 +-
 .../roles/bootlinux/tasks/update-grub/main.yml     |   6 +-
 .../roles/bootlinux/tasks/update-grub/redhat.yml   |  11 +-
 .../roles/bootlinux/tasks/update-grub/suse.yml     |   2 +-
 .../btrfs_progs/tasks/install-deps/debian/main.yml |   4 +-
 .../roles/btrfs_progs/tasks/install-deps/main.yml  |   6 +-
 .../btrfs_progs/tasks/install-deps/redhat/main.yml |   2 +-
 .../btrfs_progs/tasks/install-deps/suse/main.yml   |   2 +-
 playbooks/roles/btrfs_progs/tasks/main.yml         |  28 +--
 .../build_qemu/tasks/install-deps/debian/main.yml  |   4 +-
 .../build_qemu/tasks/install-deps/fedora/main.yml  |   4 +-
 .../roles/build_qemu/tasks/install-deps/main.yml   |  10 +-
 .../build_qemu/tasks/install-deps/redhat/main.yml  |   2 +-
 .../build_qemu/tasks/install-deps/suse/main.yml    |   2 +-
 playbooks/roles/build_qemu/tasks/main.yml          |  26 +--
 playbooks/roles/common/tasks/main.yml              |  14 +-
 .../tasks/install-deps/debian/main.yml             |   6 +-
 .../compile_dbench/tasks/install-deps/main.yml     |   4 +-
 playbooks/roles/compile_dbench/tasks/main.yml      |  17 +-
 .../roles/create_data_partition/tasks/main.yml     |   4 +-
 .../tasks/install-deps/debian/main.yml             |   2 +-
 .../create_partition/tasks/install-deps/main.yml   |   6 +-
 .../tasks/install-deps/redhat/main.yml             |   4 +-
 .../tasks/install-deps/suse/main.yml               |  10 +-
 playbooks/roles/create_partition/tasks/main.yml    |  25 ++-
 .../roles/cxl/tasks/cxl-create-dc-region/main.yml  |  10 +-
 playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml   |  22 +-
 playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml   |   8 +-
 .../roles/cxl/tasks/install-deps/debian/main.yml   |   4 +-
 playbooks/roles/cxl/tasks/install-deps/generic.yml |   2 +-
 playbooks/roles/cxl/tasks/install-deps/main.yml    |   8 +-
 .../roles/cxl/tasks/install-deps/redhat/main.yml   |   2 +-
 .../roles/cxl/tasks/install-deps/suse/main.yml     |  12 +-
 playbooks/roles/cxl/tasks/main.yml                 |  56 +++--
 .../roles/devconfig/tasks/check-apt-mirrors.yml    |  46 ++--
 .../config-custom-repos-and-packages/main.yml      |   2 +-
 .../redhat/main.yml                                |   4 +-
 .../devconfig/tasks/install-deps/debian/main.yml   |  42 ++--
 .../roles/devconfig/tasks/install-deps/main.yml    |   6 +-
 .../devconfig/tasks/install-deps/redhat/main.yml   |  28 +--
 .../devconfig/tasks/install-deps/suse/main.yml     | 104 ++++-----
 .../tasks/kotd-rev-kernel/debian/main.yml          |   6 +-
 .../roles/devconfig/tasks/kotd-rev-kernel/main.yml |  22 +-
 .../tasks/kotd-rev-kernel/redhat/main.yml          |   8 +-
 .../devconfig/tasks/kotd-rev-kernel/suse/main.yml  |  20 +-
 playbooks/roles/devconfig/tasks/main.yml           | 104 ++++-----
 playbooks/roles/fstests/handlers/main.yml          |   2 +-
 .../fstests/tasks/install-deps/debian/main.yml     |  10 +-
 .../roles/fstests/tasks/install-deps/main.yml      |  10 +-
 .../fstests/tasks/install-deps/redhat/main.yml     |   8 +-
 .../roles/fstests/tasks/install-deps/suse/main.yml |  28 +--
 playbooks/roles/fstests/tasks/main.yml             | 240 ++++++++++-----------
 .../tasks/install-deps/debian/main.yml             |   2 +-
 .../tasks/install-deps/main.yml                    |   6 +-
 .../tasks/install-deps/redhat/main.yml             |   4 +-
 .../tasks/install-deps/suse/main.yml               |  10 +-
 .../roles/fstests_prep_localhost/tasks/main.yml    |   4 +-
 playbooks/roles/gen_hosts/tasks/main.yml           |  60 +++---
 playbooks/roles/gen_nodes/tasks/main.yml           | 104 ++++-----
 playbooks/roles/gen_pci_kconfig/tasks/main.yml     |   4 +-
 playbooks/roles/gen_tfvars/tasks/main.yml          |  14 +-
 playbooks/roles/gitr/tasks/main.yml                |  14 +-
 playbooks/roles/guestfs/tasks/bringup/main.yml     |   2 +-
 playbooks/roles/hypervisor-tuning/tasks/main.yml   |  14 +-
 .../tasks/install-deps/debian/main.yml             |   4 +-
 .../tasks/install-deps/fedora/main.yml             |   2 +-
 .../tasks/install-deps/main.yml                    |  10 +-
 .../tasks/install-deps/redhat/main.yml             |   2 +-
 .../tasks/install-deps/suse/main.yml               |   2 +-
 .../roles/install-menuconfig-deps/tasks/main.yml   |   4 +-
 .../tasks/install-deps/debian/main.yml             |   2 +-
 .../tasks/install-deps/main.yml                    |   6 +-
 .../tasks/install-deps/redhat/main.yml             |   2 +-
 .../install_systemd_journal_remote/tasks/main.yml  |  11 +-
 .../tasks/install-deps/debian/main.yml             |   2 +-
 .../tasks/install-deps/main.yml                    |   6 +-
 .../tasks/install-deps/redhat/main.yml             |   2 +-
 .../roles/install_systemd_timesyncd/tasks/main.yml |  11 +-
 .../tasks/install-deps/debian/main.yml             |   4 +-
 .../install_terraform/tasks/install-deps/main.yml  |   6 +-
 .../tasks/install-deps/redhat/main.yml             |   4 +-
 .../tasks/install-deps/suse/main.yml               |   8 +-
 playbooks/roles/install_terraform/tasks/main.yml   |   4 +-
 .../roles/kdc/tasks/install-deps/debian/main.yml   |   2 +-
 .../roles/kdc/tasks/install-deps/redhat/main.yml   |   2 +-
 playbooks/roles/kdc/tasks/main.yml                 |   6 +-
 playbooks/roles/kdevops_archive/tasks/main.yml     | 126 +++++------
 .../roles/krb5/tasks/install-deps/debian/main.yml  |   2 +-
 .../roles/krb5/tasks/install-deps/redhat/main.yml  |   2 +-
 .../roles/krb5/tasks/install-deps/suse/main.yml    |   2 +-
 playbooks/roles/krb5/tasks/main.yml                |   2 +-
 .../roles/ktls/tasks/install-deps/debian/main.yml  |   2 +-
 playbooks/roles/ktls/tasks/install-deps/main.yml   |   6 +-
 .../roles/ktls/tasks/install-deps/redhat/main.yml  |   2 +-
 playbooks/roles/ktls/tasks/main.yml                |   9 +-
 .../roles/libvirt_pcie_passthrough/tasks/main.yml  |  12 +-
 .../libvirt_storage_pool_create/tasks/main.yml     |  18 +-
 .../libvirt_user/tasks/enable-user/debian/main.yml |   8 +-
 .../libvirt_user/tasks/enable-user/redhat/main.yml |  14 +-
 .../libvirt_user/tasks/enable-user/suse/main.yml   |  10 +-
 .../tasks/install-deps/debian/main.yml             |   8 +-
 .../tasks/install-deps/fedora/main.yml             |  10 +-
 .../roles/libvirt_user/tasks/install-deps/main.yml |  10 +-
 .../tasks/install-deps/redhat/main.yml             |   6 +-
 .../libvirt_user/tasks/install-deps/suse/main.yml  |   4 +-
 playbooks/roles/libvirt_user/tasks/main.yml        |   6 +-
 playbooks/roles/linux-mirror/tasks/main.yml        |  28 +--
 playbooks/roles/ltp/tasks/main.yml                 |  14 +-
 .../mmtests/tasks/install-deps/debian/main.yml     |  10 +-
 .../roles/mmtests/tasks/install-deps/main.yml      |   8 +-
 .../mmtests/tasks/install-deps/redhat/main.yml     |   8 +-
 .../roles/mmtests/tasks/install-deps/suse/main.yml |   8 +-
 playbooks/roles/mmtests/tasks/main.yaml            |  30 +--
 playbooks/roles/mmtests_compare/tasks/main.yml     |  54 ++---
 playbooks/roles/monitoring/tasks/main.yml          |   6 +-
 .../roles/monitoring/tasks/monitor_collect.yml     |  36 ++--
 .../monitoring/tasks/monitor_collect_only.yml      |  28 +--
 playbooks/roles/monitoring/tasks/monitor_run.yml   |  12 +-
 .../roles/nfsd/tasks/install-deps/debian/main.yml  |   8 +-
 .../roles/nfsd/tasks/install-deps/redhat/main.yml  |   6 +-
 .../roles/nfsd/tasks/install-deps/suse/main.yml    |   8 +-
 playbooks/roles/nfsd/tasks/main.yml                |  14 +-
 playbooks/roles/nfsd_add_export/tasks/main.yml     |  22 +-
 playbooks/roles/nfstest/tasks/main.yml             |  14 +-
 playbooks/roles/pkg/tasks/debian.yml               |   4 +-
 playbooks/roles/pkg/tasks/main.yml                 |   2 +-
 playbooks/roles/postfix_relay_host/tasks/main.yml  |   8 +-
 .../roles/pynfs/tasks/install-deps/debian/main.yml |   2 +-
 playbooks/roles/pynfs/tasks/install-deps/main.yml  |   6 +-
 .../roles/pynfs/tasks/install-deps/redhat/main.yml |   2 +-
 playbooks/roles/pynfs/tasks/main.yml               |  53 +++--
 .../roles/reboot-limit/tasks/do-reboot-compare.yml |  31 ++-
 playbooks/roles/reboot-limit/tasks/do-reboot.yml   |  49 +++--
 .../reboot-limit/tasks/handle-reboot-data.yml      |  22 +-
 .../roles/reboot-limit/tasks/install-deps/main.yml |   8 +-
 .../tasks/install-deps/redhat/main.yml             |   2 +-
 .../reboot-limit/tasks/install-deps/suse/main.yml  |   2 +-
 playbooks/roles/reboot-limit/tasks/main.yml        |  38 ++--
 .../selftests/tasks/install-deps/debian/main.yml   |   4 +-
 .../roles/selftests/tasks/install-deps/main.yml    |   6 +-
 .../selftests/tasks/install-deps/redhat/main.yml   |   2 +-
 .../selftests/tasks/install-deps/suse/main.yml     |   6 +-
 playbooks/roles/selftests/tasks/main.yml           | 119 +++++-----
 playbooks/roles/siw/tasks/main.yml                 |   2 +-
 .../roles/smbd/tasks/install-deps/debian/main.yml  |   6 +-
 .../roles/smbd/tasks/install-deps/redhat/main.yml  |   6 +-
 .../roles/smbd/tasks/install-deps/suse/main.yml    |   4 +-
 playbooks/roles/smbd/tasks/main.yml                |   2 +-
 playbooks/roles/smbd_add_share/tasks/main.yml      |  12 +-
 playbooks/roles/steady_state/tasks/main.yaml       |  12 +-
 .../sysbench/tasks/install-deps/debian/main.yml    |   6 +-
 .../roles/sysbench/tasks/install-deps/main.yml     |   8 +-
 .../sysbench/tasks/install-deps/redhat/main.yml    |   2 +-
 .../sysbench/tasks/install-deps/suse/main.yml      |  12 +-
 playbooks/roles/sysbench/tasks/main.yaml           |   5 +-
 .../roles/sysbench/tasks/mysql-docker/main.yaml    |  86 ++++----
 playbooks/roles/update_etc_hosts/tasks/main.yml    |  20 +-
 .../roles/update_ssh_config_guestfs/tasks/main.yml |  16 +-
 175 files changed, 1405 insertions(+), 1430 deletions(-)

diff --git a/playbooks/monitor-results.yml b/playbooks/monitor-results.yml
index 1fbb469f..9094c6eb 100644
--- a/playbooks/monitor-results.yml
+++ b/playbooks/monitor-results.yml
@@ -5,7 +5,7 @@
   become_method: sudo
   tasks:
     - name: Import optional extra_args file
-      include_vars: "{{ item }}"
+      ansible.builtin.include_vars: "{{ item }}"
       ignore_errors: true
       with_first_found:
         - files:
@@ -16,7 +16,7 @@
       tags: vars
 
     - name: Collect monitoring results without stopping monitoring
-      include_role:
+      ansible.builtin.include_role:
         name: monitoring
         tasks_from: monitor_collect_only
       when:
diff --git a/playbooks/roles/blktests/handlers/main.yml b/playbooks/roles/blktests/handlers/main.yml
index 5179f319..928b2f19 100644
--- a/playbooks/roles/blktests/handlers/main.yml
+++ b/playbooks/roles/blktests/handlers/main.yml
@@ -1,4 +1,4 @@
 ---
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
-  service: name="{{watchdog_service_name}}" state=restarted
+  ansible.builtin.service: name="{{watchdog_service_name}}" state=restarted
diff --git a/playbooks/roles/blktests/tasks/install-deps/debian/main.yml b/playbooks/roles/blktests/tasks/install-deps/debian/main.yml
index 7e9f7bd3..aa75f19d 100644
--- a/playbooks/roles/blktests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: linux
 
 - name: Install nvme tools
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - nvme-cli
     update_cache: true
@@ -17,7 +17,7 @@
 - name: Install blktests build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - bison
       - flex
diff --git a/playbooks/roles/blktests/tasks/install-deps/main.yml b/playbooks/roles/blktests/tasks/install-deps/main.yml
index 4e01d57d..6936b77d 100644
--- a/playbooks/roles/blktests/tasks/install-deps/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/main.yml
@@ -1,12 +1,12 @@
 ---
-- include_role:
+- ansible.builtin.include_role:
     name: pkg
 
 # tasks to install dependencies for oscheck
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml b/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml
index 0002817f..9a11667d 100644
--- a/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install build dependencies for blktests
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   vars:
diff --git a/playbooks/roles/blktests/tasks/install-deps/suse/main.yml b/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
index 1c67d710..2d87539f 100644
--- a/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -24,7 +24,7 @@
     - is_sle|bool
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
@@ -42,22 +42,22 @@
     - not is_sle|bool
 
 - name: By default we assume we have figured out how to add repos on a release
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: true
 
 - name: Lets us disable things which require a zypper repo present
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: false
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
 
 - name: The default is to assume all distros supports nvme-utils
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_nvme_utils: false
 
 - name: Does this release lack nvme-utils
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_nvme_utils: true
   when:
     - is_sle|bool
@@ -167,11 +167,11 @@
     - is_sle15sp2|bool or is_sle15sp3|bool
 
 - name: The default is to assume we do not want to add the benchmark repo
-  set_fact:
+  ansible.builtin.set_fact:
     add_benchmark_repo: false
 
 - name: Does this release require the benchmark repo
-  set_fact:
+  ansible.builtin.set_fact:
     add_benchmark_repo: true
   when:
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool or is_sle12sp5|bool
@@ -179,7 +179,7 @@
 - name: Add benchmark sles12sp5 opensuse repo when needed
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_12_SP5/ benchmark benchmark"
   when:
     - is_sle12sp5|bool
@@ -187,7 +187,7 @@
 - name: Add benchmark sles15sp2 opensuse repo when needed
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP2/ benchmark benchmark"
   when:
     - is_sle15sp2|bool
@@ -195,7 +195,7 @@
 - name: Add benchmark sles15sp3 opensuse repo when needed
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP3/ benchmark benchmark"
   when:
     - is_sle15sp3|bool or is_sle15sp4|bool
@@ -211,11 +211,11 @@
     - add_benchmark_repo|bool
 
 - name: The default is to assume we do not want to to compile nbd manually
-  set_fact:
+  ansible.builtin.set_fact:
     compile_nbd: false
 
 - name: Set when we need to compile nbd
-  set_fact:
+  ansible.builtin.set_fact:
     compile_nbd: true
   when:
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool or is_leap|bool
@@ -232,7 +232,7 @@
     - compile_nbd|bool
 
 - name: git clone nbd
-  git:
+  ansible.builtin.git:
     repo: "{{ nbd_git }}"
     dest: "{{ nbd_data }}"
     update: true
@@ -243,7 +243,7 @@
   tags: ["git", "blktests", "nbd"]
 
 - name: Skip documentation for nbd as we lack the requirement of docbook2man
-  file:
+  ansible.builtin.file:
     path: "{{ nbd_data }}/man/{{ item }}"
     state: touch
   with_items:
@@ -260,25 +260,25 @@
     - compile_nbd|bool
 
 - name: Run autogen for nbd
-  command: "./autogen.sh"
+  ansible.builtin.command: "./autogen.sh"
   tags: ["blktests", "nbd"]
   args:
     chdir: "{{ nbd_data }}"
 
 - name: Run configure for nbd
-  command: "./configure"
+  ansible.builtin.command: "./configure"
   tags: ["blktests", "nbd"]
   args:
     chdir: "{{ nbd_data }}"
 
 - name: Get nproc
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["git", "blktests", "nbd"]
   register: nproc
 
 - name: Build nbd
   tags: ["git", "blktests", "nbd"]
-  make:
+  community.general.make:
     chdir: "{{ nbd_data }}"
     jobs: "{{ nproc.stdout }}"
 
@@ -286,7 +286,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{  make }} install"
+  ansible.builtin.command: "{{  make }} install"
   tags: ["git", "blktests", "nbd"]
   args:
     chdir: "{{ nbd_data }}"
diff --git a/playbooks/roles/blktests/tasks/main.yml b/playbooks/roles/blktests/tasks/main.yml
index 254d7096..67fdc072 100644
--- a/playbooks/roles/blktests/tasks/main.yml
+++ b/playbooks/roles/blktests/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -10,17 +10,16 @@
       skip: true
   tags: vars
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["data_partition"]
 
 # Distro specific
-- include_tasks: install-deps/main.yml
-
+- ansible.builtin.include_tasks: install-deps/main.yml
 - name: git clone kdevops
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
     update: true
@@ -28,7 +27,7 @@
   tags: ["install", "git"]
 
 - name: Copy over our .config
-  copy:
+  ansible.builtin.copy:
     src: "{{ playbook_dir }}/../.config"
     dest: "{{ kdevops_dir }}"
   tags: ["install", "root", "config"]
@@ -38,7 +37,7 @@
 # we don't have to bother with the setup of that partition
 # in the dbench role.
 - name: Compile dbench from source if needed by the distribution
-  include_role:
+  ansible.builtin.include_role:
     name: compile_dbench
   vars:
     dbench_data: "{{ data_path }}/dbench"
@@ -49,13 +48,13 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ blktrace_data }}"
     state: absent
   tags: ["git", "blktests", "blktrace"]
 
 - name: git clone blktrace
-  git:
+  ansible.builtin.git:
     repo: "{{ blktrace_git }}"
     dest: "{{ blktrace_data }}"
     update: true
@@ -63,13 +62,13 @@
   tags: ["git", "blktests", "blktrace"]
 
 - name: Get nproc
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["blktests", "build", "bltkrace"]
   register: nproc
 
 - name: Build blktrace
   tags: ["blktests", "build", "bltkrace"]
-  make:
+  community.general.make:
     chdir: "{{ blktrace_data }}"
     jobs: "{{ nproc.stdout }}"
 
@@ -77,7 +76,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{  make }} install"
+  ansible.builtin.command: "{{  make }} install"
   tags: ["blktests", "install", "root", "blktrace"]
   args:
     chdir: "{{ blktrace_data }}"
@@ -86,13 +85,13 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ blktests_data }}"
     state: absent
   tags: ["git", "blktests"]
 
 - name: git clone blktests
-  git:
+  ansible.builtin.git:
     repo: "{{ blktests_git }}"
     dest: "{{ blktests_data }}"
     update: true
@@ -101,7 +100,7 @@
 
 - name: Build blktests
   tags: ["blktests", "build"]
-  make:
+  community.general.make:
     chdir: "{{ blktests_data }}"
     jobs: "{{ nproc.stdout }}"
 
@@ -109,7 +108,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{  make }} install"
+  ansible.builtin.command: "{{  make }} install"
   tags: ["blktests", "install", "root"]
   args:
     chdir: "{{ blktests_data }}"
@@ -117,7 +116,7 @@
 - name: git pull latest kdevops to ensure expunge list is up to date
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
     update: true
@@ -127,7 +126,7 @@
 - name: Create a symbolic links needed
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     src: "{{ kdevops_dir }}/workflows/blktests/scripts/{{ item }}"
     dest: "{{ blktests_data_target }}/{{ item }}"
     state: link
@@ -140,7 +139,7 @@
 - name: Disable multipathd service for srp blktests tests
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: multipathd
     enabled: false
     state: stopped
@@ -150,36 +149,35 @@
   tags: ["blktests", "run_tests", "reboot"]
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     post_reboot_delay: 10
 
 - name: Set the path to blktests workflow
-  set_fact:
+  ansible.builtin.set_fact:
     blktests_workflow_target: "../workflows/blktests/"
   tags: ["blktests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Set the path where we collect our blktests results
-  set_fact:
+  ansible.builtin.set_fact:
     blktests_results_target: "../workflows/blktests/results/"
     blktests_results_full_path: "{{ topdir_path }}/workflows/blktests/results/"
   tags: ["blktests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Set the path where we collect blktests expunges
-  set_fact:
+  ansible.builtin.set_fact:
     blktests_expunges_target: "../workflows/blktests/expunges/"
   tags: ["blktests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Print uname for each host
   tags: ["blktests", "run_tests"]
-  debug: var=ansible_kernel
-
+  ansible.builtin.debug: var=ansible_kernel
 - name: Get used target kernel version
   tags: ["blktests", "copy_results", "augment_expunge_list"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
@@ -193,7 +191,7 @@
   run_once: true
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ blktests_results_target }}/last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ blktests_results_target }}/last-kernel.txt
   delegate_to: localhost
   tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
@@ -203,7 +201,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "modprobe configfs"
+  ansible.builtin.command: "modprobe configfs"
   when:
     - kdevops_run_blktests|bool
 
@@ -211,13 +209,13 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     state: absent
     path: "{{ blktests_data_target }}/results/"
   tags: ["blktests", "run_tests", "clean_results"]
 
 - name: Verify target test devices are defined
-  fail:
+  ansible.builtin.fail:
     msg: "The variable blktests_test_devs must be defined to run"
   when:
     - kdevops_run_blktests|bool
@@ -225,7 +223,7 @@
   tags: ["blktests", "run_tests"]
 
 - name: Verify target test device is not /dev/null
-  fail:
+  ansible.builtin.fail:
     msg: "The variable blktests_test_devs must not be /dev/null"
   when:
     - blktests_test_devs == "/dev/null"
@@ -238,7 +236,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "test -e {{ verify_dev_list }}"
+  ansible.builtin.command: "test -e {{ verify_dev_list }}"
   when:
     - kdevops_run_blktests|bool
     - blktests_test_devs|length != 0
@@ -250,14 +248,14 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "test -b {{ verify_dev_list }}"
+  ansible.builtin.command: "test -b {{ verify_dev_list }}"
   when:
     - kdevops_run_blktests|bool
     - blktests_test_devs is defined
     - blktests_test_devs|length != 0
 
 - name: Hint to watchdog tests are about to kick off
-  file: path="{{ blktests_workflow_target }}/.begin" state=touch
+  ansible.builtin.file: path="{{ blktests_workflow_target }}/.begin" state=touch
   delegate_to: localhost
   tags: ["blktests", "run_tests"]
   when:
@@ -268,10 +266,9 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: sysctl kernel.printk="8 8 1 7"
-
+  ansible.builtin.command: sysctl kernel.printk="8 8 1 7"
 - name: Check to see if dynamic test limit scope was set
-  set_fact:
+  ansible.builtin.set_fact:
     dynamic_limit_tests: "{{ lookup('ansible.builtin.env', 'LIMIT_TESTS') }}"
   tags: ["blktests", "run_tests", "limit-tests"]
   when:
@@ -279,7 +276,7 @@
     - kdevops_run_blktests|bool
 
 - name: Allow dynamic test override
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: "{{ dynamic_limit_tests }}"
   tags: ["blktests", "run_tests", "limit-tests"]
   when:
@@ -290,7 +287,7 @@
     - dynamic_limit_tests | length > 0
 
 - name: Empty out test limit if None is set
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: ""
   tags: ["blktests", "run_tests", "limit-tests"]
   when:
@@ -300,7 +297,7 @@
     - all_limit_tests == None
 
 - name: Empty out test no limits have been set
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: ""
   tags: ["blktests", "run_tests", "limit-tests"]
   when:
@@ -312,7 +309,7 @@
   vars:
     group: "{{ ansible_host | regex_replace('blktests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
   tags: ["blktests", "run_tests"]
-  command: "{{ kdevops_data }}/workflows/blktests/scripts/oscheck-get-failures.sh --test-group {{ group }}"
+  ansible.builtin.command: "{{ kdevops_data }}/workflows/blktests/scripts/oscheck-get-failures.sh --test-group {{ group }}"
   args:
     chdir: "{{ blktests_data_target }}"
   register: failed_tests_limit
@@ -321,7 +318,7 @@
     - kdevops_run_blktests|bool
 
 - name: Inform user no failures are known
-  fail:
+  ansible.builtin.fail:
     msg: "No known failures for this run! Go find bugs!"
   tags: ["blktests", "run_tests"]
   when:
@@ -330,7 +327,7 @@
     - failed_tests_limit.stdout | replace('\n', ' ') | length == 0
 
 - name: Set test limit to known failed tests
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: "{{ failed_tests_limit.stdout | replace('\n', ' ') }}"
   tags: ["blktests", "run_tests"]
   when:
@@ -338,7 +335,7 @@
     - kdevops_run_blktests|bool
 
 - name: Print list of test limits for this run
-  debug:
+  ansible.builtin.debug:
     msg: "all_limit_tests: {{ all_limit_tests }}"
   tags: ["blktests", "run_tests", "limit-tests"]
   when:
@@ -360,7 +357,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "./oscheck.sh --print-start --print-done --test-group {{ group }} {{ oscheck_extra_args }} {{ all_limit_tests }}"
+  ansible.builtin.command: "./oscheck.sh --print-start --print-done --test-group {{ group }} {{ oscheck_extra_args }} {{ all_limit_tests }}"
   ignore_errors: true
   no_log: true
   args:
@@ -372,7 +369,7 @@
     - kdevops_run_blktests|bool
 
 - name: Remove watchdog hint that tests have started
-  file: path="{{ blktests_workflow_target }}/.begin" state=absent
+  ansible.builtin.file: path="{{ blktests_workflow_target }}/.begin" state=absent
   delegate_to: localhost
   tags: ["blktests", "run_tests"]
   when:
@@ -380,7 +377,7 @@
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ blktests_results_target }}/{{ item }}" state=absent
+  ansible.builtin.file: path="{{ blktests_results_target }}/{{ item }}" state=absent
   delegate_to: localhost
   with_items:
     - "last-run"
@@ -394,7 +391,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ blktests_data_target }}/results/"
     recurse: true
     patterns: "*"
@@ -405,7 +402,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ blktests_results_target }}/last-run/{{ item.path | regex_replace(blktests_data_target + 'results/' | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -416,13 +413,13 @@
     - last_run_results.matched > 0
 
 - name: Augment expunge list just run git diff after this to see new failures found
-  shell: ./python/workflows/blktests/augment_expunge_list.py {{ blktests_results_target }}/last-run/ {{ blktests_expunges_target }}
+  ansible.builtin.shell: ./python/workflows/blktests/augment_expunge_list.py {{ blktests_results_target }}/last-run/ {{ blktests_expunges_target }}
   delegate_to: localhost
   tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Copy last-run files to results directory for target kernel and in place only bad and dmesg files
-  shell: ./python/workflows/blktests/gen-results-dir.py
+  ansible.builtin.shell: ./python/workflows/blktests/gen-results-dir.py
   delegate_to: localhost
   tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
@@ -430,7 +427,7 @@
     - not blktests_results_all
 
 - name: Copy all last-run files to results directory for full results
-  shell: ./python/workflows/blktests/gen-results-dir.py --copy-all
+  ansible.builtin.shell: ./python/workflows/blktests/gen-results-dir.py --copy-all
   delegate_to: localhost
   tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
@@ -438,7 +435,7 @@
     - blktests_results_all | bool
 
 - name: Print blktests new expunge files for which are not yet committed
-  shell: ./python/workflows/blktests/get_new_expunge_files.py {{ blktests_expunges_target }}
+  ansible.builtin.shell: ./python/workflows/blktests/get_new_expunge_files.py {{ blktests_expunges_target }}
   delegate_to: localhost
   register: new_expunges
   tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
@@ -447,13 +444,13 @@
 - name: Inform user if new expunge files have been found
   run_once: true
   tags: ["blktests", "copy_results", "augment_expunge_list"]
-  debug:
+  ansible.builtin.debug:
     msg: "New expunge files found: {{ new_expunges.stdout_lines }}"
   when:
     - new_expunges.stdout != 0
 
 - name: Check if results directory is empty
-  find:
+  ansible.builtin.find:
     paths: "{{ blktests_results_full_path }}/{{ last_kernel }}"
     file_type: any
   register: result_dir_check
@@ -462,7 +459,7 @@
   tags: ["blktests", "copy_results", "augment_expunge_list"]
 
 - name: Inform user if results directory is empty
-  debug:
+  ansible.builtin.debug:
     msg: "Skipping compression: {{ blktests_results_full_path }}/{{ last_kernel }} is empty."
   when: result_dir_check.matched == 0
   run_once: true
diff --git a/playbooks/roles/bootlinux/tasks/build/9p.yml b/playbooks/roles/bootlinux/tasks/build/9p.yml
index b2b52b30..60b4dc80 100644
--- a/playbooks/roles/bootlinux/tasks/build/9p.yml
+++ b/playbooks/roles/bootlinux/tasks/build/9p.yml
@@ -8,7 +8,7 @@
 - name: Install b4 on host
   become: true
   become_method: sudo
-  pip:
+  ansible.builtin.pip:
     name:
       - b4
   when:
@@ -19,7 +19,7 @@
   delegate_to: localhost
 
 - name: Add safe exception for a clone
-  command: "git config --global --add safe.directory {{ target_linux_git }}"
+  ansible.builtin.command: "git config --global --add safe.directory {{ target_linux_git }}"
   tags: ["clone"]
   when:
     - target_linux_git is string and target_linux_git.startswith('/')
@@ -27,7 +27,7 @@
   delegate_to: localhost
 
 - name: Check if target directory exists when using 9p and Linux CLI was set
-  stat:
+  ansible.builtin.stat:
     path: "{{ bootlinux_9p_host_path }}"
   register: target_directory_stat
   run_once: true
@@ -36,7 +36,7 @@
     - bootlinux_tree_set_by_cli|bool
 
 - name: Fail if target directory does not exist when using 9p and Linux CLI was set
-  fail:
+  ansible.builtin.fail:
     msg: "The target directory {{ bootlinux_9p_host_path }} does not exist."
   run_once: true
   delegate_to: localhost
@@ -45,7 +45,7 @@
     - not target_directory_stat.stat.exists
 
 - name: git clone {{ target_linux_tree }} on the control node
-  git:
+  ansible.builtin.git:
     repo: "{{ target_linux_git }}"
     dest: "{{ bootlinux_9p_host_path }}"
     update: true
@@ -62,7 +62,7 @@
   delegate_to: localhost
 
 - name: Copy kernel delta if requested on the control node
-  template:
+  ansible.builtin.template:
     src: "{{ target_linux_extra_patch }}"
     dest: "{{ bootlinux_9p_host_path }}/{{ target_linux_extra_patch }}"
     mode: "0644"
@@ -72,7 +72,7 @@
   delegate_to: localhost
 
 - name: Apply kernel delta if requested on the control node
-  command: "git am {{ target_linux_extra_patch }}"
+  ansible.builtin.command: "git am {{ target_linux_extra_patch }}"
   args:
     chdir: "{{ bootlinux_9p_host_path }}"
   when:
@@ -81,13 +81,13 @@
   delegate_to: localhost
 
 - name: Variable values
-  debug:
+  ansible.builtin.debug:
     msg: "{{ target_linux_apply_patch_message_id }}"
   when:
     - target_linux_apply_patch_message_id is defined
 
 - name: Apply message patch set if requested on the control node
-  shell: b4 am -o - {{target_linux_apply_patch_message_id}} | git am
+  ansible.builtin.shell: b4 am -o - {{target_linux_apply_patch_message_id}} | git am
   args:
     chdir: "{{ bootlinux_9p_host_path }}"
   when:
@@ -98,7 +98,7 @@
   delegate_to: localhost
 
 - name: Copy configuration for Linux {{ target_linux_tree }} on the control node
-  template:
+  ansible.builtin.template:
     src: "{{ linux_config }}"
     dest: "{{ bootlinux_9p_host_path }}/.config"
     mode: "0644"
@@ -106,14 +106,14 @@
   delegate_to: localhost
 
 - name: Set kernel localversion if requested on the control node
-  shell: "echo {{ active_linux_localversion | default(target_linux_localversion) }} > {{ bootlinux_9p_host_path }}/localversion"
+  ansible.builtin.shell: "echo {{ active_linux_localversion | default(target_linux_localversion) }} > {{ bootlinux_9p_host_path }}/localversion"
   when:
     - (active_linux_localversion is defined and active_linux_localversion != "") or (target_linux_localversion is defined and target_linux_localversion != "")
   run_once: true
   delegate_to: localhost
 
 - name: Configure Linux {{ target_linux_tree }} on the control node
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     yes "" | make oldconfig
   register: configure_done
@@ -126,14 +126,14 @@
   delegate_to: localhost
 
 - name: Get nproc on the control node
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["build-linux", "cxl-build"]
   register: nproc_9p
   run_once: true
   delegate_to: localhost
 
 - name: Get kernelversion
-  make:
+  community.general.make:
     chdir: "{{ bootlinux_9p_host_path }}"
     target: kernelversion
   register: target_linux_kernelversion
@@ -144,7 +144,7 @@
   delegate_to: localhost
 
 - name: Generate user kernelrelease {{ target_linux_kernelversion.stdout | default('') }}-{{ active_linux_kernelrelease | default(target_linux_kernelrelease) }}
-  set_fact:
+  ansible.builtin.set_fact:
     target_user_kernelrelease: "{{ target_linux_kernelversion.stdout }}-{{ active_linux_kernelrelease | default(target_linux_kernelrelease) }}"
   tags: ["build-linux"]
   when:
@@ -153,7 +153,7 @@
   delegate_to: localhost
 
 - name: Build {{ target_linux_tree }} {{ target_user_kernelrelease | default('') }} on the control node using {{ nproc_9p.stdout }} threads
-  make:
+  community.general.make:
     jobs: "{{ nproc_9p.stdout }}"
     chdir: "{{ bootlinux_9p_host_path }}"
     params: KERNELRELEASE={{ target_user_kernelrelease }}
@@ -164,7 +164,7 @@
   delegate_to: localhost
 
 - name: Build {{ target_linux_tree }} on the control node using {{ nproc_9p.stdout }} threads
-  make:
+  community.general.make:
     jobs: "{{ nproc_9p.stdout }}"
     chdir: "{{ bootlinux_9p_host_path }}"
   tags: ["build-linux"]
@@ -174,7 +174,7 @@
   delegate_to: localhost
 
 - name: Build {{ target_linux_tree }} cxl_test on the control node using {{ nproc_9p.stdout }} threads
-  make:
+  community.general.make:
     jobs: "{{ nproc_9p.stdout }}"
     chdir: "{{ bootlinux_9p_host_path }}"
     params:
@@ -186,7 +186,7 @@
   delegate_to: localhost
 
 - name: See if snake-oil cert file is present on host
-  stat:
+  ansible.builtin.stat:
     path: "{{ bootlinux_9p_host_path }}/certs/signing_key.pem"
   register: snaik_oil_file_9p
   tags: ["build-linux"]
@@ -194,7 +194,7 @@
   delegate_to: localhost
 
 - name: Ensure we allow world to read the snake oil in case of NFS or 9p read only usage
-  file:
+  ansible.builtin.file:
     path: "{{ bootlinux_9p_host_path }}/certs/signing_key.pem"
     mode: "0755"
   tags: ["build-linux"]
diff --git a/playbooks/roles/bootlinux/tasks/build/targets.yml b/playbooks/roles/bootlinux/tasks/build/targets.yml
index 24b2662d..5dfcbd7a 100644
--- a/playbooks/roles/bootlinux/tasks/build/targets.yml
+++ b/playbooks/roles/bootlinux/tasks/build/targets.yml
@@ -2,7 +2,7 @@
 - name: Install b4
   become: true
   become_method: sudo
-  pip:
+  ansible.builtin.pip:
     name:
       - b4
   when:
@@ -11,7 +11,7 @@
     - ansible_facts['os_family']|lower != 'debian'
 
 - name: git clone {{ target_linux_tree }} on the target nodes
-  git:
+  ansible.builtin.git:
     repo: "{{ target_linux_git }}"
     dest: "{{ target_linux_dir_path }}"
     update: true
@@ -24,7 +24,7 @@
   tags: ["clone"]
 
 - name: Copy kernel delta if requested on the target nodes
-  template:
+  ansible.builtin.template:
     src: "{{ target_linux_extra_patch }}"
     dest: "{{ target_linux_dir_path }}/{{ target_linux_extra_patch }}"
     owner: "{{ data_user }}"
@@ -34,14 +34,14 @@
     - target_linux_extra_patch is defined
 
 - name: Apply kernel delta if requested on the target nodes
-  command: "git am {{ target_linux_extra_patch }}"
+  ansible.builtin.command: "git am {{ target_linux_extra_patch }}"
   args:
     chdir: "{{ target_linux_dir_path }}"
   when:
     - target_linux_extra_patch is defined
 
 - name: Set git user name and email if needed
-  shell: |
+  ansible.builtin.shell: |
     if ! $(git config --get user.email) ; then
       git config --global user.email user@example.com
     fi
@@ -54,13 +54,13 @@
     - bootlinux_b4_am_this_host|bool
 
 - name: Variable values
-  debug:
+  ansible.builtin.debug:
     msg: "{{ target_linux_apply_patch_message_id }}"
   when:
     - target_linux_apply_patch_message_id is defined
 
 - name: Apply message patch set if requested on the target nodes
-  shell: b4 am -o - {{target_linux_apply_patch_message_id}} | git am
+  ansible.builtin.shell: b4 am -o - {{target_linux_apply_patch_message_id}} | git am
   args:
     chdir: "{{ target_linux_dir_path }}"
   when:
@@ -69,7 +69,7 @@
     - bootlinux_b4_am_this_host|bool
 
 - name: Copy configuration for Linux {{ target_linux_tree }} to the target nodes
-  template:
+  ansible.builtin.template:
     src: "{{ linux_config }}"
     dest: "{{ target_linux_dir_path }}/.config"
     owner: "{{ data_user }}"
@@ -77,12 +77,12 @@
     mode: "0644"
 
 - name: Set kernel localversion if requested on the target nodes
-  shell: "echo {{ target_linux_localversion }} > {{ target_linux_dir_path }}/localversion"
+  ansible.builtin.shell: "echo {{ target_linux_localversion }} > {{ target_linux_dir_path }}/localversion"
   when:
     - target_linux_localversion is defined and target_linux_localversion != ""
 
 - name: Configure Linux {{ target_linux_tree }} on the target nodes
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     yes "" | make oldconfig
   register: configure_done
@@ -93,7 +93,7 @@
     executable: /bin/bash
 
 - name: Build {{ target_linux_tree }} on the target nodes
-  command: "{{ target_linux_make_cmd }}"
+  ansible.builtin.command: "{{ target_linux_make_cmd }}"
   register: build
   changed_when: "build.rc == 0"
   args:
@@ -101,7 +101,7 @@
   tags: ["build-linux"]
 
 - name: Build {{ target_linux_tree }} cxl_test on the target nodes
-  command: "{{ target_linux_make_cmd }} M=tools/testing/cxl"
+  ansible.builtin.command: "{{ target_linux_make_cmd }} M=tools/testing/cxl"
   register: build_cxl_test
   changed_when: "build_cxl_test.rc == 0"
   args:
@@ -111,13 +111,13 @@
     - bootlinux_cxl_test|bool
 
 - name: See if snake-oil cert file is present on client
-  stat:
+  ansible.builtin.stat:
     path: "{{ target_linux_dir_path }}/certs/signing_key.pem"
   register: snaik_oil_file
   tags: ["build-linux"]
 
 - name: Ensure we allow world to read the snake oil in case of NFS or 9p read only usage
-  file:
+  ansible.builtin.file:
     path: "{{ target_linux_dir_path }}/certs/signing_key.pem"
     mode: "0755"
   tags: ["build-linux"]
diff --git a/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml b/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml
index 6df6ce09..4edf8e1d 100644
--- a/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-deps/debian/main.yml
@@ -4,14 +4,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
 
 # apt-get build-dep does not capture all requirements
 - name: Install Linux kernel build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - bison
       - flex
diff --git a/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml b/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml
index 6b4a2715..c7b18cd5 100644
--- a/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-deps/redhat/main.yml
@@ -8,7 +8,7 @@
 - name: Install packages we care about
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
@@ -56,7 +56,7 @@
 - name: Install btrfs-progs
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
@@ -105,6 +105,6 @@
 - name: Remove packages that mess with initramfs
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     state: absent
     name: dracut-config-generic
diff --git a/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml b/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml
index 5f7ddefc..7f0cf249 100644
--- a/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-deps/suse/main.yml
@@ -2,7 +2,7 @@
 - name: Install Linux kernel build dependencies for SUSE sources
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - bison
       - flex
diff --git a/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml b/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml
index 7e1fcb70..fab4998a 100644
--- a/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-minimal-deps/debian/main.yml
@@ -13,13 +13,13 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
 
 - name: Install minimal build tools for kernel installation
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - make
       - gcc
diff --git a/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml b/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml
index 8c5cef46..50651ab1 100644
--- a/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-minimal-deps/redhat/main.yml
@@ -5,7 +5,7 @@
 - name: Install minimal build tools for kernel installation
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name:
       - make
       - gcc
@@ -17,7 +17,7 @@
 - name: Install minimal build tools for kernel installation (dnf)
   become: true
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     name:
       - make
       - gcc
diff --git a/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml b/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml
index f2f0b8f9..a4cc27bb 100644
--- a/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml
+++ b/playbooks/roles/bootlinux/tasks/install-minimal-deps/suse/main.yml
@@ -5,7 +5,7 @@
 - name: Install minimal build tools for kernel installation
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - make
       - gcc
diff --git a/playbooks/roles/bootlinux/tasks/main.yml b/playbooks/roles/bootlinux/tasks/main.yml
index 90a90711..21581841 100644
--- a/playbooks/roles/bootlinux/tasks/main.yml
+++ b/playbooks/roles/bootlinux/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -36,7 +36,7 @@
 - name: Install b4
   become: true
   become_method: sudo
-  pip:
+  ansible.builtin.pip:
     name:
       - b4
   when:
@@ -46,28 +46,28 @@
     - not workflow_linux_packaged|bool
 
 - name: Set bootlinux_b4_am_this_host as a fact for dev hosts only
-  set_fact:
+  ansible.builtin.set_fact:
     bootlinux_b4_am_this_host: "{{ ansible_hostname | regex_search('^.*-dev$') is not none }}"
   when:
     - kdevops_baseline_and_dev|bool
     - not workflow_linux_packaged|bool
 
 - name: Enable b4 am all hosts if not deploying dev and baseline nodes
-  set_fact:
+  ansible.builtin.set_fact:
     bootlinux_b4_am_this_host: true
   when:
     - not kdevops_baseline_and_dev|bool
     - not workflow_linux_packaged|bool
 
 - name: Determine if this is a dev node for A/B testing
-  set_fact:
+  ansible.builtin.set_fact:
     bootlinux_is_dev_node: "{{ ansible_hostname | regex_search('^.*-dev$') is not none }}"
   when:
     - kdevops_baseline_and_dev|bool
     - bootlinux_ab_different_ref|bool
 
 - name: Set development group full custom kernel release
-  set_fact:
+  ansible.builtin.set_fact:
     target_linux_kernelrelease: "{{ target_linux_dev_kernelrelease if target_linux_dev_kernelrelease != '' else target_linux_kernelrelease }}"
   when:
     - kdevops_baseline_and_dev|bool
@@ -76,7 +76,7 @@
     - bootlinux_is_dev_node|bool
 
 - name: Set development group local append version
-  set_fact:
+  ansible.builtin.set_fact:
     target_linux_localversion: "{{ target_linux_dev_localversion if target_linux_dev_localversion != '' else target_linux_localversion }}"
   when:
     - kdevops_baseline_and_dev|bool
@@ -85,7 +85,7 @@
     - bootlinux_is_dev_node|bool
 
 - name: Set development kernel parameters for dev nodes
-  set_fact:
+  ansible.builtin.set_fact:
     target_linux_git: "{{ bootlinux_dev_tree if bootlinux_dev_tree != '' else target_linux_git }}"
     target_linux_ref: "{{ target_linux_dev_ref }}"
     target_linux_config: "config-{{ target_linux_dev_ref }}"
@@ -100,7 +100,7 @@
 # Since 9P builds run on localhost with run_once, we can't rely on per-node variables,
 # so we check the ansible_limit to determine which group is being targeted.
 - name: Determine if we're targeting dev nodes for A/B testing
-  set_fact:
+  ansible.builtin.set_fact:
     targeting_dev_nodes: "{{ groups['dev'] is defined and groups['dev'] | length > 0 and (ansible_limit is not defined or 'dev' in ansible_limit) }}"
   run_once: true
   delegate_to: localhost
@@ -109,7 +109,7 @@
     - bootlinux_ab_different_ref|bool
 
 - name: Determine active kernel parameters for A/B testing with 9P
-  set_fact:
+  ansible.builtin.set_fact:
     target_linux_git: "{{ bootlinux_dev_tree if bootlinux_dev_tree != '' else target_linux_git }}"
     active_linux_ref: "{{ target_linux_dev_ref if targeting_dev_nodes|default(false)|bool else target_linux_ref }}"
     active_linux_kernelrelease: "{{ target_linux_dev_kernelrelease if (targeting_dev_nodes|default(false)|bool and bootlinux_tree_custom_kernelrelease|bool) else
@@ -128,7 +128,7 @@
   delegate_to: localhost
   block:
     - name: Print kernel ref settings for 9P debug (localhost context)
-      debug:
+      ansible.builtin.debug:
         msg:
           - "=== 9P BUILD DEBUG (localhost context) ==="
           - "bootlinux_9p: {{ bootlinux_9p }}"
@@ -143,7 +143,7 @@
           - "groups['baseline']: {{ groups['baseline'] | default([]) }}"
 
     - name: End play gracefully for kernel ref debug
-      meta: end_play
+      ansible.builtin.meta: end_play
   when:
     - bootlinux_debug_ref|bool
     - bootlinux_9p|bool
@@ -152,7 +152,7 @@
 - name: Debug kernel ref settings for non-9P builds
   block:
     - name: Print kernel ref settings for non-9P debug (per-node context)
-      debug:
+      ansible.builtin.debug:
         msg:
           - "=== NON-9P BUILD DEBUG ({{ inventory_hostname }}) ==="
           - "bootlinux_9p: {{ bootlinux_9p }}"
@@ -168,7 +168,7 @@
           - "target_linux_dev_localversion: {{ target_linux_dev_localversion }}"
 
     - name: End play gracefully for kernel ref debug
-      meta: end_play
+      ansible.builtin.meta: end_play
   when:
     - bootlinux_debug_ref|bool
     - not bootlinux_9p|bool
@@ -183,7 +183,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  mount:
+  ansible.posix.mount:
     name: "{{ target_linux_dir_path }}"
     src: "{{ bootlinux_9p_mount_tag }}"
     fstype: "9p"
@@ -212,19 +212,19 @@
     - bootlinux_builder|bool
 
 - name: Run uname before
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd_before
   tags: ["uninstall-linux"]
 
 - name: Check kernel uname for uninstall
-  debug:
+  ansible.builtin.debug:
     msg: "Target kernel {{ target_linux_ref }} Running kernel {{ running_kernel }}"
   vars:
     running_kernel: "{{ uname_cmd_before.stdout_lines.0 }}"
   tags: ["uninstall-linux"]
 
 - name: Set kernel version if user did not provide one with KVER command line argument
-  set_fact:
+  ansible.builtin.set_fact:
     uninstall_kernel_ver: "{{ uname_cmd_before.stdout_lines.0 }}"
   tags: ["uninstall-linux"]
   when:
@@ -264,7 +264,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     state: absent
     path: "{{ item.path }}"
   tags: ["uninstall-linux"]
@@ -284,21 +284,20 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: "^GRUB_TERMINAL="
     line: GRUB_TERMINAL="console serial"
 
 - name: Update your boot GRUB file if necessary
   tags: ["uninstall-linux", "manual-update-grub"]
-  import_tasks: update-grub/main.yml
-
+  ansible.builtin.import_tasks: update-grub/main.yml
 - name: Ensure we have DEFAULTDEBUG set
   become: true
   become_flags: "su - -c"
   become_method: sudo
   register: grub_default_saved_cmd
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/sysconfig/kernel
     regexp: "^DEFAULTDEBUG="
     line: DEFAULTDEBUG=yes
@@ -315,7 +314,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ target_linux_make_install_cmd }}"
+  ansible.builtin.command: "{{ target_linux_make_install_cmd }}"
   register: install_done
   changed_when: "install_done.rc == 0"
   args:
@@ -328,7 +327,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ target_linux_make_install_cmd }} M=tools/testing/cxl INSTALL_MOD_DIR=updates"
+  ansible.builtin.command: "{{ target_linux_make_install_cmd }} M=tools/testing/cxl INSTALL_MOD_DIR=updates"
   register: install_done
   changed_when: "install_done.rc == 0"
   args:
@@ -340,23 +339,20 @@
 
 - name: Set the default kernel if necessary
   tags: ["saved"]
-  import_tasks: update-grub/install.yml
-  # when:
-  #   - ansible_facts['os_family']|lower != 'redhat'
-
+  ansible.builtin.import_tasks: update-grub/install.yml
 - name: Reboot into Linux {{ target_linux_tree }}
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
   tags: ["reboot"]
 
 - name: Run uname
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
   tags: ["uname"]
 
 - name: Check kernel uname
-  debug:
+  ansible.builtin.debug:
     msg: "Target kernel {{ target_linux_ref }} Running kernel {{ running_kernel }}"
   vars:
     running_kernel: "{{ uname_cmd.stdout_lines.0 }}"
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/debian.yml b/playbooks/roles/bootlinux/tasks/update-grub/debian.yml
index fb862b3a..c961720a 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/debian.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/debian.yml
@@ -3,7 +3,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "update-grub"
+  ansible.builtin.command: "update-grub"
   register: grub_update
   changed_when: "grub_update.rc == 0"
   tags: ["manual-update-grub"]
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/install.yml b/playbooks/roles/bootlinux/tasks/update-grub/install.yml
index 0b0cb907..9540480d 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/install.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/install.yml
@@ -73,7 +73,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: grub_default_saved_cmd
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: "^GRUB_DEFAULT="
     line: GRUB_DEFAULT=saved
@@ -84,7 +84,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: grub_disable_submenu_cmd
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: "^GRUB_DISABLE_SUBMENU="
     line: GRUB_DISABLE_SUBMENU=y
@@ -92,8 +92,7 @@
 
 - name: Update your boot GRUB file if necessary to ensure GRUB flat earth
   tags: ["uninstall-linux", "manual-update-grub"]
-  import_tasks: update-grub/main.yml
-
+  ansible.builtin.import_tasks: update-grub/main.yml
 - name: Get the name of the kernel release to install (source tree)
   tags:
     - vars
@@ -204,12 +203,12 @@
     - kernel_release_file.stat.exists
 
 - name: Obtain command to set default kernel to boot
-  set_fact:
+  ansible.builtin.set_fact:
     grub_set_default_boot_kernel: grub-set-default
   when: ansible_facts['os_family']|lower != 'redhat' or ansible_facts['distribution_major_version'] | int < 8
 
 - name: Obtain command to set default kernel to boot for RHEL >= 8
-  set_fact:
+  ansible.builtin.set_fact:
     grub_set_default_boot_kernel: grub2-set-default
   when: ansible_facts['os_family']|lower == 'redhat' and ansible_facts['distribution_major_version'] | int >= 8
 
@@ -217,7 +216,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ grub_set_default_boot_kernel }} \"{{ target_boot_entry }}\""
+  ansible.builtin.command: "{{ grub_set_default_boot_kernel }} \"{{ target_boot_entry }}\""
   vars:
     target_boot_entry: "{{ grub_boot_number_cmd.stdout_lines.0 if (grub_boot_number_cmd is defined and grub_boot_number_cmd.stdout_lines is defined) else '' }}"
   tags: ["saved"]
@@ -229,7 +228,7 @@
     - grub_boot_number_cmd.stdout != ""
 
 - name: Itemize kernel and GRUB entry we just selected
-  debug:
+  ansible.builtin.debug:
     msg: "{{ target_kernel }} determined to be {{ target_boot_entry }} on the GRUB2 flat menu. Ran: grub-set-default {{ target_boot_entry }}"
   vars:
     target_kernel: "{{ target_linux_ref | replace('v', '') }}"
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/main.yml b/playbooks/roles/bootlinux/tasks/update-grub/main.yml
index cbd863fe..d0455b00 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/main.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install update-grub
 - name: Distro specific update of your GRUB boot file
-  import_tasks: debian.yml
+  ansible.builtin.import_tasks: debian.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: suse.yml
+- ansible.builtin.import_tasks: suse.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: redhat.yml
+- ansible.builtin.import_tasks: redhat.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml b/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml
index dbcff18f..31b1c474 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/redhat.yml
@@ -3,20 +3,19 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: grub2-editenv - unset menu_auto_hide
-
+  ansible.builtin.command: grub2-editenv - unset menu_auto_hide
 - name: Determine if system was booted using UEFI
-  stat:
+  ansible.builtin.stat:
     path: /sys/firmware/efi/efivars
   register: efi_boot
 
 - name: Use /etc/grub2.cfg as the grub configuration file
-  set_fact:
+  ansible.builtin.set_fact:
     grub_config_file: "/etc/grub2.cfg"
   when: not efi_boot.stat.exists
 
 - name: Use /etc/grub2-efi.cfg as the configuration file
-  set_fact:
+  ansible.builtin.set_fact:
     grub_config_file: "/etc/grub2-efi.cfg"
   when: efi_boot.stat.exists
 
@@ -24,7 +23,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "grub2-mkconfig -o {{ grub_config_file }}"
+  ansible.builtin.command: "grub2-mkconfig -o {{ grub_config_file }}"
   register: grub_update
   changed_when: "grub_update.rc == 0"
   tags: ["manual-update-grub"]
diff --git a/playbooks/roles/bootlinux/tasks/update-grub/suse.yml b/playbooks/roles/bootlinux/tasks/update-grub/suse.yml
index 38f84174..240dfa5f 100644
--- a/playbooks/roles/bootlinux/tasks/update-grub/suse.yml
+++ b/playbooks/roles/bootlinux/tasks/update-grub/suse.yml
@@ -3,7 +3,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "update-bootloader --refresh"
+  ansible.builtin.command: "update-bootloader --refresh"
   register: grub_update
   changed_when: "grub_update.rc == 0"
   tags: ["manual-update-grub"]
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml
index 177fc20f..625e1ee3 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: ["btrfs-progs", "update-cache"]
 
 - name: Install btrfs-progs build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - libext2fs-dev
       - pkg-config
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml
index c4c16d20..93238856 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml
@@ -1,8 +1,8 @@
 ---
 - name: oscheck distribution ospecific setup
-  import_tasks: debian/main.yml
+  ansible.builtin.import_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: suse/main.yml
+- ansible.builtin.import_tasks: suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: redhat/main.yml
+- ansible.builtin.import_tasks: redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml
index 28e7289a..9072f288 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install btrfs-progs build dependencies
   become: true
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     name:
       - e2fsprogs-devel
       - libblkid-devel
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml
index 99eaef87..8fb4a135 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
diff --git a/playbooks/roles/btrfs_progs/tasks/main.yml b/playbooks/roles/btrfs_progs/tasks/main.yml
index cc5958df..e858db15 100644
--- a/playbooks/roles/btrfs_progs/tasks/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -10,35 +10,35 @@
       skip: true
   tags: vars
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["data_partition"]
 
 - name: Install build-deps for btrfs_progs as per each Linux distribution
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
   when:
     - btrfs_progs_build|bool
 
 - name: Assume we won't build btrfs_progs first
-  set_fact:
+  ansible.builtin.set_fact:
     build_btrfs_progs_now: false
   tags: vars
 
 - name: Annotate when we are building btrfs_progs
-  set_fact:
+  ansible.builtin.set_fact:
     build_btrfs_progs_now: true
   when:
     - btrfs_progs_build|bool
   tags: vars
 
 - name: Set bindir for debian systems
-  set_fact:
+  ansible.builtin.set_fact:
     bindir: "/usr/bin"
   when: ansible_facts['os_family']|lower == 'debian'
   tags: vars
 
 - name: Set bindir for non-debian systems
-  set_fact:
+  ansible.builtin.set_fact:
     bindir: "/usr/sbin"
   when: ansible_facts['os_family']|lower != 'debian'
   tags: vars
@@ -46,7 +46,7 @@
 - name: git clone btrfs_progs
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "{{ btrfs_progs_git }}"
     dest: "{{ btrfs_progs_data }}"
     version: "{{ btrfs_progs_version }}"
@@ -54,13 +54,13 @@
     - build_btrfs_progs_now|bool
 
 - name: Run make clean-all for btrfs_progs
-  make:
+  community.general.make:
     chdir: "{{ btrfs_progs_data }}"
     target: clean-all
   ignore_errors: true
 
 - name: Run autogen.sh for btrfs_progs
-  command: "./autogen.sh"
+  ansible.builtin.command: "./autogen.sh"
   tags: ["btrfs_progs", "configure"]
   args:
     chdir: "{{ btrfs_progs_data }}"
@@ -68,7 +68,7 @@
     - build_btrfs_progs_now|bool
 
 - name: Run configure for btrfs_progs
-  command: "./configure --disable-documentation --enable-experimental --bindir={{ bindir }} --prefix=/usr --exec-prefix=/usr --disable-python"
+  ansible.builtin.command: "./configure --disable-documentation --enable-experimental --bindir={{ bindir }} --prefix=/usr --exec-prefix=/usr --disable-python"
   tags: ["btrfs_progs", "configure"]
   args:
     chdir: "{{ btrfs_progs_data }}"
@@ -76,14 +76,14 @@
     - build_btrfs_progs_now|bool
 
 - name: Get nproc
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["btrfs_progs", "configure"]
   register: nproc
   when:
     - build_btrfs_progs_now|bool
 
 - name: Build btrfs_progs
-  make:
+  community.general.make:
     chdir: "{{ btrfs_progs_data }}"
     jobs: "{{ nproc.stdout }}"
   tags: ["btrfs_progs", "build"]
@@ -94,7 +94,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ make }} install"
+  ansible.builtin.command: "{{ make }} install"
   args:
     chdir: "{{ btrfs_progs_data }}"
   tags: ["btrfs_progs", "install"]
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml
index a314514e..adf0de1d 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: ["qemu", "update-cache"]
 
 - name: Install QEMU build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - debhelper-compat
       - glusterfs-common
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml
index 94a78bc2..304f12af 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/fedora/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Verify local build QEMU installation
-  command: "which qemu-system-x86_64"
+  ansible.builtin.command: "which qemu-system-x86_64"
   register: qemu_present
   changed_when: qemu_present.rc == 1
   failed_when: qemu_present.rc != 0 and qemu_present.rc != 1
@@ -9,7 +9,7 @@
 - name: Install QEMU build dependencies
   become: true
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     name:
       - ImageMagick
       - ImageMagick-libs
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/main.yml
index 871908a2..287b8b1c 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional distribution specific variables
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -9,13 +9,13 @@
   tags: vars
 
 - name: Distribution specific setup
-  import_tasks: debian/main.yml
+  ansible.builtin.import_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: suse/main.yml
+- ansible.builtin.import_tasks: suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: redhat/main.yml
+- ansible.builtin.import_tasks: redhat/main.yml
   when:
     - ansible_facts['os_family']|lower == 'redhat'
     - ansible_facts['distribution']|lower != "fedora"
-- import_tasks: fedora/main.yml
+- ansible.builtin.import_tasks: fedora/main.yml
   when: ansible_facts['distribution']|lower == "fedora"
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml
index 91772697..3ab3f7af 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install QEMU build dependencies
   become: true
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     name:
       - glusterfs-common
       - gnutls-dev
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml
index 865c83fa..d0a1a8c7 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
diff --git a/playbooks/roles/build_qemu/tasks/main.yml b/playbooks/roles/build_qemu/tasks/main.yml
index 706ce729..36d647f0 100644
--- a/playbooks/roles/build_qemu/tasks/main.yml
+++ b/playbooks/roles/build_qemu/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,7 +11,7 @@
   tags: vars
 
 - name: Verify local build QEMU installation
-  stat:
+  ansible.builtin.stat:
     path: "{{ qemu_bin_path }}"
   register: qemu_present
   changed_when: true
@@ -21,18 +21,18 @@
     - qemu_build|bool
 
 - name: Install build-deps for QEMU as per each Linux distribution
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
   when:
     - qemu_build|bool
     - qemu_force_install_if_present|bool or not qemu_present.stat.exists
 
 - name: Assume we won't build QEMU first
-  set_fact:
+  ansible.builtin.set_fact:
     build_qemu_now: false
   tags: vars
 
 - name: Annotate when we are building QEMU
-  set_fact:
+  ansible.builtin.set_fact:
     build_qemu_now: true
   when:
     - qemu_build|bool
@@ -40,7 +40,7 @@
   tags: vars
 
 - name: Ensure that {{ local_dev_path }} exists
-  file:
+  ansible.builtin.file:
     path: "{{ local_dev_path }}"
     state: directory
   tags: ["qemu", "build-deps"]
@@ -50,7 +50,7 @@
 - name: git clone QEMU using {{ qemu_git }} on {{ qemu_data }}
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "{{ qemu_git }}"
     dest: "{{ qemu_data }}"
     version: "{{ qemu_version }}"
@@ -58,7 +58,7 @@
     - build_qemu_now|bool
 
 - name: Nuke old build directory
-  file:
+  ansible.builtin.file:
     path: "{{ qemu_build_dir }}"
     state: absent
   tags: ["qemu", "build-deps"]
@@ -66,7 +66,7 @@
     - build_qemu_now|bool
 
 - name: Disable downloads
-  command: "meson subprojects download"
+  ansible.builtin.command: "meson subprojects download"
   tags: ["qemu", "configure"]
   args:
     chdir: "{{ qemu_data }}"
@@ -74,7 +74,7 @@
     - build_qemu_now|bool
 
 - name: Run configure for QEMU
-  command: "./configure --target-list={{ qemu_target }} --disable-download"
+  ansible.builtin.command: "./configure --target-list={{ qemu_target }} --disable-download"
   tags: ["qemu", "configure"]
   args:
     chdir: "{{ qemu_data }}"
@@ -82,14 +82,14 @@
     - build_qemu_now|bool
 
 - name: Get nproc
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["qemu", "configure", "build"]
   register: nproc
   when:
     - build_qemu_now|bool
 
 - name: Build QEMU
-  make:
+  community.general.make:
     chdir: "{{ qemu_data }}"
     jobs: "{{ nproc.stdout }}"
   tags: ["qemu", "build"]
@@ -100,7 +100,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ make }} install"
+  ansible.builtin.command: "{{ make }} install"
   args:
     chdir: "{{ qemu_data }}"
   tags: ["qemu", "install"]
diff --git a/playbooks/roles/common/tasks/main.yml b/playbooks/roles/common/tasks/main.yml
index 6c379362..4c720670 100644
--- a/playbooks/roles/common/tasks/main.yml
+++ b/playbooks/roles/common/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -15,7 +15,7 @@
 - name: git reset kdevops
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
   retries: 3
@@ -27,20 +27,20 @@
     - kdevops_git_reset|bool
 
 - name: Get username we are using
-  command:
+  ansible.builtin.command:
     cmd: whoami
   register: username_on_target
   when:
     - infer_uid_and_group|bool
 
 - name: Set target user as a fact
-  set_fact:
+  ansible.builtin.set_fact:
     target_user: "{{ username_on_target.stdout }}"
   when:
     - infer_uid_and_group|bool
 
 - name: Run getent against the inferred target user
-  getent:
+  ansible.builtin.getent:
     database: passwd
     key: "{{ target_user }}"
   register: getent_running_user
@@ -48,7 +48,7 @@
     - infer_uid_and_group|bool
 
 - name: Run getent against the inferred target group
-  getent:
+  ansible.builtin.getent:
     database: group
     key: "{{ target_user }}"
   register: getent_on_group
@@ -56,7 +56,7 @@
     - infer_uid_and_group|bool
 
 - name: Override user and group with inferred settings if feature is enabled
-  set_fact:
+  ansible.builtin.set_fact:
     data_user: "{{ target_user }}"
     data_group: "{{ ((getent_on_group.values() | first).values() | first).keys() | first }}"
   when:
diff --git a/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml b/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml
index 7c24cc8b..323d8932 100644
--- a/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/compile_dbench/tasks/install-deps/debian/main.yml
@@ -2,18 +2,18 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: linux
 
 - name: Force dbench compilation on Debian
-  set_fact:
+  ansible.builtin.set_fact:
     compile_dbench: false
 
 - name: Install dbench build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - git
       - automake
diff --git a/playbooks/roles/compile_dbench/tasks/install-deps/main.yml b/playbooks/roles/compile_dbench/tasks/install-deps/main.yml
index d4c85df5..558bc9cb 100644
--- a/playbooks/roles/compile_dbench/tasks/install-deps/main.yml
+++ b/playbooks/roles/compile_dbench/tasks/install-deps/main.yml
@@ -1,10 +1,10 @@
 ---
-- include_role:
+- ansible.builtin.include_role:
     name: pkg
 
 # tasks to install dependencies for dbench
 - name: dbench distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 
 # Other distros can be added on a need basis here
diff --git a/playbooks/roles/compile_dbench/tasks/main.yml b/playbooks/roles/compile_dbench/tasks/main.yml
index d06d3f29..45fb0324 100644
--- a/playbooks/roles/compile_dbench/tasks/main.yml
+++ b/playbooks/roles/compile_dbench/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,10 +12,9 @@
 
 # Distro specific
 - name: Install dependencies
-  import_tasks: install-deps/main.yml
-
+  ansible.builtin.import_tasks: install-deps/main.yml
 - name: git clone dbench
-  git:
+  ansible.builtin.git:
     repo: "{{ dbench_git }}"
     dest: "{{ dbench_data }}"
     update: true
@@ -24,7 +23,7 @@
     - compile_dbench|bool
 
 - name: Run autogen for dbench
-  command: "./autogen.sh"
+  ansible.builtin.command: "./autogen.sh"
   tags: ["dbench"]
   args:
     chdir: "{{ dbench_data }}"
@@ -32,7 +31,7 @@
     - compile_dbench|bool
 
 - name: Run configure for dbench
-  command: "./configure"
+  ansible.builtin.command: "./configure"
   tags: ["dbench"]
   args:
     chdir: "{{ dbench_data }}"
@@ -40,7 +39,7 @@
     - compile_dbench|bool
 
 - name: Get nproc
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["git", "dbench"]
   register: nproc
   when:
@@ -48,7 +47,7 @@
 
 - name: Build dbench
   tags: ["git", "dbench"]
-  make:
+  community.general.make:
     chdir: "{{ dbench_data }}"
     jobs: "{{ nproc.stdout }}"
   when:
@@ -58,7 +57,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{  make }} install"
+  ansible.builtin.command: "{{  make }} install"
   tags: ["git", "dbench"]
   args:
     chdir: "{{ dbench_data }}"
diff --git a/playbooks/roles/create_data_partition/tasks/main.yml b/playbooks/roles/create_data_partition/tasks/main.yml
index c1a52299..fca46f07 100644
--- a/playbooks/roles/create_data_partition/tasks/main.yml
+++ b/playbooks/roles/create_data_partition/tasks/main.yml
@@ -1,5 +1,5 @@
 ---
-- include_role:
+- ansible.builtin.include_role:
     name: common
   when:
     - infer_uid_and_group|bool
@@ -40,7 +40,7 @@
       with_dict: "{{ ansible_devices }}"
 
 - name: Create {{ data_path }} partition if not created yet
-  include_role:
+  ansible.builtin.include_role:
     name: create_partition
   vars:
     disk_setup_device: "{{ data_device }}"
diff --git a/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml b/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml
index 365156ed..9cde9592 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Install partition creation base tools
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - btrfs-progs
       - e2fsprogs
diff --git a/playbooks/roles/create_partition/tasks/install-deps/main.yml b/playbooks/roles/create_partition/tasks/install-deps/main.yml
index 4132bd40..749708c9 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install base dependencies to create a partition
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml b/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml
index fb2b8079..8e1e3f6a 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install partition creation base tools
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   vars:
@@ -13,7 +13,7 @@
 - name: Install btrfs-progs
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
diff --git a/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml b/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml
index 19c30f98..45856cc2 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/suse/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -24,7 +24,7 @@
     - is_sle|bool
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
@@ -42,11 +42,11 @@
     - not is_sle|bool
 
 - name: By default we assume we have figured out how to add repos on a release
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: true
 
 - name: Lets us disable things which require a zypper repo present
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: false
   when:
     - is_sle|bool
diff --git a/playbooks/roles/create_partition/tasks/main.yml b/playbooks/roles/create_partition/tasks/main.yml
index beee1ecb..3c19c169 100644
--- a/playbooks/roles/create_partition/tasks/main.yml
+++ b/playbooks/roles/create_partition/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,12 +12,11 @@
 
 # Distro specific
 - name: Include install-deps task
-  import_tasks: install-deps/main.yml
-
+  ansible.builtin.import_tasks: install-deps/main.yml
 - name: Check if {{ disk_setup_path }} is mounted
   become: true
   become_method: sudo
-  command: mountpoint -q {{ disk_setup_path }}
+  ansible.builtin.command: mountpoint -q {{ disk_setup_path }}
   register: mountpoint_stat
   failed_when: false
   changed_when: false
@@ -26,7 +25,7 @@
 - name: Check if {{ disk_setup_path }} is present on /etc/fstab
   become: true
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     awk '{print $2}' /etc/fstab  | grep -q ^"{{ disk_setup_path }}"
   register: fstab_grep_stat
@@ -39,7 +38,7 @@
 - name: Partitions | Read all partitions labels and see if they match {{ disk_setup_label }}
   become: true
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     lsblk -npr -oLABEL | grep -q ^"{{ disk_setup_label }}"
   register: label_grep
@@ -50,7 +49,7 @@
   tags: ["partition"]
 
 - name: Partitions | Check if block {{ disk_setup_device }} exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ disk_setup_device }}"
     follow: true
   register: stat_result
@@ -64,7 +63,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  filesystem:
+  community.general.filesystem:
     state: absent
     fstype: "{{ disk_setup_fstype }}"
     dev: "{{ disk_setup_device }}"
@@ -77,7 +76,7 @@
   tags: ["partition"]
 
 - name: Partitions | Read {{ disk_setup_device }} partitions and mountpoints
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     lsblk -npr -oNAME,MOUNTPOINT {{ disk_setup_device }}
   register: result
@@ -91,7 +90,7 @@
   tags: ["partition"]
 
 - name: Partitions | Collect partition information onto part_mounts
-  set_fact:
+  ansible.builtin.set_fact:
     part_mounts: "{{ result.stdout_lines | map('split') | list }}"
   when: >
     result is success and
@@ -102,7 +101,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  filesystem:
+  community.general.filesystem:
     fstype: "{{ disk_setup_fstype }}"
     dev: "{{ disk_setup_device }}"
     opts: "{{ disk_setup_fs_opts }}"
@@ -124,7 +123,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  mount:
+  ansible.posix.mount:
     path: "{{ disk_setup_path }}"
     src: LABEL="{{ disk_setup_label }}"
     fstype: "{{ disk_setup_fstype }}"
@@ -150,7 +149,7 @@
 - name: Ensure directory {{ disk_setup_path }} is created and with correct permissions
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     state: directory
     path: "{{ disk_setup_path }}"
     owner: "{{ disk_setup_user }}"
diff --git a/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml b/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml
index 8f3a19ec..c1729f7d 100644
--- a/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-create-dc-region/main.yml
@@ -2,10 +2,10 @@
 - name: Create a DC region before DC extents can be added
   become: true
   become_method: sudo
-  shell: "rid=0; region=$(cat /sys/bus/cxl/devices/decoder0.0/create_dc_region); echo $region > /sys/bus/cxl/devices/decoder0.0/create_dc_region; echo 256 > /sys/bus/cxl/devices/$region/interleave_granularity;
-    echo 1 > /sys/bus/cxl/devices/$region/interleave_ways; echo dc$rid >/sys/bus/cxl/devices/decoder2.0/mode; echo 0x40000000 >/sys/bus/cxl/devices/decoder2.0/dpa_size;
-    echo 0x40000000 > /sys/bus/cxl/devices/$region/size; echo  decoder2.0 > /sys/bus/cxl/devices/$region/target0; echo 1 > /sys/bus/cxl/devices/$region/commit; echo
-    $region > /sys/bus/cxl/drivers/cxl_region/bind"
+  ansible.builtin.shell: "rid=0; region=$(cat /sys/bus/cxl/devices/decoder0.0/create_dc_region); echo $region > /sys/bus/cxl/devices/decoder0.0/create_dc_region;
+    echo 256 > /sys/bus/cxl/devices/$region/interleave_granularity; echo 1 > /sys/bus/cxl/devices/$region/interleave_ways; echo dc$rid >/sys/bus/cxl/devices/decoder2.0/mode;
+    echo 0x40000000 >/sys/bus/cxl/devices/decoder2.0/dpa_size; echo 0x40000000 > /sys/bus/cxl/devices/$region/size; echo  decoder2.0 > /sys/bus/cxl/devices/$region/target0;
+    echo 1 > /sys/bus/cxl/devices/$region/commit; echo $region > /sys/bus/cxl/drivers/cxl_region/bind"
   tags: ["cxl-create-dc-region"]
 
 - name: Show the DC region created
@@ -14,6 +14,6 @@
   register: command_output
   tags: ["cxl-create-dc-region"]
 
-- debug:
+- ansible.builtin.debug:
     var: command_output.stdout_lines
   tags: ["cxl-create-dc-region"]
diff --git a/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml b/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
index 8adeba6a..4f86e4cd 100644
--- a/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Add DC extents to the hosts
-  shell: " qmp_port_str={{ qmp_port_str }}; qmp_port=`echo $qmp_port_str | awk -F'[^0-9]+' '{ print $2 }'`;qmp_str=' { \"execute\": \"qmp_capabilities\" } { \"execute\"\
-    : \"cxl-add-dynamic-capacity\", \"arguments\": { \"path\": \"/machine/peripheral/kdevops-cxl-dcd0\", \"region-id\": 0, \"extents\": [ { \"offset\": 0, \"len\"\
-    : 128 }, { \"offset\": 128, \"len\": 256 } ] } } '; echo $qmp_str | ncat localhost $qmp_port"
+  ansible.builtin.shell: " qmp_port_str={{ qmp_port_str }}; qmp_port=`echo $qmp_port_str | awk -F'[^0-9]+' '{ print $2 }'`;qmp_str=' { \"execute\": \"qmp_capabilities\"\
+    \ } { \"execute\": \"cxl-add-dynamic-capacity\", \"arguments\": { \"path\": \"/machine/peripheral/kdevops-cxl-dcd0\", \"region-id\": 0, \"extents\": [ { \"offset\"\
+    : 0, \"len\": 128 }, { \"offset\": 128, \"len\": 256 } ] } } '; echo $qmp_str | ncat localhost $qmp_port"
   register: command_output
   tags: ["cxl-dcd-setup"]
   delegate_to: localhost
 
-- debug: var=command_output.stdout_lines
+- ansible.builtin.debug: var=command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Show DC extents added
@@ -16,7 +16,7 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- debug: var=command_output.stdout_lines
+- ansible.builtin.debug: var=command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Create dax devices for DC region
@@ -26,26 +26,26 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- debug: var=command_output.stdout_lines
+- ansible.builtin.debug: var=command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Show dax devices added
   become: false
-  shell: "ls /dev/dax* -lt"
+  ansible.builtin.shell: "ls /dev/dax* -lt"
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- debug: var=command_output.stdout_lines
+- ansible.builtin.debug: var=command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Convert dax devices to system RAM and online
   become: true
   become_method: sudo
-  shell: "daxctl reconfigure-device --mode=system-ram --no-online dax0.1; daxctl online-memory dax0.1;"
+  ansible.builtin.shell: "daxctl reconfigure-device --mode=system-ram --no-online dax0.1; daxctl online-memory dax0.1;"
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- debug: var=command_output.stdout_lines
+- ansible.builtin.debug: var=command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Show system memory with lsmem
@@ -54,5 +54,5 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- debug: var=command_output.stdout_lines
+- ansible.builtin.debug: var=command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
diff --git a/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml b/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
index 1e5532f1..14a25ff2 100644
--- a/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
@@ -1,20 +1,20 @@
 ---
 - name: create a region from cxl memory
   become: true
-  command: "cxl create-region -m -d decoder0.0 -w 1 mem0 -s 256M"
+  ansible.builtin.command: "cxl create-region -m -d decoder0.0 -w 1 mem0 -s 256M"
   tags: ["cxl-mem-setup"]
 
 - name: create a namespace from cxl memory
   become: true
-  command: "ndctl create-namespace -m dax -r region0"
+  ansible.builtin.command: "ndctl create-namespace -m dax -r region0"
   tags: ["cxl-mem-setup"]
 
 - name: switch daxdevice to be used for system-ram
   become: true
-  command: "daxctl reconfigure-device --mode=system-ram --no-online dax0.0"
+  ansible.builtin.command: "daxctl reconfigure-device --mode=system-ram --no-online dax0.0"
   tags: ["cxl-mem-setup"]
 
 - name: online newly created daxdevice
   become: true
-  command: "daxctl online-memory dax0.0"
+  ansible.builtin.command: "daxctl online-memory dax0.0"
   tags: ["cxl-mem-setup"]
diff --git a/playbooks/roles/cxl/tasks/install-deps/debian/main.yml b/playbooks/roles/cxl/tasks/install-deps/debian/main.yml
index 49d50b18..dee01de8 100644
--- a/playbooks/roles/cxl/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: linux
 
 - name: Install ndctl build deps
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - git
       - meson
diff --git a/playbooks/roles/cxl/tasks/install-deps/generic.yml b/playbooks/roles/cxl/tasks/install-deps/generic.yml
index 27c20855..bc32b716 100644
--- a/playbooks/roles/cxl/tasks/install-deps/generic.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/generic.yml
@@ -2,7 +2,7 @@
 # task to install packages common across supported distros
 - name: Install packages common to all supported distros
   become: true
-  package:
+  ansible.builtin.package:
     name:
       - numactl
     state: present
diff --git a/playbooks/roles/cxl/tasks/install-deps/main.yml b/playbooks/roles/cxl/tasks/install-deps/main.yml
index aa5317f8..77eebf47 100644
--- a/playbooks/roles/cxl/tasks/install-deps/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/main.yml
@@ -1,12 +1,12 @@
 ---
 # tasks to install dependencies for oscheck
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
 
 - name: Install package common to all distros
-  import_tasks: tasks/install-deps/generic.yml
+  ansible.builtin.import_tasks: tasks/install-deps/generic.yml
diff --git a/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml b/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml
index bcc09c99..0a799fbb 100644
--- a/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install build dependencies for ndctl
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   vars:
diff --git a/playbooks/roles/cxl/tasks/install-deps/suse/main.yml b/playbooks/roles/cxl/tasks/install-deps/suse/main.yml
index e8e4ea62..4b91ac6f 100644
--- a/playbooks/roles/cxl/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/suse/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -24,7 +24,7 @@
     - is_sle|bool
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
@@ -42,11 +42,11 @@
     - not is_sle|bool
 
 - name: By default we assume we have figured out how to add repos on a release
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: true
 
 - name: Lets us disable things which require a zypper repo present
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: false
   when:
     - is_sle|bool
@@ -55,7 +55,7 @@
 - name: Install build dependencies for ndctl
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - git-core
       - meson
diff --git a/playbooks/roles/cxl/tasks/main.yml b/playbooks/roles/cxl/tasks/main.yml
index cd5bf95d..a92437d8 100644
--- a/playbooks/roles/cxl/tasks/main.yml
+++ b/playbooks/roles/cxl/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,14 +12,13 @@
 
 # Distro specific
 - name: Install CXL build deps
-  include_tasks: install-deps/main.yml
-
-- include_role:
+  ansible.builtin.include_tasks: install-deps/main.yml
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["ndctl", "data_partition"]
 
 - name: git clone ndctl
-  git:
+  ansible.builtin.git:
     repo: "{{ ndctl_git }}"
     dest: "{{ ndctl_data }}"
     version: "{{ ndctl_version }}"
@@ -27,19 +26,19 @@
   tags: ["git", "ndctl"]
 
 - name: Run meson setup build for ndctl
-  command: "meson setup build"
+  ansible.builtin.command: "meson setup build"
   tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
 
 - name: Enable unit tests as per meson
-  command: "meson configure -Dtest=enabled -Ddestructive=enabled build"
+  ansible.builtin.command: "meson configure -Dtest=enabled -Ddestructive=enabled build"
   tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
 
 - name: Run meson compile -C build for ndctl
-  command: "meson compile -C build"
+  ansible.builtin.command: "meson compile -C build"
   tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
@@ -48,25 +47,25 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "meson install -C build"
+  ansible.builtin.command: "meson install -C build"
   tags: ["ndctl"]
   args:
     chdir: "{{ ndctl_data }}"
 
 - name: Convert cxl memory to kernel managed memory
-  include_tasks: cxl-mem-setup/main.yml
+  ansible.builtin.include_tasks: cxl-mem-setup/main.yml
   tags: ["cxl-mem-setup"]
   when:
     - not kdevops_enable_cxl_dcd|bool
 
 - name: Create a dynamic capacity region for further dc extent add operations
-  include_tasks: cxl-create-dc-region/main.yml
+  ansible.builtin.include_tasks: cxl-create-dc-region/main.yml
   tags: ["cxl-create-dc-region"]
   when:
     - kdevops_enable_cxl_dcd|bool
 
 - name: Setup CXL DCD device as system ram
-  include_tasks: cxl-dcd-setup/main.yml
+  ansible.builtin.include_tasks: cxl-dcd-setup/main.yml
   vars:
     qmp_port_str: "{{ kdevops_qmp_str }}"
   tags: ["cxl-dcd-setup"]
@@ -74,23 +73,23 @@
     - kdevops_enable_cxl_dcd|bool
 
 - name: Set the path to cxl workflow
-  set_fact:
+  ansible.builtin.set_fact:
     cxl_workflow_target: "../workflows/cxl/"
   tags: ["ndctl", "cxl-test-prep", "copy_results"]
 
 - name: Get used target kernel version
   tags: ["ndctl", "cxl-test-prep", "copy_results"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   tags: ["ndctl", "cxl-test-prep", "copy_results"]
   run_once: true
 
 - name: Set the path where we collect our cxl results
-  set_fact:
+  ansible.builtin.set_fact:
     cxl_results_full_path: "{{ topdir_path }}/workflows/selftests/results/"
     cxl_workflow_dir: "../workflows/cxl"
     cxl_results_target: "../workflows/cxl/results/last-run/{{ last_kernel }}"
@@ -98,13 +97,12 @@
 
 - name: Print uname for each host
   tags: ["ndctl", "cxl-test-prep", "copy_results"]
-  debug: var=ansible_kernel
-
+  ansible.builtin.debug: var=ansible_kernel
 - name: Clear out old meson results directory on target hosts
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     state: absent
     path: "{{ ndctl_data }}/{{ ndctl_meson_testlog }}"
   tags: ["ndctl", "cxl-test-prep", "copy_results"]
@@ -114,7 +112,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "modprobe configfs"
+  ansible.builtin.command: "modprobe configfs"
   when:
     - kdevops_run_cxl_tests|bool
 
@@ -122,7 +120,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: sysctl kernel.printk="8 8 1 7"
+  ansible.builtin.command: sysctl kernel.printk="8 8 1 7"
   tags: ["ndctl", "cxl-test-prep", "run_tests"]
   when:
     - kdevops_run_cxl_tests|bool
@@ -131,7 +129,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "modprobe cxl_test"
+  ansible.builtin.command: "modprobe cxl_test"
   tags: ["ndctl", "cxl-test-probe", "run_tests"]
   args:
     chdir: "{{ ndctl_data }}"
@@ -142,7 +140,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "modprobe -r cxl_test"
+  ansible.builtin.command: "modprobe -r cxl_test"
   tags: ["ndctl", "cxl-test-probe", "run_test"]
   args:
     chdir: "{{ ndctl_data }}"
@@ -155,7 +153,7 @@
   become_method: sudo
   ignore_errors: true
   no_log: true
-  command: "meson test -C build --suite cxl"
+  ansible.builtin.command: "meson test -C build --suite cxl"
   tags: ["ndctl", "cxl-test-meson", "run_tests"]
   args:
     chdir: "{{ ndctl_data }}"
@@ -163,7 +161,7 @@
     - kdevops_run_cxl_tests|bool
 
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ cxl_results_target }}/{{ item }}" state=absent
+  ansible.builtin.file: path="{{ cxl_results_target }}/{{ item }}" state=absent
   delegate_to: localhost
   with_items:
     - "last-run"
@@ -173,13 +171,13 @@
   tags: ["ndctl", "cxl-test-meson", "copy_results"]
 
 - name: Create empty last-run directory
-  file: path="{{ cxl_results_target }}/" state=directory
+  ansible.builtin.file: path="{{ cxl_results_target }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["ndctl", "cxl-test-meson", "copy_results"]
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ cxl_results_target }}/last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ cxl_results_target }}/last-kernel.txt
   delegate_to: localhost
   run_once: true
   tags: ["ndctl", "cxl-test-meson", "copy_results"]
@@ -189,7 +187,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ ndctl_data }}"
     recurse: true
     patterns:
@@ -203,7 +201,7 @@
   become_method: sudo
   vars:
     item_with_target: "{{ item.path | basename }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ cxl_results_target }}/{{ item_with_target }}"
     flat: true
diff --git a/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml b/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
index a8e67778..8b3256db 100644
--- a/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
+++ b/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
@@ -2,7 +2,7 @@
 # Only run mirror checks for Debian testing (trixie) where mirror issues are common
 - name: Check hop count on control host
   delegate_to: localhost
-  shell: |
+  ansible.builtin.shell: |
     {{ topdir_path }}/scripts/get-distro-has-hop-count-sources.sh 1
   register: localhost_hop_count
   changed_when: false
@@ -10,7 +10,7 @@
 
 - name: Extract hop1 mirror info from control host (DEB822 format)
   delegate_to: localhost
-  shell: |
+  ansible.builtin.shell: |
     if [ -f /etc/apt/sources.list.d/debian.sources ]; then
       HOST=$(grep -E "^URIs:" /etc/apt/sources.list.d/debian.sources | head -1 | awk '{print $2}' | sed -E 's|https?://||')
       echo "${HOST}"
@@ -22,7 +22,7 @@
 
 - name: Extract hop1 mirror info from control host (legacy format)
   delegate_to: localhost
-  shell: |
+  ansible.builtin.shell: |
     if [ -f /etc/apt/sources.list ] && [ ! -f /etc/apt/sources.list.d/debian.sources ]; then
       LINE=$(grep -v "^#" /etc/apt/sources.list | grep -E "^deb\s+http" | head -1)
       if [ -n "$LINE" ]; then
@@ -36,13 +36,13 @@
   when: localhost_hop_count.stdout == 'y'
 
 - name: Set hop1 mirror variables
-  set_fact:
+  ansible.builtin.set_fact:
     has_hop1_mirror: "{{ localhost_hop_count.stdout == 'y' }}"
     hop1_mirror_full: "{{ localhost_hop1_mirror_deb822.stdout if localhost_hop1_mirror_deb822.stdout != '' else localhost_hop1_mirror_legacy.stdout }}"
   when: localhost_hop_count.stdout == 'y'
 
 - name: Parse hop1 mirror host and path
-  set_fact:
+  ansible.builtin.set_fact:
     hop1_mirror_host: "{{ hop1_mirror_full.split('/')[0] }}"
     hop1_mirror_path: "/{{ hop1_mirror_full.split('/', 1)[1] if '/' in hop1_mirror_full else 'debian' }}"
   when:
@@ -51,12 +51,12 @@
     - hop1_mirror_full != ''
 
 - name: Check for DEB822-style sources
-  stat:
+  ansible.builtin.stat:
     path: /etc/apt/sources.list.d/debian.sources
   register: deb822_sources
 
 - name: Extract current APT mirror hostname (DEB822 format)
-  shell: |
+  ansible.builtin.shell: |
     grep -E "^URIs:" /etc/apt/sources.list.d/debian.sources | head -1 | awk '{print $2}' | sed -E 's|https?://||' | cut -d'/' -f1
   register: apt_mirror_host_deb822
   changed_when: false
@@ -64,7 +64,7 @@
   when: deb822_sources.stat.exists
 
 - name: Extract current APT mirror hostname (legacy format)
-  shell: |
+  ansible.builtin.shell: |
     grep -E "^deb\s+http" /etc/apt/sources.list | head -1 | awk '{print $2}' | sed 's|http://||' | cut -d'/' -f1
   register: apt_mirror_host_legacy
   changed_when: false
@@ -72,12 +72,12 @@
   when: not deb822_sources.stat.exists
 
 - name: Set unified mirror hostname
-  set_fact:
+  ansible.builtin.set_fact:
     apt_mirror_host:
       stdout: "{{ apt_mirror_host_deb822.stdout if deb822_sources.stat.exists else apt_mirror_host_legacy.stdout }}"
 
 - name: Check connectivity to current APT mirror
-  wait_for:
+  ansible.builtin.wait_for:
     host: "{{ apt_mirror_host.stdout }}"
     port: 80
     timeout: 10
@@ -86,7 +86,7 @@
   when: apt_mirror_host.stdout != ""
 
 - name: Display mirror check results
-  debug:
+  ansible.builtin.debug:
     msg: |
       Current APT mirror: {{ apt_mirror_host.stdout | default('Not found') }}
       Mirror connectivity: {{ 'OK' if mirror_connectivity is not failed else 'FAILED' }}
@@ -95,7 +95,7 @@
 - name: Configure APT sources based on hop1 availability and debian testing
   block:
     - name: Check connectivity to hop1 mirror if available
-      wait_for:
+      ansible.builtin.wait_for:
         host: "{{ hop1_mirror_host }}"
         port: 80
         timeout: 10
@@ -109,7 +109,7 @@
     - name: Use hop1 mirror with DEB822 format for debian testing
       block:
         - name: Backup current sources
-          copy:
+          ansible.builtin.copy:
             src: "{{ item }}"
             dest: "{{ item }}.backup"
             remote_src: true
@@ -120,7 +120,7 @@
           ignore_errors: true
 
         - name: Apply hop1 mirror configuration using DEB822 format
-          template:
+          ansible.builtin.template:
             src: debian-hop1-mirror.sources
             dest: /etc/apt/sources.list.d/debian.sources
             owner: root
@@ -129,20 +129,20 @@
           become: true
 
         - name: Remove legacy sources.list if migrating to DEB822
-          file:
+          ansible.builtin.file:
             path: /etc/apt/sources.list
             state: absent
           become: true
           when: not deb822_sources.stat.exists
 
         - name: Update APT cache with hop1 mirror
-          apt:
+          ansible.builtin.apt:
             update_cache: true
             cache_valid_time: 0
           become: true
 
         - name: Inform user about hop1 mirror usage
-          debug:
+          ansible.builtin.debug:
             msg: |
               Using local hop1 mirror with DEB822 format:
               Mirror: {{ hop1_mirror_host }}{{ hop1_mirror_path }}
@@ -158,7 +158,7 @@
 - name: Fall back to official Debian mirrors if current mirror fails
   block:
     - name: Backup current sources (DEB822 format)
-      copy:
+      ansible.builtin.copy:
         src: /etc/apt/sources.list.d/debian.sources
         dest: /etc/apt/sources.list.d/debian.sources.backup
         remote_src: true
@@ -166,7 +166,7 @@
       when: deb822_sources.stat.exists
 
     - name: Backup current sources (legacy format)
-      copy:
+      ansible.builtin.copy:
         src: /etc/apt/sources.list
         dest: /etc/apt/sources.list.backup
         remote_src: true
@@ -174,7 +174,7 @@
       when: not deb822_sources.stat.exists
 
     - name: Apply Debian testing fallback sources using modern DEB822 format
-      template:
+      ansible.builtin.template:
         src: debian-testing-fallback.sources
         dest: /etc/apt/sources.list.d/debian.sources
         owner: root
@@ -183,20 +183,20 @@
       become: true
 
     - name: Remove legacy sources.list if migrating to DEB822
-      file:
+      ansible.builtin.file:
         path: /etc/apt/sources.list
         state: absent
       become: true
       when: not deb822_sources.stat.exists
 
     - name: Update APT cache after mirror change
-      apt:
+      ansible.builtin.apt:
         update_cache: true
         cache_valid_time: 0
       become: true
 
     - name: Inform user about mirror fallback
-      debug:
+      ansible.builtin.debug:
         msg: |
           WARNING: The configured APT mirror '{{ apt_mirror_host.stdout }}' is not accessible.
           Falling back to official Debian testing mirrors using modern DEB822 format:
diff --git a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml
index 184f2b8a..0b561f31 100644
--- a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml
+++ b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/main.yml
@@ -1,5 +1,5 @@
 ---
 - name: Distribution specific setup
-  import_tasks: redhat/main.yml
+  ansible.builtin.import_tasks: redhat/main.yml
   when:
     - ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml
index 0da05c92..0a772dd7 100644
--- a/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml
+++ b/playbooks/roles/devconfig/tasks/config-custom-repos-and-packages/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Add custom repositories
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     src: "{{ item }}"
     dest: "/etc/yum.repos.d/{{ item | basename }}"
     owner: root
@@ -16,7 +16,7 @@
 - name: Install custom packages
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name: "{{ item }}"
   retries: 3
   delay: 5
diff --git a/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml b/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml
index aced29ec..de32292e 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/debian/main.yml
@@ -1,19 +1,19 @@
 ---
 - name: Check if unattended-upgrades is installed
-  command: dpkg-query -W -f='${Status}' unattended-upgrades
+  ansible.builtin.command: dpkg-query -W -f='${Status}' unattended-upgrades
   register: unattended_upgrade_status
   ignore_errors: true
   changed_when: false
   tags: firstconfig
 
 - name: Set fact if unattended-upgrades is installed
-  set_fact:
+  ansible.builtin.set_fact:
     unattended_upgrades_installed: "{{ 'install ok installed' in unattended_upgrade_status.stdout }}"
   when:
     - kdevops_enable_guestfs|bool
 
 - name: Verify unattended-upgrades is not installed
-  fail:
+  ansible.builtin.fail:
     msg: |
       The unattended-upgrades package is installed on the base image, this
       can cause tons of issues with CIs. Fix this by running the following
@@ -30,7 +30,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: "{{ item }}"
     state: stopped
     enabled: false
@@ -71,7 +71,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name: unattended-upgrades
     state: absent
   register: removal_result
@@ -84,7 +84,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item }}"
     state: absent
   loop:
@@ -99,7 +99,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: "{{ item }}"
     state: stopped
     enabled: false
@@ -118,7 +118,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "apt-get update  --allow-releaseinfo-change -o Acquire::Check-Valid-Until=false -o Acquire::Check-Date=false -o Acquire::AllowInsecureRepositories=true
+  ansible.builtin.command: "apt-get update  --allow-releaseinfo-change -o Acquire::Check-Valid-Until=false -o Acquire::Check-Date=false -o Acquire::AllowInsecureRepositories=true
     -o Acquire::MaxDate=10"
   register: release_info_changed
   changed_when: release_info_changed.rc == 0
@@ -167,7 +167,7 @@
   run_once: true
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: |
       Acquire::Check-Valid-Until "false";
       Acquire::Check-Date "false";
@@ -181,7 +181,7 @@
 - name: Configure APT to ignore `Valid-Until` timestamps on the target node
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: |
       Acquire::Check-Valid-Until "false";
       Acquire::Check-Date "false";
@@ -197,7 +197,7 @@
   run_once: true
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   when:
     - distro_debian_has_hop1_sources|bool
@@ -207,7 +207,7 @@
   become: true
   become_method: sudo
   become_flags: "su - -c"
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   when:
     - distro_debian_has_hop1_sources|bool
@@ -216,7 +216,7 @@
 - name: Update apt cache and do dist-upgrade
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
     upgrade: full
   tags: ["apt", "cache"]
@@ -226,14 +226,14 @@
 - name: Reboot system to make the new kernel and modules take effect
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
   when:
     - devconfig_try_upgrade|bool
 
 - name: Install our generic dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - grub2
       - nvme-cli
@@ -273,7 +273,7 @@
 - name: Set up snmp
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: snmpd.conf
     dest: /etc/snmp/snmpd.conf
   when:
@@ -283,7 +283,7 @@
 - name: Enable snmpd service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: snmpd
     enabled: true
     masked: false
@@ -294,7 +294,7 @@
 - name: Start snmpd service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: snmpd
     state: restarted
   tags: snmpd
@@ -304,7 +304,7 @@
 - name: Install and sets up kdump
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - kdump-tools
   when:
@@ -314,7 +314,7 @@
 - name: Install systemd-journal-remote
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - systemd-journal-remote
     update_cache: true
@@ -325,7 +325,7 @@
 - name: Install systemd-timesyncd
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - systemd-timesyncd
   when:
diff --git a/playbooks/roles/devconfig/tasks/install-deps/main.yml b/playbooks/roles/devconfig/tasks/install-deps/main.yml
index 9dcbab3c..fc389ccf 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Gather os_family
-  setup:
+  ansible.builtin.setup:
     gather_subset:
       - "os_family"
   when: ansible_os_family is not defined
   tags: vars_simple
 
 - name: Import optional user secret specific variables
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -16,7 +16,7 @@
   tags: vars
 
 - name: Import optional distribution specific variables
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
diff --git a/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml b/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
index f18cc5b8..1d213a19 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
@@ -13,7 +13,7 @@
     - rhel_activation_key
 
 - name: Check whether custom repofile exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ devconfig_custom_yum_repofile }}"
   register: custom_repofile
   delegate_to: localhost
@@ -22,7 +22,7 @@
 - name: Add custom yum repo
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     src: "{{ devconfig_custom_yum_repofile }}"
     dest: "/etc/yum.repos.d/{{ devconfig_custom_yum_repofile | basename }}"
     owner: root
@@ -53,7 +53,7 @@
 - name: Refresh cache and upgrade all present packages
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "*"
     state: latest
@@ -67,7 +67,7 @@
 - name: Reboot system to make the new kernel and modules take effect
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
   when:
     - devconfig_try_upgrade|bool
 
@@ -78,7 +78,7 @@
     - ansible_distribution != "Fedora"
 
 - name: Build install package list
-  set_fact:
+  ansible.builtin.set_fact:
     packages:
       - bison
       - flex
@@ -108,21 +108,21 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Add btrfs-progs to install package list
-  set_fact:
+  ansible.builtin.set_fact:
     packages: "{{ packages + [ 'btrfs-progs' ] }}"
   when:
     - devconfig_try_install_kdevtools|bool
     - ansible_distribution == 'Fedora'
 
 - name: Add GNU screen to install package list
-  set_fact:
+  ansible.builtin.set_fact:
     packages: "{{ packages + [ 'screen' ] }}"
   when:
     - devconfig_try_install_kdevtools|bool
     - ansible_facts['os_family']|lower != 'redhat' or ansible_facts['distribution_major_version'] | int < 8
 
 - name: Add Tmux to install package list
-  set_fact:
+  ansible.builtin.set_fact:
     packages: "{{ packages + [ 'tmux' ] }}"
   when:
     - devconfig_try_install_kdevtools|bool
@@ -131,7 +131,7 @@
 - name: Install packages we typically care about
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
@@ -144,7 +144,7 @@
 - name: Set up snmp
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: snmpd.conf
     dest: /etc/snmp/snmpd.conf
   when:
@@ -154,7 +154,7 @@
 - name: Enable snmpd service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: snmpd
     enabled: true
     masked: false
@@ -165,7 +165,7 @@
 - name: Start snmpd service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: snmpd
     state: restarted
   tags: snmpd
@@ -175,7 +175,7 @@
 - name: Install systemd-journal-remote
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "systemd-journal-remote"
   retries: 3
@@ -190,7 +190,7 @@
 - name: Install systemd-timesyncd
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: systemd-udev
   retries: 3
diff --git a/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml b/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml
index cfebb587..f837981d 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/suse/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
   tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -26,7 +26,7 @@
   tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
@@ -45,12 +45,12 @@
   tags: ["vars"]
 
 - name: The default is to assume we have figured out how to add repos for each
-  set_fact:
+  ansible.builtin.set_fact:
     repos_will_be_added: true
   tags: vars
 
 - name: Disable things which require a repo to be set but that cannot be done
-  set_fact:
+  ansible.builtin.set_fact:
     repos_will_be_added: false
   when:
     - not devconfig_repos_addon|bool
@@ -59,12 +59,12 @@
   tags: ["vars"]
 
 - name: The default is to assume we are not on sle11 or sle10
-  set_fact:
+  ansible.builtin.set_fact:
     sle10_or_11: false
   tags: snmpd
 
 - name: Are we on SLE11 or SLE10?
-  set_fact:
+  ansible.builtin.set_fact:
     sle10_or_11: true
   when:
     - is_sle|bool
@@ -72,12 +72,12 @@
   tags: ["vars"]
 
 - name: The default is to assume all distros supports nvme-utils
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_nvme_utils: false
   tags: ["vars"]
 
 - name: Does this release lack nvme-utils
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_nvme_utils: true
   when:
     - is_sle|bool
@@ -85,12 +85,12 @@
   tags: ["vars"]
 
 - name: The default is to assume all distros supports git-core
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_git_core: false
   tags: ["vars"]
 
 - name: Does this release lack git-core
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_git_core: true
   when:
     - is_sle|bool
@@ -98,13 +98,13 @@
   tags: ["vars"]
 
 - name: Does this release use the package name git assume false
-  set_fact:
+  ansible.builtin.set_fact:
     use_git_package: false
   tags: ["vars"]
 
 # This needs perl-Error, so fix that first
 - name: Does this release use the package name git
-  set_fact:
+  ansible.builtin.set_fact:
     use_git_package: true
   when:
     - is_sle|bool
@@ -113,12 +113,12 @@
   tags: ["vars"]
 
 - name: The default is to assume all distros supports xfsdump
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_xfsdump: false
   tags: ["vars"]
 
 - name: Does this release lack xfsdump
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_xfsdump: true
   when:
     - is_sle|bool
@@ -126,7 +126,7 @@
   tags: ["vars"]
 
 - name: The default is to assume all distros have fio on the main repo
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_fio_main_repo: false
   tags: ["vars"]
 
@@ -135,7 +135,7 @@
 # registering a system. If we use internal repos, it likely *should*
 # be available.
 - name: Does this release lack fio on the main repository
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_fio_main_repo: true
   when:
     - is_sle|bool
@@ -144,7 +144,7 @@
   tags: ["vars"]
 
 - name: Verify SLE/SLED systems are being registered
-  fail:
+  ansible.builtin.fail:
     msg: "System is SLE/SLED, must include SUSE registration info on playbooks/secret.yml with suse_register_system and suse_registration_code variables set."
   when:
     - not devconfig_repos_addon|bool
@@ -154,7 +154,7 @@
 - name: Prepare packages source list and register machine
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/prepare_suse_repos.sh --register-system-code {{ suse_registration_code }}"
   when:
     - suse_register_system|bool
@@ -162,7 +162,7 @@
     - suse_registration_code != 0
 
 - name: Assume we have the python2 product for sles15sp first
-  set_fact:
+  ansible.builtin.set_fact:
     sle15_has_python2_product: true
   when:
     - suse_register_system|bool
@@ -172,7 +172,7 @@
   tags: ["vars"]
 
 - name: Disable the python2 product for sles15sp4
-  set_fact:
+  ansible.builtin.set_fact:
     sle15_has_python2_product: false
   when:
     - suse_register_system|bool
@@ -186,7 +186,7 @@
 - name: Register for python2 module product when needed
   become: true
   become_method: sudo
-  command: "SUSEConnect -p sle-module-python2/{{ ansible_distribution_version }}/{{ ansible_architecture }}"
+  ansible.builtin.command: "SUSEConnect -p sle-module-python2/{{ ansible_distribution_version }}/{{ ansible_architecture }}"
   when:
     - suse_register_system|bool
     - repos_will_be_added|bool
@@ -197,7 +197,7 @@
 - name: Add extra addon repositories when enabled
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh {{ item.url }} {{ item.name }}"
   with_items:
     - "{{ devconfig_repos_addon_list }}"
@@ -209,7 +209,7 @@
 - name: Install missing python-xml for releases that need it manually
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: "zypper in -y python-xml"
     warn: false
   when:
@@ -221,7 +221,7 @@
 - name: Prepare packages source list
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/prepare_suse_repos.sh"
   when:
     - not suse_register_system|bool
@@ -231,7 +231,7 @@
 - name: Do full upgrade
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     state: dist-upgrade
     name: "*"
   when:
@@ -241,7 +241,7 @@
 - name: Reboot system to make the new kernel and modules take effect
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
   when:
     - repos_will_be_added|bool
     - devconfig_try_upgrade|bool
@@ -249,7 +249,7 @@
 - name: Install nvme tools
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - nvme-cli
     state: present
@@ -261,7 +261,7 @@
 - name: Install fio when possible
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - fio
     state: present
@@ -273,7 +273,7 @@
 - name: Install git-core when possible
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - git-core
     state: present
@@ -285,7 +285,7 @@
 - name: Install git when possible
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - git
     state: present
@@ -297,7 +297,7 @@
 - name: Install xfsdump when possible
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - xfsdump
     state: present
@@ -309,7 +309,7 @@
 - name: Install packages on newer distro when possible
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - bison
       - libaio-devel
@@ -324,7 +324,7 @@
 - name: Install packages not available on sle11 or sle10
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - dump
       - flex
@@ -340,7 +340,7 @@
 - name: Install packages we typically care about
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - e2fsprogs
       - xfsprogs
@@ -367,13 +367,13 @@
     - devconfig_try_install_kdevtools|bool
 
 - name: Set default values for if we install snmp / kdump
-  set_fact:
+  ansible.builtin.set_fact:
     install_snmp: false
     install_kdump: false
   tags: ["vars"]
 
 - name: Set if we install snmp / kdump
-  set_fact:
+  ansible.builtin.set_fact:
     install_snmp: true
     install_kdump: true
   when:
@@ -383,7 +383,7 @@
 - name: Install snmp
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - net-snmp
   when:
@@ -395,7 +395,7 @@
 - name: Set up snmp
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: snmpd.conf
     dest: /etc/snmp/snmpd.conf
   when:
@@ -407,7 +407,7 @@
 - name: Enable snmpd service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: snmpd
     enabled: true
     masked: false
@@ -420,7 +420,7 @@
 - name: Start snmpd service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: snmpd
     state: restarted
   when:
@@ -432,7 +432,7 @@
 - name: Install kdump
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - kdump
   when:
@@ -445,7 +445,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  shell: kdumptool calibrate | grep ^High | awk '{print $2}'
+  ansible.builtin.shell: kdumptool calibrate | grep ^High | awk '{print $2}'
   register: kdump_high
   when:
     - install_kdump|bool
@@ -457,7 +457,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  shell: kdumptool calibrate | grep ^Low | awk '{print $2}'
+  ansible.builtin.shell: kdumptool calibrate | grep ^Low | awk '{print $2}'
   register: kdump_low
   when:
     - install_kdump|bool
@@ -470,7 +470,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: kdump_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)(\s*)crashkernel(.*)'
     line: ""
@@ -485,7 +485,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")((\s*)(.*)*)(\s*)"$'
     backrefs: true
@@ -498,7 +498,7 @@
   tags: ["kdump"]
 
 - name: Update your boot GRUB file if necessary
-  import_tasks: update-grub/main.yml
+  ansible.builtin.import_tasks: update-grub/main.yml
   when:
     - not kdump_grep.changed
     - install_kdump|bool
@@ -508,13 +508,13 @@
 - name: Reboot system to ensure kdump is effective
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
   tags: ["kdump"]
 
 - name: Enable kdump service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: kdump
     enabled: true
     masked: false
@@ -527,7 +527,7 @@
 - name: Start kdump service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: kdump
     state: restarted
   when:
@@ -539,7 +539,7 @@
 - name: Install systemd-journal-remote
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - systemd-journal-remote
   when:
@@ -550,7 +550,7 @@
 - name: Install systemd-timesyncd
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - systemd-timesyncd
   when:
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml
index 60b7187d..9f25ce74 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/debian/main.yml
@@ -3,7 +3,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "apt-get update  --allow-releaseinfo-change"
+  ansible.builtin.command: "apt-get update  --allow-releaseinfo-change"
   register: release_info_changed
   changed_when: "release_info_changed.rc == 0"
   args:
@@ -15,7 +15,7 @@
 - name: Update apt cache and do dist-upgrade
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
     upgrade: full
   tags: ["apt", "cache"]
@@ -25,6 +25,6 @@
 - name: Reboot system to make the new kernel and modules take effect
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
   when:
     - devconfig_try_upgrade|bool
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
index 146d2058..1c706b15 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional user secret specific variables
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -9,7 +9,7 @@
   tags: vars
 
 - name: Import optional distribution specific variables
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -18,18 +18,18 @@
   tags: vars
 
 - name: Set the path where we collect our kotd updates
-  set_fact:
+  ansible.builtin.set_fact:
     kotd_uname_before: "../.kotd.uname-before.txt"
     kotd_uname_after: "../.kotd.uname-after.txt"
   tags: ["vars"]
 
 - name: Get used target kernel version prior to reving kernel
   tags: ["kotd"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Document used target kernel version prior to reving kernel
-  shell: echo {{ uname_cmd.stdout_lines | regex_replace('\]') | regex_replace('\[') }} > {{ kotd_uname_before }}
+  ansible.builtin.shell: echo {{ uname_cmd.stdout_lines | regex_replace('\]') | regex_replace('\[') }} > {{ kotd_uname_before }}
   delegate_to: localhost
   tags: ["kotd"]
   run_once: true
@@ -37,33 +37,33 @@
 # tasks to setup up repos, register system if needed and install
 # preferred devtools packages.
 - name: Distribution specific setup
-  import_tasks: debian/main.yml
+  ansible.builtin.import_tasks: debian/main.yml
   when:
     - ansible_facts['os_family']|lower == 'debian'
     - devconfig_try_refresh_repos|bool
-- import_tasks: suse/main.yml
+- ansible.builtin.import_tasks: suse/main.yml
   when:
     - ansible_facts['os_family']|lower == 'suse'
     - devconfig_try_refresh_repos|bool
-- import_tasks: redhat/main.yml
+- ansible.builtin.import_tasks: redhat/main.yml
   when:
     - ansible_facts['os_family']|lower == 'redhat'
     - devconfig_try_refresh_repos|bool
 
 - name: Check kernel uname
   tags: ["kotd"]
-  debug:
+  ansible.builtin.debug:
     msg: "Running kernel {{ running_kernel }}"
   vars:
     running_kernel: "{{ uname_cmd.stdout_lines.0 }}"
 
 - name: Get used target kernel version after reving kernel
   tags: ["kotd"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Document used target kernel version after reving kernel
-  shell: echo {{ uname_cmd.stdout_lines | regex_replace('\]') | regex_replace('\[') }} > {{ kotd_uname_after }}
+  ansible.builtin.shell: echo {{ uname_cmd.stdout_lines | regex_replace('\]') | regex_replace('\[') }} > {{ kotd_uname_after }}
   delegate_to: localhost
   tags: ["kotd"]
   run_once: true
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml
index 53937616..3b2cc515 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Add KOTD repository
   become: true
   become_method: sudo
-  get_url:
+  ansible.builtin.get_url:
     url: "{{ devconfig_kotd_repo }}"
     dest: /etc/yum.repos.d
   when:
@@ -14,7 +14,7 @@
   become_method: sudo
   vars:
     repo_file: "{{ devconfig_kotd_repo | basename }}"
-  shell: grep -E '\[.*\]' /etc/yum.repos.d/{{ repo_file }} | tr -d '[]'
+  ansible.builtin.shell: grep -E '\[.*\]' /etc/yum.repos.d/{{ repo_file }} | tr -d '[]'
   register: result
   changed_when: false
   when:
@@ -26,7 +26,7 @@
   become_method: sudo
   vars:
     repo_id: "{{ result.stdout }}"
-  shell: dnf -q --repo={{ repo_id }} repoquery --qf "%{version}-%{release}" kernel.x86_64
+  ansible.builtin.shell: dnf -q --repo={{ repo_id }} repoquery --qf "%{version}-%{release}" kernel.x86_64
   register: result
   changed_when: false
   when:
@@ -52,6 +52,6 @@
 - name: Reboot system to make the new kernel and modules take effect
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
   when:
     - devconfig_try_upgrade|bool
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml
index 51705004..15c596eb 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/suse/main.yml
@@ -1,13 +1,13 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
   tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -25,7 +25,7 @@
   tags: ["vars"]
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
@@ -43,12 +43,12 @@
   tags: ["vars"]
 
 - name: The default is to assume we can add repos for a release
-  set_fact:
+  ansible.builtin.set_fact:
     repos_can_be_added: true
   tags: vars
 
 - name: Disable things which require a repo to be set but that cannot be done
-  set_fact:
+  ansible.builtin.set_fact:
     repos_can_be_added: false
   when:
     - is_sle|bool
@@ -56,12 +56,12 @@
   tags: ["vars"]
 
 - name: The default is to assume we are not on sle11 or sle10
-  set_fact:
+  ansible.builtin.set_fact:
     sle10_or_11: false
   tags: snmpd
 
 - name: Are we on SLE11 or SLE10?
-  set_fact:
+  ansible.builtin.set_fact:
     sle10_or_11: true
   when:
     - is_sle|bool
@@ -71,7 +71,7 @@
 - name: Add extra addon repositories when enabled
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh {{ devconfig_kotd_repo }} {{ devconfig_kotd_repo_name }}"
   when:
     - devconfig_enable_kotd|bool
@@ -82,7 +82,7 @@
 - name: Install kotd
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - kernel-default
     update_cache: true
@@ -99,4 +99,4 @@
   tags: ["kotd"]
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
diff --git a/playbooks/roles/devconfig/tasks/main.yml b/playbooks/roles/devconfig/tasks/main.yml
index fda2f730..fc0e929e 100644
--- a/playbooks/roles/devconfig/tasks/main.yml
+++ b/playbooks/roles/devconfig/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,10 +11,10 @@
   tags: vars,vars_simple,vars_extra
 
 - name: Wait for target nodes to become reachable
-  wait_for_connection:
+  ansible.builtin.wait_for_connection:
 
 - name: Gathering facts
-  setup:
+  ansible.builtin.setup:
   tags: always
 
 # Update /etc/hostname first so the change gets picked up by the reboot
@@ -24,7 +24,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: hostname
     dest: /etc/hostname
   tags: hostname
@@ -75,7 +75,7 @@
 
 # Check and fix APT mirrors for Debian testing before installing dependencies
 - name: Check and fix APT mirrors for Debian testing
-  include_tasks: check-apt-mirrors.yml
+  ansible.builtin.include_tasks: check-apt-mirrors.yml
   when:
     - devconfig_debian_testing is defined
     - devconfig_debian_testing | bool
@@ -93,14 +93,14 @@
 
 - name: Check if /mirror directory exists on localhost
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: /mirror
   register: mirror_dir
   run_once: true
 
 - name: Create an empty gitconfig if it doesn't exist on the localhost
   delegate_to: localhost
-  file:
+  ansible.builtin.file:
     path: "{{ dev_gitconfig_src }}"
     state: touch
     mode: "0644"
@@ -110,7 +110,7 @@
 
 - name: Check if any safe.directory entries exist
   delegate_to: localhost
-  command: git config --global --get-all safe.directory
+  ansible.builtin.command: git config --global --get-all safe.directory
   register: git_safe_dirs
   failed_when: false
   changed_when: false
@@ -119,7 +119,7 @@
 
 - name: Add safe.directory = * if not already set
   delegate_to: localhost
-  command: git config --global --add safe.directory '*'
+  ansible.builtin.command: git config --global --add safe.directory '*'
   when:
     - mirror_dir.stat.exists
     - "'*' not in git_safe_dirs.stdout_lines"
@@ -127,28 +127,28 @@
 
 - name: Check if the developer has a git config
   delegate_to: localhost
-  stat: path={{ dev_gitconfig_src }}
+  ansible.builtin.stat: path={{ dev_gitconfig_src }}
   run_once: true
   register: dev_git_config_file
 
 - name: Copy the developer's gitconfig *if* it exists
-  copy: src={{ dev_gitconfig_src }} dest={{ dev_gitconfig_dest }}
+  ansible.builtin.copy: src={{ dev_gitconfig_src }} dest={{ dev_gitconfig_dest }}
   when: dev_git_config_file.stat.exists
 
 - name: Copy the developer's gitconfig *if* it exists to root
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy: src={{ dev_gitconfig_dest }} dest=/root/ remote_src=yes
+  ansible.builtin.copy: src={{ dev_gitconfig_dest }} dest=/root/ remote_src=yes
   when: dev_git_config_file.stat.exists
 
 - name: Check if the system has a user vimrc file
-  stat: path=~/.vimrc
+  ansible.builtin.stat: path=~/.vimrc
   register: dev_vimrc_file
   tags: vimrc
 
 - name: Copy over our default kernel hacking vimrc
-  template:
+  ansible.builtin.template:
     src: vimrc
     dest: ~/.vimrc
   tags: vimrc
@@ -158,7 +158,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat: path=~/.vimrc
+  ansible.builtin.stat: path=~/.vimrc
   register: dev_root_vimrc_file
   tags: vimrc
 
@@ -166,7 +166,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: vimrc
     dest: ~/.vimrc
   tags: vimrc
@@ -174,16 +174,16 @@
 
 - name: Check if the developer has a configuration file with favorite bash hacks
   delegate_to: localhost
-  stat: path={{ dev_bash_config_hacks_src }}
+  ansible.builtin.stat: path={{ dev_bash_config_hacks_src }}
   register: dev_bash_config_file
 
 - name: Copy the developer's favorite bash hacks over *if* it exists
-  copy: src={{ dev_bash_config_hacks_src }} dest={{ dev_bash_config_hacks_dest }}
+  ansible.builtin.copy: src={{ dev_bash_config_hacks_src }} dest={{ dev_bash_config_hacks_dest }}
   when: dev_bash_config_file.stat.exists
   register: dev_bash_config_file_copied
 
 - name: Source the developer's bash hack script
-  shell: |
+  ansible.builtin.shell: |
     SOURCE_BASH_HACKS="test -s {{ dev_bash_config_hacks_generic }}  && . {{ dev_bash_config_hacks_generic }} || true"
     if [ -f {{ dev_bash_config }} ]; then
       if ! grep "{{ dev_bash_config_hacks_name }}" {{ dev_bash_config }}  2>&1 > /dev/null ; then
@@ -202,7 +202,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy: src={{ dev_bash_config_hacks_src }} dest=/root/
+  ansible.builtin.copy: src={{ dev_bash_config_hacks_src }} dest=/root/
   when: dev_bash_config_file.stat.exists
   register: dev_bash_config_file_copied_root
 
@@ -210,7 +210,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     SOURCE_BASH_HACKS="test -s {{ dev_bash_config_hacks_generic }}  && . {{ dev_bash_config_hacks_generic }} || true"
     if [ -f {{ dev_bash_config_root }} ]; then
       if ! grep "{{ dev_bash_config_hacks_name }}" {{ dev_bash_config_root }}  2>&1 > /dev/null ; then
@@ -226,7 +226,7 @@
   when: dev_bash_config_file_copied_root is success
 
 - name: Check to see if system has GRUB2
-  stat: path=/etc/default/grub
+  ansible.builtin.stat: path=/etc/default/grub
   register: grub2_config_file
   tags: ["console"]
 
@@ -234,7 +234,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat: path=/etc/default/grub.d/15_timeout.cfg
+  ansible.builtin.stat: path=/etc/default/grub.d/15_timeout.cfg
   register: stupid_cloud_grub_timeout
   when:
     - devconfig_enable_console|bool
@@ -244,7 +244,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: /etc/default/grub.d/15_timeout.cfg
     state: absent
   when:
@@ -256,7 +256,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: grub_cmdline_linux_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)'
     line: ""
@@ -271,7 +271,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: cmdline_linux_empty_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX)=\"\"'
     line: ""
@@ -287,7 +287,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: console_blank_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)(\s*)consoleblank(.*)'
     line: ""
@@ -303,7 +303,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: console_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)(\s*)console(.*)'
     line: ""
@@ -318,7 +318,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")((\s*)(.*)*)(\s*)"$'
     backrefs: true
@@ -334,7 +334,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX=\")((\s*)(.*)*)(\s*)"$'
     backrefs: true
@@ -350,7 +350,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_CMDLINE_LINUX)=\"\"'
     line: 'GRUB_CMDLINE_LINUX="{{ devconfig_kernel_console }}"'
@@ -367,7 +367,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     insertafter: EOF
     regexp: '^(GRUB_CMDLINE_LINUX=\")(.*)'
@@ -383,7 +383,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: grub_timeout_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: "^(GRUB_TIMEOUT=)(.*)"
     line: ""
@@ -397,7 +397,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: "^(GRUB_TIMEOUT=)(.*)"
     line: "GRUB_TIMEOUT={{ devconfig_grub_timeout }}"
@@ -411,7 +411,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     insertafter: EOF
     regexp: "^(GRUB_TIMEOUT=)(.*)"
@@ -427,7 +427,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: serial_command_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_SERIAL_COMMAND=\")(.*)\"\s*"'
     line: ""
@@ -441,7 +441,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: '^(GRUB_SERIAL_COMMAND=\")((\s*)(.*)*)(\s*)"$'
     backrefs: true
@@ -456,7 +456,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     insertafter: EOF
     regexp: '^(GRUB_SERIAL_COMMAND=\")(.*)'
@@ -472,7 +472,7 @@
   become_flags: "su - -c"
   become_method: sudo
   register: grub_terminal_grep
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: "^(GRUB_TERMINAL)=(.*)"
     line: ""
@@ -490,7 +490,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     regexp: "^(GRUB_TERMINAL=)(.*)$"
     backrefs: true
@@ -505,7 +505,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/default/grub
     insertafter: EOF
     regexp: "^(GRUB_TERMINAL=)(.*)$"
@@ -528,7 +528,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "journal-upload.conf.j2"
     dest: "/etc/systemd/journal-upload.conf"
     force: true
@@ -579,7 +579,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "timesyncd.conf.j2"
     dest: "/etc/systemd/timesyncd.conf"
     force: true
@@ -592,7 +592,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "timedatectl set-ntp true"
+  ansible.builtin.command: "timedatectl set-ntp true"
   when:
     - devconfig_enable_systemd_timesyncd_ntp|bool
 
@@ -612,13 +612,13 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "timedatectl status"
+  ansible.builtin.command: "timedatectl status"
   when:
     - devconfig_enable_systemd_timesyncd|bool
 
 - name: Gather ipv4 address
   tags: ["journal_ln", "vars_extra"]
-  setup:
+  ansible.builtin.setup:
     gather_subset:
       - "all_ipv4_addresses"
   when:
@@ -626,7 +626,7 @@
 
 - name: "Group up facts we'll give to the host"
   tags: ["journal_ln"]
-  set_fact:
+  ansible.builtin.set_fact:
     node_host_ip: "{{ ansible_ssh_host}} {{ ansible_default_ipv4.address }}"
   delegate_facts: true
   when: devconfig_enable_systemd_journal_remote|bool
@@ -637,11 +637,11 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ topdir_path }}/workflows/kdevops/scripts/jounal-ln.sh {{ devconfig_systemd_journal_remote_path }} {{ node_host_ip }}"
+  ansible.builtin.command: "{{ topdir_path }}/workflows/kdevops/scripts/jounal-ln.sh {{ devconfig_systemd_journal_remote_path }} {{ node_host_ip }}"
   when: devconfig_enable_systemd_journal_remote|bool
 
 - name: Enables systemd's watchdog
-  stat: path=/etc/systemd/system.conf
+  ansible.builtin.stat: path=/etc/systemd/system.conf
   register: systemd_config_file
   tags: ["systemd_watchdog"]
 
@@ -649,7 +649,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/systemd/system.conf
     insertafter: EOF
     regexp: "^(RuntimeWatchdogSec=)(.*)$"
@@ -663,7 +663,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/systemd/system.conf
     insertafter: EOF
     regexp: "^(RebootWatchdogSec=)(.*)$"
@@ -677,7 +677,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/systemd/system.conf
     insertafter: EOF
     regexp: "^(KExecWatchdogSec=)(.*)$"
diff --git a/playbooks/roles/fstests/handlers/main.yml b/playbooks/roles/fstests/handlers/main.yml
index 5179f319..928b2f19 100644
--- a/playbooks/roles/fstests/handlers/main.yml
+++ b/playbooks/roles/fstests/handlers/main.yml
@@ -1,4 +1,4 @@
 ---
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
-  service: name="{{watchdog_service_name}}" state=restarted
+  ansible.builtin.service: name="{{watchdog_service_name}}" state=restarted
diff --git a/playbooks/roles/fstests/tasks/install-deps/debian/main.yml b/playbooks/roles/fstests/tasks/install-deps/debian/main.yml
index 44a7d91e..cbcb3788 100644
--- a/playbooks/roles/fstests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -13,21 +13,21 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: linux
 
 - name: Install NVMe tools
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - nvme-cli
 
 - name: Install fstests build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - bison
       - flex
@@ -80,7 +80,7 @@
 - name: Install dependencies for building xfsprogs
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - libinih-dev
       - liburcu-dev
diff --git a/playbooks/roles/fstests/tasks/install-deps/main.yml b/playbooks/roles/fstests/tasks/install-deps/main.yml
index 5cffe6b7..c20fcc99 100644
--- a/playbooks/roles/fstests/tasks/install-deps/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/main.yml
@@ -2,7 +2,7 @@
 - name: Ensure required /media/ directories are created
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     state: directory
     path: "/media/{{ item }}"
   with_items:
@@ -10,14 +10,14 @@
     - "{{ sparsefiles_path }}"
     - test
 
-- include_role:
+- ansible.builtin.include_role:
     name: pkg
 
 # tasks to install dependencies for oscheck
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml b/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml
index 815505b8..c1bd7f82 100644
--- a/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/redhat/main.yml
@@ -12,7 +12,7 @@
 - name: Install build dependencies for fstests
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
@@ -76,7 +76,7 @@
 - name: Install xfsprogs-xfs_scrub
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
@@ -92,7 +92,7 @@
 - name: Install btrfs-progs
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
@@ -108,7 +108,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     name: "{{ packages }}"
     enablerepo: "*"
   retries: 3
diff --git a/playbooks/roles/fstests/tasks/install-deps/suse/main.yml b/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
index eb1cc184..f6f62830 100644
--- a/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -24,7 +24,7 @@
     - is_sle|bool
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
@@ -42,33 +42,33 @@
     - not is_sle|bool
 
 - name: By default we assume we have figured out how to add repos on a release
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: true
 
 - name: Lets us disable things which require a zypper repo present
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: false
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
 
 - name: The default is to assume all distros have the indent package
-  set_fact:
+  ansible.builtin.set_fact:
     has_indent: true
 
 - name: Does this release lack indent
-  set_fact:
+  ansible.builtin.set_fact:
     has_indent: false
   when:
     - is_sle|bool
     - is_sle15sp3|bool or is_sle15sp4|bool
 
 - name: The default is to assume all distros supports nvme-utils
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_nvme_utils: false
 
 - name: Does this release lack nvme-utils
-  set_fact:
+  ansible.builtin.set_fact:
     lacks_nvme_utils: true
   when:
     - is_sle|bool
@@ -173,11 +173,11 @@
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool
 
 - name: The default is to assume we do not want to add the benchmark repo
-  set_fact:
+  ansible.builtin.set_fact:
     add_benchmark_repo: false
 
 - name: Does this release require the benchmark repo
-  set_fact:
+  ansible.builtin.set_fact:
     add_benchmark_repo: true
   when:
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool or is_sle12sp5|bool
@@ -185,7 +185,7 @@
 - name: add benchmark sles12sp5 openSUSE repo when needed
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_12_SP5/ benchmark benchmark"
   when:
     - is_sle12sp5|bool
@@ -193,7 +193,7 @@
 - name: Add benchmark sles15sp2 openSUSE repo when needed
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP2/ benchmark benchmark"
   when:
     - is_sle15sp2|bool
@@ -201,7 +201,7 @@
 - name: Add benchmark sles15sp3 openSUSE repo when needed
   become: true
   become_method: sudo
-  script:
+  ansible.builtin.script:
     cmd: "{{ role_path }}/scripts/add-suse-repo-if-not-found.sh http://download.opensuse.org/repositories/benchmark/SLE_15_SP3/ benchmark benchmark"
   when:
     - is_sle15sp3|bool or is_sle15sp4|bool
diff --git a/playbooks/roles/fstests/tasks/main.yml b/playbooks/roles/fstests/tasks/main.yml
index 66271133..54fc5fa2 100644
--- a/playbooks/roles/fstests/tasks/main.yml
+++ b/playbooks/roles/fstests/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -10,19 +10,18 @@
       skip: true
   tags: vars
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["oscheck", "data_partition"]
 
 # Distro specific
 - name: Install dependencies
-  include_tasks: install-deps/main.yml
-
+  ansible.builtin.include_tasks: install-deps/main.yml
 - name: Check if there's an existing xfsprogs directory
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: "{{ fstests_xfs_xfsprogs_data }}"
   register: xfsprogs_dir
   tags: ["oscheck", "git", "fstests"]
@@ -35,21 +34,21 @@
   when:
     - fstests_nfs_section_pnfs|bool
 
-- include_role:
+- ansible.builtin.include_role:
     name: common
   when:
     - infer_uid_and_group|bool
 
 - name: Get nproc
   tags: ["oscheck", "fstests", "build"]
-  command: "nproc"
+  ansible.builtin.command: "nproc"
   register: nproc
 
 - name: Ensure xfsprogs is not root owned
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ fstests_xfs_xfsprogs_data }}"
     state: directory
     recurse: true
@@ -62,7 +61,7 @@
     - xfsprogs_dir.stat.exists
 
 - name: Clean old xfsprogs build
-  command: "git clean -f -x -d"
+  ansible.builtin.command: "git clean -f -x -d"
   args:
     chdir: "{{ fstests_xfs_xfsprogs_data }}"
   tags: ["oscheck", "git", "fstests"]
@@ -71,7 +70,7 @@
     - xfsprogs_dir.stat.exists
 
 - name: Clone xfsprogs git repository
-  git:
+  ansible.builtin.git:
     repo: "{{ fstests_xfs_xfsprogs_git }}"
     dest: "{{ fstests_xfs_xfsprogs_data }}"
     update: true
@@ -84,14 +83,14 @@
   when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Configure xfsprogs
-  make:
+  community.general.make:
     chdir: "{{ fstests_xfs_xfsprogs_data }}"
     target: configure
   tags: ["oscheck", "fstests", "build"]
   when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Build xfsprogs
-  make:
+  community.general.make:
     chdir: "{{ fstests_xfs_xfsprogs_data }}"
     jobs: "{{ nproc.stdout }}"
   tags: ["oscheck", "fstests", "build"]
@@ -101,7 +100,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  make:
+  community.general.make:
     target: install
     params:
       DIST_ROOT: "{{ fstests_xfs_xfsprogs_install_path }}"
@@ -113,7 +112,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: "{{ fstests_xfsdump_data }}"
   register: xfdump_dir
   tags: ["oscheck", "git", "fstests"]
@@ -124,7 +123,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ fstests_xfsdump_data }}"
     recurse: true
     owner: "{{ data_user }}"
@@ -135,7 +134,7 @@
     - xfdump_dir.stat.exists
 
 - name: Clean old xfsdump build
-  command: "git clean -f -x -d"
+  ansible.builtin.command: "git clean -f -x -d"
   args:
     chdir: "{{ fstests_xfsdump_data }}"
   tags: ["oscheck", "git", "fstests"]
@@ -144,7 +143,7 @@
     - xfdump_dir.stat.exists
 
 - name: git clone xfsdump
-  git:
+  ansible.builtin.git:
     repo: "{{ fstests_xfsdump_git }}"
     dest: "{{ fstests_xfsdump_data }}"
     update: true
@@ -155,7 +154,7 @@
 
 - name: Build xfsdump
   tags: ["fstests", "deps"]
-  make:
+  community.general.make:
     chdir: "{{ fstests_xfsdump_data }}"
     jobs: "{{ nproc.stdout }}"
   when:
@@ -165,7 +164,7 @@
   become: true
   become_method: sudo
   tags: ["fstests", "deps"]
-  make:
+  community.general.make:
     chdir: "{{ fstests_xfsdump_data }}"
     target: install
   when:
@@ -175,7 +174,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: "/root/.bashrc"
     line: "export PATH={{ fstests_xfs_xfsprogs_install_path }}/usr/sbin/:$PATH"
     state: present
@@ -183,7 +182,7 @@
   when: "fstests_xfs_build_custom_xfsprogs|bool"
 
 - name: Create {{ truncated_path }} if needed
-  include_role:
+  ansible.builtin.include_role:
     name: create_partition
   vars:
     disk_setup_device: "{{ sparsefiles_device }}"
@@ -200,7 +199,7 @@
 - name: git clone kdevops
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
     version: "{{ kdevops_git_version }}"
@@ -211,7 +210,7 @@
   tags: ["oscheck", "install", "git"]
 
 - name: Copy over our .config
-  copy:
+  ansible.builtin.copy:
     src: "{{ playbook_dir }}/../.config"
     dest: "{{ kdevops_dir }}"
   tags: ["oscheck", "install", "root", "config"]
@@ -222,7 +221,7 @@
   become_method: sudo
   environment:
     FSTYP: "{{ fstests_fstyp }}"
-  command: "{{  make }} install"
+  ansible.builtin.command: "{{  make }} install"
   tags: ["oscheck", "install", "root"]
   args:
     chdir: "{{ kdevops_dir }}"
@@ -232,7 +231,7 @@
 # we don't have to bother with the setup of that partition
 # in the dbench role.
 - name: Compile dbench from source if needed by the distribution
-  include_role:
+  ansible.builtin.include_role:
     name: compile_dbench
   vars:
     dbench_data: "{{ data_path }}/dbench"
@@ -243,7 +242,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item }}"
     state: absent
   with_items:
@@ -253,7 +252,7 @@
   tags: ["oscheck", "git", "fstests", "build"]
 
 - name: git clone fstests
-  git:
+  ansible.builtin.git:
     repo: "{{ fstests_git }}"
     dest: "{{ fstests_data }}"
     version: "{{ fstests_git_version }}"
@@ -275,31 +274,31 @@
 
 - name: Build the configure file for fstests
   tags: ["oscheck", "fstests", "build"]
-  command: "make configure"
+  ansible.builtin.command: "make configure"
   args:
     chdir: "{{ fstests_data }}"
 
 - name: Configure fstests
   tags: ["oscheck", "fstests", "build"]
-  command: "./configure --prefix={{ fstests_data_prefix }}"
+  ansible.builtin.command: "./configure --prefix={{ fstests_data_prefix }}"
   args:
     chdir: "{{ fstests_data }}"
 
 - name: Get nproc
   tags: ["oscheck", "fstests", "build"]
-  command: "nproc"
+  ansible.builtin.command: "nproc"
   register: nproc
 
 - name: Build fstests
   tags: ["oscheck", "fstests", "build"]
-  make:
+  community.general.make:
     chdir: "{{ fstests_data }}"
     jobs: "{{ nproc.stdout }}"
 
 - name: Copy udev rules for zoned
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "64-btrfs-zoned.rules"
     dest: "/usr/lib/udev/rules.d/"
     owner: "{{ data_user }}"
@@ -312,7 +311,7 @@
 - name: git pull latest kdevops to ensure expunge lists and scripts are up to date
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "{{ kdevops_git }}"
     dest: "{{ kdevops_data }}"
     version: "{{ kdevops_git_version }}"
@@ -327,7 +326,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{  make }} install"
+  ansible.builtin.command: "{{  make }} install"
   tags: ["oscheck", "fstests", "install", "root"]
   args:
     chdir: "{{ fstests_data }}"
@@ -347,7 +346,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_fstests_setup }}"
     dest: "/root/{{ kdevops_fstests_setup }}"
     owner: "root"
@@ -361,7 +360,7 @@
   become_flags: "su - -c"
   become_method: sudo
   tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install"]
-  shell: |
+  ansible.builtin.shell: |
     SOURCE_KDEVOPS_FSTESTS_SETUP="test -s ~/{{ kdevops_fstests_setup }} && . ~/{{ kdevops_fstests_setup }} || true"
     if [ -f {{ dev_bash_config }} ]; then
       if ! grep "{{ kdevops_fstests_setup_name }}" {{ dev_bash_config }}  2>&1 > /dev/null ; then
@@ -416,7 +415,7 @@
 - name: Check if there's a host specific fstests at {{ fstests_fstyp }}/{{ inventory_hostname }}.config configuration
   tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ inventory_hostname }}.config"
   register: host_specific_fstests_config
 
@@ -424,7 +423,7 @@
   tags: ["generate-fstests-config"]
   vars:
     target_config: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ fstests_fstyp }}.config.generated"
-  template:
+  ansible.builtin.template:
     src: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ ansible_host }}.config"
     dest: "{{ target_config }}"
     force: true
@@ -437,7 +436,7 @@
   tags: ["generate-fstests-config"]
   vars:
     target_config: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ fstests_fstyp }}.config.generated"
-  template:
+  ansible.builtin.template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}/{{ fstests_fstyp }}.config.generated"
     force: true
@@ -451,7 +450,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "{{ topdir_path }}/workflows/fstests/{{ fstests_fstyp }}//{{ ansible_host }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     force: true
@@ -465,7 +464,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     force: true
@@ -503,7 +502,7 @@
     - real_nvme_euis.files | length == 0
 
 - name: Set real nvmes if one is found from EUI list
-  set_fact:
+  ansible.builtin.set_fact:
     nvmes: "{{ real_nvme_euis }}"
   when:
     - fstests_generate_nvme_live_config_enable|bool
@@ -531,7 +530,7 @@
     - fstests_testdev_nvme_fallback_model_serial|bool
 
 - name: Set real nvmes to fallback list if one found
-  set_fact:
+  ansible.builtin.set_fact:
     nvmes: "{{ fallback_nvmes }}"
   when:
     - fstests_generate_nvme_live_config_enable|bool
@@ -542,7 +541,7 @@
   tags: ["oscheck", "fstests", "run_tests", "kdevops_fstests_setup", "install", "generate-fstests-config"]
 
 - name: Get NVMe drives we can use for testing
-  set_fact:
+  ansible.builtin.set_fact:
     nvme_symlinks: |
       {%- set x = [] -%}
       {%- for f in nvmes.files %}
@@ -637,7 +636,7 @@
     - nvme_symlinks | length >= 1
 
 - name: Get new partition NVMe symlinks
-  set_fact:
+  ansible.builtin.set_fact:
     nvme_parts: |
       {%- set x = [] -%}
       {%- for f in part_symlinks.files %}
@@ -683,7 +682,7 @@
       {{ nvme_symlinks[0] }}-part12
     fstests_scratch_logdev: "{{ nvme_symlinks[0] }}-part15"
     fstests_scratch_rtdev: "{{ nvme_symlinks[0] }}-part14"
-  template:
+  ansible.builtin.template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     force: true
@@ -720,7 +719,7 @@
       {{ nvme_symlinks[4] }}
       {{ nvme_symlinks[5] }}
       {{ nvme_symlinks[6] }}
-  template:
+  ansible.builtin.template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     force: true
@@ -730,28 +729,28 @@
 
 - name: Set the export volname prefix
   tags: vars
-  set_fact:
+  ansible.builtin.set_fact:
     volname_prefix: "{{ ansible_host|regex_replace(kdevops_host_prefix + '-') }}-fs"
   when:
     - fstests_fstyp == "nfs" or fstests_fstyp == "cifs"
 
 - name: Set the NFS export's fstype
   tags: vars
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_nfs_export_fstype: "{{ nfsd_export_fstype }}"
   when:
     - not fstests_nfs_section_pnfs|bool
 
 - name: Set the NFS export's fstype
   tags: vars
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_nfs_export_fstype: "xfs"
   when:
     - fstests_fstyp == "nfs"
     - fstests_nfs_section_pnfs|bool
 
 - name: Create NFS export for test vol
-  include_role:
+  ansible.builtin.include_role:
     name: nfsd_add_export
   vars:
     server_host: "{{ fstests_nfs_server_host }}"
@@ -765,7 +764,7 @@
     - fstests_nfs_use_kdevops_nfsd|bool
 
 - name: Create NFS export for scratch vol
-  include_role:
+  ansible.builtin.include_role:
     name: nfsd_add_export
   vars:
     server_host: "{{ fstests_nfs_server_host }}"
@@ -786,7 +785,7 @@
   vars:
     fstests_nfs_test_dev: "{{ fstests_nfs_server_host }}:{{ nfsd_export_path }}/{{ volname_prefix }}-t"
     fstests_nfs_scratch_devpool: "{{ fstests_nfs_server_host }}:{{ nfsd_export_path }}/{{ volname_prefix }}-s"
-  template:
+  ansible.builtin.template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     force: true
@@ -835,7 +834,7 @@
     - fstests_nfs_auth_flavor
 
 - name: Create SMB share for test vol
-  include_role:
+  ansible.builtin.include_role:
     name: smbd_add_share
   vars:
     server_host: "{{ fstests_smb_server_host }}"
@@ -847,7 +846,7 @@
     - fstests_cifs_use_kdevops_smbd|bool
 
 - name: Create SMB share for scratch vol
-  include_role:
+  ansible.builtin.include_role:
     name: smbd_add_share
   vars:
     server_host: "{{ fstests_smb_server_host }}"
@@ -866,7 +865,7 @@
   vars:
     fstests_cifs_test_dev: "//{{ fstests_smb_server_host }}/{{ volname_prefix }}-t"
     fstests_cifs_scratch_devpool: "//{{ fstests_smb_server_host }}/{{ volname_prefix }}-s"
-  template:
+  ansible.builtin.template:
     src: "{{ fstests_fstyp }}/{{ fstests_fstyp }}.config"
     dest: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     force: true
@@ -877,14 +876,14 @@
   tags: ["oscheck", "fstests", "run_tests", "reboot"]
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     post_reboot_delay: 10
 
 - name: Make sure loop device support is loaded
   tags: ["oscheck", "fstests", "run_tests"]
   become: true
   become_method: sudo
-  command: "modprobe loop"
+  ansible.builtin.command: "modprobe loop"
   when:
     - kdevops_run_fstests|bool
 
@@ -893,7 +892,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  group:
+  ansible.builtin.group:
     name: "{{ item }}"
     state: present
   with_items:
@@ -927,7 +926,7 @@
   become_method: sudo
   register: section_grep
   failed_when: not section_grep.changed
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: "{{ fstests_data_target }}/configs/{{ ansible_host }}.config"
     regexp: "\\[{{ fstests_section }}\\]$"
     line: ""
@@ -944,7 +943,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "./gendisks.sh -d -m"
+  ansible.builtin.command: "./gendisks.sh -d -m"
   register: gendisk_cmd
   args:
     chdir: "{{ fstests_data_target }}"
@@ -962,7 +961,7 @@
 
 - name: Capture gendisk output
   tags: ["oscheck", "fstests", "run_tests", "gendisks"]
-  debug:
+  ansible.builtin.debug:
     msg: "{{ gendisk_cmd.stdout_lines }}"
   when:
     - kdevops_run_fstests|bool
@@ -976,7 +975,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: |
+  ansible.builtin.command: |
     ./oscheck.sh
       --check-deps
       --journal {{ fstests_journal }}
@@ -997,7 +996,7 @@
     - fstests_testdev_sparsefile_generation|bool
 
 - name: Set the path where we collect our fstests results
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_results_full_path: "{{ topdir_path }}/workflows/fstests/results"
     fstests_workflow_dir: "../workflows/fstests"
     fstests_results_target: "../workflows/fstests/results/last-run/"
@@ -1008,7 +1007,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ fstests_data_target }}"
     recurse: true
     patterns: "check.time"
@@ -1016,7 +1015,7 @@
 
 - name: Copy prior check.time files from {{ fstests_data_target }}
   tags: ["oscheck", "fstests", "run_tests", "checktime"]
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_workflow_dir }}/{{ item.path | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -1031,7 +1030,7 @@
   vars:
     expunge_file: "-E "
     space: " "
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_initial_baseline_args: |
       {%- set x = [] -%}
       {%- for f in checktime_files.files %}
@@ -1046,14 +1045,14 @@
   tags: ["oscheck", "fstests", "run_tests", "checktime"]
 
 - name: Expand tests to skip for initial baseline
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_initial_baseline_args: "--start-after {{ fstests_start_after_test }}"
   when:
     - fstests_start_after|bool
   tags: ["oscheck", "fstests", "run_tests", "checktime"]
 
 - name: Expand tests to skip tests dynamically passed on the command line
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_skip_tests_args: "-e {{ fstests_skip_tests }}"
   when:
     - fstests_skip_tests_enable|bool
@@ -1072,7 +1071,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     state: absent
     path: "{{ fstests_data_target }}/results/"
   tags: ["oscheck", "fstests", "run_tests", "clean_results"]
@@ -1081,33 +1080,32 @@
 
 - name: Print uname for each host
   tags: ["oscheck", "fstests", "run_tests"]
-  debug: var=ansible_kernel
-
+  ansible.builtin.debug: var=ansible_kernel
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ fstests_results_target }}/" state=absent
+  ansible.builtin.file: path="{{ fstests_results_target }}/" state=absent
   delegate_to: localhost
   run_once: true
   tags: ["oscheck", "fstests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  file: path="{{ fstests_results_target }}/" state=directory
+  ansible.builtin.file: path="{{ fstests_results_target }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["oscheck", "fstests", "copy_results", "clean_local_results"]
 
 - name: Get used target kernel version
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ fstests_results_target }}/../last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ fstests_results_target }}/../last-kernel.txt
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
@@ -1136,7 +1134,7 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Hint to watchdog tests are about to kick off
-  file: path="{{ fstests_workflow_dir }}/.begin" state=touch
+  ansible.builtin.file: path="{{ fstests_workflow_dir }}/.begin" state=touch
   delegate_to: localhost
   tags: ["oscheck", "fstests", "run_tests"]
   when:
@@ -1147,10 +1145,9 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: sysctl kernel.printk="8 8 1 7"
-
+  ansible.builtin.command: sysctl kernel.printk="8 8 1 7"
 - name: Check to see if dynamic test limit scope was set
-  set_fact:
+  ansible.builtin.set_fact:
     dynamic_limit_tests: "{{ lookup('ansible.builtin.env', 'LIMIT_TESTS') }}"
   tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
@@ -1158,7 +1155,7 @@
     - kdevops_run_fstests|bool
 
 - name: Set test limit scope from CONFIG_FSTESTS_RUN_CUSTOM_TESTS, this may be empty
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: "{{ limit_tests }}"
   tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
@@ -1168,7 +1165,7 @@
     - limit_tests != None
 
 - name: Allow dynamic test override
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: "{{ dynamic_limit_tests }}"
   tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
@@ -1179,7 +1176,7 @@
     - dynamic_limit_tests | length > 0
 
 - name: Empty out test limit if None is set
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: ""
   tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
@@ -1192,7 +1189,7 @@
   vars:
     fstests_section: "{{ ansible_host | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
   tags: ["oscheck", "fstests", "run_tests"]
-  command: "{{ kdevops_data }}/workflows/fstests/scripts/oscheck-get-failures.sh --test-section {{ fstests_section }}"
+  ansible.builtin.command: "{{ kdevops_data }}/workflows/fstests/scripts/oscheck-get-failures.sh --test-section {{ fstests_section }}"
   args:
     chdir: "{{ fstests_data_target }}"
   environment:
@@ -1205,7 +1202,7 @@
     - kdevops_run_fstests|bool
 
 - name: Inform user no failures are known
-  fail:
+  ansible.builtin.fail:
     msg: "No known failures for this run! Go find bugs!"
   tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
@@ -1214,7 +1211,7 @@
     - failed_tests_limit.stdout | replace('\n', ' ') | length == 0
 
 - name: Set test limit to known failed tests
-  set_fact:
+  ansible.builtin.set_fact:
     all_limit_tests: "{{ failed_tests_limit.stdout | replace('\n', ' ') }}"
   tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
@@ -1222,7 +1219,7 @@
     - kdevops_run_fstests|bool
 
 - name: Print test list limits for this run
-  debug:
+  ansible.builtin.debug:
     msg: "all_limit_tests: {{ all_limit_tests }}"
   tags: ["oscheck", "fstests", "run_tests", "vars", "limit-tests"]
   when:
@@ -1238,7 +1235,7 @@
     - fstests_skip_run|bool
 
 # Start monitoring services before running tests
-- import_tasks: ../../monitoring/tasks/monitor_run.yml
+- ansible.builtin.import_tasks: ../../monitoring/tasks/monitor_run.yml
   when:
     - kdevops_run_fstests|bool
     - enable_monitoring|default(false)|bool
@@ -1257,7 +1254,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: |
+  ansible.builtin.command: |
     ./oscheck.sh
       --print-start
       --print-done
@@ -1292,14 +1289,14 @@
     - kdevops_run_fstests|bool
 
 # Stop monitoring services and collect data after running tests
-- import_tasks: ../../monitoring/tasks/monitor_collect.yml
+- ansible.builtin.import_tasks: ../../monitoring/tasks/monitor_collect.yml
   when:
     - kdevops_run_fstests|bool
     - enable_monitoring|default(false)|bool
   tags: ["oscheck", "fstests", "run_tests", "monitoring", "monitor_collect"]
 
 - name: Remove watchdog hint that tests have started
-  file: path="{{ fstests_workflow_dir }}/.begin" state=absent
+  ansible.builtin.file: path="{{ fstests_workflow_dir }}/.begin" state=absent
   delegate_to: localhost
   tags: ["oscheck", "fstests", "run_tests"]
   when:
@@ -1311,7 +1308,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ fstests_data_target }}"
     recurse: true
     patterns: "check.time"
@@ -1321,7 +1318,7 @@
   tags: ["oscheck", "fstests", "copy_results", "checktime"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -1337,7 +1334,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ fstests_data_target }}"
     recurse: true
     patterns: "check.log"
@@ -1347,7 +1344,7 @@
   tags: ["oscheck", "fstests", "copy_results", "checklog"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -1363,7 +1360,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ fstests_data_target }}"
     recurse: true
     patterns: "*.xml"
@@ -1373,7 +1370,7 @@
   tags: ["oscheck", "fstests", "copy_results", "xunit"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -1389,7 +1386,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ fstests_data_target }}"
     recurse: true
     patterns: "*.out.bad"
@@ -1400,7 +1397,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ fstests_data_target }}/results/"
     recurse: true
     patterns: "*"
@@ -1412,7 +1409,7 @@
 
 - name: Show TFB results files
   tags: ["copy_results", "failed_tests", "tfb"]
-  debug:
+  ansible.builtin.debug:
     msg: "{{ item.path }}"
   with_items: "{{ tfb_reg.files }}"
   loop_control:
@@ -1422,7 +1419,7 @@
 
 - name: Show TFB results total files greater than {{ fstests_tfp_copy_size_limit_bytes | human_readable(true) }}
   tags: ["copy_results", "failed_tests", "tfb"]
-  debug:
+  ansible.builtin.debug:
     msg: "Examined {{ tfb_reg.examined }} files and TFB number of files: {{ tfb_reg.matched }}"
   when:
     - fstests_tfp_copy_enable_list|bool
@@ -1432,7 +1429,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "kdevops TFB trimming enabled, original file size: {{ item.size | human_readable(true) }}"
     dest: "{{ item.path }}"
   with_items: "{{ tfb_reg.files }}"
@@ -1449,7 +1446,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ fstests_data_target }}/results/"
     recurse: true
     patterns: "*.md"
@@ -1464,7 +1461,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item.path }}"
     state: "absent"
   with_items: "{{ tfb_reg.files }}"
@@ -1478,7 +1475,7 @@
   tags: ["oscheck", "fstests", "copy_results", "copy_final", "failed_tests", "tfb"]
   vars:
     item_path_without_host: "{{ item.path | regex_replace('results') | regex_replace(ansible_host) }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -1500,7 +1497,7 @@
     tests_group_dir: "{{ tests_full_group_dir | split('/') | last }}"
     tests_full_name: "{{ item.path | basename | split('.') | first }}.full"
     tests_name: "{{ tests_group_dir }}/{{ tests_full_name }}"
-  stat:
+  ansible.builtin.stat:
     path: "{{ tests_full_group_dir }}/{{ tests_full_name }}"
   with_items: "{{ failed_tests.files }}"
   loop_control:
@@ -1517,7 +1514,7 @@
     tests_full_name: "{{ item.item.path | basename | split('.') | first }}.full"
     tests_name: "{{ tests_group_dir }}/{{ tests_full_name }}"
     item_path_without_host: "{{ item.stat.path | regex_replace('results') | regex_replace(ansible_host) }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.stat.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -1539,7 +1536,7 @@
     tests_group_dir: "{{ tests_full_group_dir | split('/') | last }}"
     tests_dmesg_name: "{{ item.path | basename | split('.') | first }}.dmesg"
     tests_name: "{{ tests_group_dir }}/{{ tests_dmesg_name }}"
-  stat:
+  ansible.builtin.stat:
     path: "{{ tests_full_group_dir }}/{{ tests_dmesg_name }}"
   with_items: "{{ failed_tests.files }}"
   loop_control:
@@ -1556,7 +1553,7 @@
     tests_dmesg_name: "{{ item.item.path | basename | split('.') | first }}.dmesg"
     tests_name: "{{ tests_group_dir }}/{{ tests_dmesg_name }}"
     item_path_without_host: "{{ item.stat.path | regex_replace('results') | regex_replace(ansible_host) }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.stat.path }}"
     dest: "{{ fstests_results_target }}/{{ item_path_without_host | regex_replace(fstests_data_target | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -1569,8 +1566,8 @@
     - item.stat.exists
 
 - name: Print fstests results to xunit_results.txt on localhost if xunit xml file was found
-  shell: ./python/workflows/fstests/gen_results_summary --results_file result.xml  --print_section --output_file {{ fstests_results_target }}/{{ last_kernel }}/xunit_results.txt
-    {{ fstests_results_target }}/
+  ansible.builtin.shell: ./python/workflows/fstests/gen_results_summary --results_file result.xml  --print_section --output_file {{ fstests_results_target }}/{{ last_kernel
+    }}/xunit_results.txt {{ fstests_results_target }}/
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   when:
@@ -1578,7 +1575,7 @@
   run_once: true
 
 - name: Print fstests bad results for {{ fstests_fstyp }} to bad_results.txt on localhost
-  shell: ./python/workflows/fstests/bad_files_summary.py {{ fstests_fstyp }} {{ fstests_results_target }}/ > {{ fstests_results_target }}/bad_results.txt
+  ansible.builtin.shell: ./python/workflows/fstests/bad_files_summary.py {{ fstests_fstyp }} {{ fstests_results_target }}/ > {{ fstests_results_target }}/bad_results.txt
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   when:
@@ -1586,7 +1583,7 @@
   run_once: true
 
 - name: Create check.time.distribution files for {{ fstests_results_target }}/results
-  shell: ./python/workflows/fstests/fstests-checktime-distribution.py {{ fstests_results_target }}
+  ansible.builtin.shell: ./python/workflows/fstests/fstests-checktime-distribution.py {{ fstests_results_target }}
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   run_once: true
@@ -1594,19 +1591,20 @@
     - checktime_files.matched > 0
 
 - name: Augment expunge list for {{ fstests_fstyp }}, just run git diff after this to see new failures found
-  shell: ./python/workflows/fstests/augment_expunge_list.py {{ fstests_fstyp }} {{ fstests_results_target }}/ {{ fstests_workflow_dir }}/expunges/
+  ansible.builtin.shell: ./python/workflows/fstests/augment_expunge_list.py {{ fstests_fstyp }} {{ fstests_results_target }}/ {{ fstests_workflow_dir }}/expunges/
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Print fstests new expunge files for {{ fstests_fstyp }} which are not yet committed
-  shell: ./python/workflows/fstests/get_new_expunge_files.py {{ fstests_fstyp }} {{ fstests_workflow_dir }}/expunges/ > {{ fstests_results_target }}/new_expunge_files.txt
+  ansible.builtin.shell: ./python/workflows/fstests/get_new_expunge_files.py {{ fstests_fstyp }} {{ fstests_workflow_dir }}/expunges/ > {{ fstests_results_target
+    }}/new_expunge_files.txt
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
 
 - name: Get stat of new files not yet committed, ie, new expunge files
-  stat: path="{{ fstests_results_target }}/new_expunge_files.txt"
+  ansible.builtin.stat: path="{{ fstests_results_target }}/new_expunge_files.txt"
   delegate_to: localhost
   register: new_expunge_files_stat
   run_once: true
@@ -1615,14 +1613,14 @@
 - name: Inform user if new expunge files have been found
   run_once: true
   tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
-  debug:
+  ansible.builtin.debug:
     msg: "New expunge files found in: {{ fstests_results_target | regex_replace('^../', '') }}new_expunge_files.txt"
   when:
     - new_expunge_files_stat.stat.size != 0
 
 - name: Inform user if no failures have been found
   tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
-  debug:
+  ansible.builtin.debug:
     msg: No *.bad or xunit xml files were found on the target host
   when:
     - failed_tests.matched == 0
@@ -1632,12 +1630,12 @@
 - name: Verify last-run kernel directory exists
   tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ fstests_results_full_path }}/last-run/{{ last_kernel }}"
   register: last_run_kernel_dir
 
 - name: Copy over the last-run into the results directory for archiving into kdevops
-  copy:
+  ansible.builtin.copy:
     src: "{{ fstests_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ fstests_results_full_path }}/"
   run_once: true
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml
index 18423f15..e106a82f 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/debian/main.yml
@@ -2,6 +2,6 @@
 - name: Install local dependencies for fstests command and control
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - python3-junitparser
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml
index 97c3abc0..5c76f335 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install dependencies for oscheck
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml
index e6c66e55..352e7367 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install local dependencies for fstests command and control
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
@@ -17,7 +17,7 @@
 - name: Install junitparser
   become: true
   become_method: sudo
-  pip:
+  ansible.builtin.pip:
     name:
       - junitparser
   when:
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml
index 1058afe0..e5a19bcf 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/suse/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -22,11 +22,11 @@
     - is_sle|bool
 
 - name: By default we assume we have figured out how to add repos on a release
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: true
 
 - name: Lets us disable things which require a zypper repo present
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: false
   when:
     - is_sle|bool
@@ -48,7 +48,7 @@
 - name: Install junitparser
   become: true
   become_method: sudo
-  pip:
+  ansible.builtin.pip:
     name:
       - junitparser
   when:
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/main.yml
index 2542ad80..a01161d9 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,4 +12,4 @@
 
 # Distro specific
 - name: Install our own fstests localhost dependencies
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
diff --git a/playbooks/roles/gen_hosts/tasks/main.yml b/playbooks/roles/gen_hosts/tasks/main.yml
index c6fab628..6eefd17d 100644
--- a/playbooks/roles/gen_hosts/tasks/main.yml
+++ b/playbooks/roles/gen_hosts/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,15 +11,15 @@
   tags: vars
 
 - name: Get our user
-  command: "whoami"
+  ansible.builtin.command: "whoami"
   register: my_user
 
 - name: Get our primary group
-  command: "id -g -n"
+  ansible.builtin.command: "id -g -n"
   register: my_group
 
 - name: Check if the inventory file exists already
-  stat:
+  ansible.builtin.stat:
     path: "{{ ansible_cfg_inventory }}"
   register: kdevops_hosts_dest
 
@@ -27,7 +27,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ ansible_cfg_inventory }}"
     owner: "{{ my_user.stdout }}"
     group: "{{ my_group.stdout }}"
@@ -35,12 +35,12 @@
     - kdevops_hosts_dest.stat.exists
 
 - name: Verify Ansible inventory template file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ kdevops_hosts_template_full_path }}"
   register: ansible_hosts_template
 
 - name: Set fstests config file variable for {{ fstests_fstyp }}
-  set_fact:
+  ansible.builtin.set_fact:
     is_fstests: true
     fs_config_path: "{{ kdevops_playbooks_dir_full_path }}/{{ fs_config_role_path }}"
   when:
@@ -50,7 +50,7 @@
   tags: vars
 
 - name: Verify fstest config file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ fs_config_path }}"
   register: fstests_config_file_reg
   when:
@@ -58,7 +58,7 @@
 
 - name: Generate the Ansible hosts file for a Linux kernel build
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -70,7 +70,7 @@
 
 - name: Generate the Ansible inventory file
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -88,7 +88,7 @@
 
 - name: Generate the Ansible inventory file for dedicated cxl work
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ anisble_cfg_inventory }}"
     force: true
@@ -101,7 +101,7 @@
 
 - name: Generate the Ansible inventory file for dedicated pynfs work
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -116,7 +116,7 @@
   tags: ["hosts"]
   vars:
     gitr_enabled_hosts: "{{ gitr_enabled_test_groups|ansible.builtin.split }}"
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -146,7 +146,7 @@
   tags: ["hosts"]
   vars:
     nfstest_enabled_hosts: "{{ nfstest_enabled_test_groups | ansible.builtin.split }}"
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -159,7 +159,7 @@
 
 - name: Set empty enabled test types list for fstests
   tags: ["hosts"]
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_test_types: []
   when:
     - is_fstests
@@ -177,7 +177,7 @@
     clean_section_lines: "{{ sections_lines | regex_replace('\\[') | regex_replace('\\]') }}"
     clean_section_lines_without_fsname: "{{ clean_section_lines | regex_replace(fstests_fstyp + '_') }}"
     config_sections_targets: "{{ clean_section_lines_without_fsname |  replace(\"'\", '') | split(', ') }}"
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: "{{ topdir_path }}/.config"
     regexp: "^({{ config_val + item.upper() }})=y"
     line: ""
@@ -191,7 +191,7 @@
 
 - name: Now expand the list of enabled fstests for valid configuration sections
   tags: ["hosts"]
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_test_types: "{{ fstests_enabled_test_types  + [ fstests_fstyp + '-' + item.item | regex_replace('_', '-') ] }}"
   with_items: "{{ fstests_enabled_test_types_reg.results }}"
   loop_control:
@@ -210,7 +210,7 @@
     clean_section_lines: "{{ sections_lines | regex_replace('\\[') | regex_replace('\\]') }}"
     sections_replace_underscore: "{{ clean_section_lines |  replace('_', '-') }}"
     sections: "{{ sections_replace_underscore |  replace(\"'\", '') | split(', ') }}"
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -221,7 +221,7 @@
     - ansible_hosts_template.stat.exists
 
 - name: Infer enabled blktests test section types
-  set_fact:
+  ansible.builtin.set_fact:
     blktests_enabled_test_types: >-
       {{
         lookup('file', topdir_path + '/.config')
@@ -235,7 +235,7 @@
     - ansible_hosts_template.stat.exists
 
 - name: Debug inferring block test types
-  debug:
+  ansible.builtin.debug:
     var: blktests_enabled_test_types
   when:
     - false
@@ -245,7 +245,7 @@
 
 - name: Generate the Ansible inventory file for a dedicated blktests setup
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -272,7 +272,7 @@
 
 - name: Generate the Ansible inventory file for a dedicated selftests setup
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -288,7 +288,7 @@
     supported_filesystems_variables: "{{ hostvars[inventory_hostname] | dict2items | selectattr('key', 'search', '^sysbench_supported_filesystem_') }}"
     local_supported_filesystems: "{{ supported_filesystems_variables | selectattr('value', 'eq', True) | map(attribute='key') | map('regex_replace', '^sysbench_supported_filesystem_',
       '') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_enabled_filesystems: "{{ local_supported_filesystems }}"
     enabled_sysbench_tests: "{{ [] }}"
   when:
@@ -306,7 +306,7 @@
     enabled_fs_sections: "{{ enabled_fs_sysbench | map('regex_replace', '^sysbench_', '') | list }}"
     enabled_fs: "{{ enabled_fs_sections | map('regex_replace', 'section_', '') | list }}"
     enabled_fs_node: "{{ enabled_fs | map('regex_replace', '_', '-') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     enabled_sysbench_tests: "{{ enabled_sysbench_tests + enabled_fs_node }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -314,7 +314,7 @@
 
 - name: Generate the Ansible inventory file for a dedicated sysbench setup
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -326,7 +326,7 @@
     - ansible_hosts_template.stat.exists
 
 - name: Infer enabled mmtests test types
-  set_fact:
+  ansible.builtin.set_fact:
     mmtests_enabled_test_types: >-
       {{
         lookup('file', topdir_path + '/.config')
@@ -341,7 +341,7 @@
 
 - name: Generate the Ansible hosts file for a dedicated mmtests setup
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -354,7 +354,7 @@
 
 - name: Generate the Ansible hosts file for a dedicated reboot-limit setup
   tags: ["hosts"]
-  template:
+  ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
     force: true
@@ -366,13 +366,13 @@
     - ansible_hosts_template.stat.exists
 
 - name: Verify if final host file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ ansible_cfg_inventory }}"
   register: final_hosts_file
 
 - name: Fail if the dedicated workflow has no rules for node configuration for hosts file configuration
   tags: ["hosts"]
-  fail:
+  ansible.builtin.fail:
     msg: "Your dedicated workflow lacks rules for what nodes to use, go work on allowed topologies to parallelize testing one per node"
   when:
     - kdevops_workflows_dedicated_workflow
diff --git a/playbooks/roles/gen_nodes/tasks/main.yml b/playbooks/roles/gen_nodes/tasks/main.yml
index 3f2f2222..3ca0b05c 100644
--- a/playbooks/roles/gen_nodes/tasks/main.yml
+++ b/playbooks/roles/gen_nodes/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,11 +11,11 @@
   tags: vars
 
 - name: Get our user
-  command: "whoami"
+  ansible.builtin.command: "whoami"
   register: my_user
 
 - name: Get our primary group
-  command: "id -g -n"
+  ansible.builtin.command: "id -g -n"
   register: my_group
 
 - name: Create guestfs directory
@@ -25,27 +25,27 @@
   when: kdevops_enable_guestfs|bool
 
 - name: Verify Ansible nodes template file exists {{ kdevops_nodes_template_full_path }}
-  stat:
+  ansible.builtin.stat:
     path: "{{ kdevops_nodes_template_full_path }}"
   register: ansible_nodes_template
 
 - name: Set generic nodes array
   tags: vars
-  set_fact:
+  ansible.builtin.set_fact:
     generic_nodes: "{{ [ kdevops_host_prefix ] }}"
   when:
     - not kdevops_baseline_and_dev
 
 - name: Set generic nodes array on dual baseline and dev systems
   tags: vars
-  set_fact:
+  ansible.builtin.set_fact:
     generic_nodes: "{{ [ kdevops_host_prefix ] + [ kdevops_host_prefix + '-dev' ] }}"
   when:
     - kdevops_baseline_and_dev
 
 - name: Set builder nodes array
   tags: vars
-  set_fact:
+  ansible.builtin.set_fact:
     builder_nodes:
       - "{{ kdevops_host_prefix + '-builder' }}"
   when:
@@ -64,43 +64,43 @@
     - kdevops_enable_iscsi|bool
 
 - name: Set nfsd_nodes list
-  set_fact:
+  ansible.builtin.set_fact:
     nfsd_nodes: "{{ [ kdevops_host_prefix + '-nfsd' ] }}"
   when:
     - kdevops_nfsd_enable|bool
 
 - name: Add an nfs server if one was selected
-  set_fact:
+  ansible.builtin.set_fact:
     generic_nodes: "{{ generic_nodes + nfsd_nodes }}"
   when:
     - kdevops_nfsd_enable|bool
 
 - name: Set smbd_nodes list
-  set_fact:
+  ansible.builtin.set_fact:
     smbd_nodes: "{{ [ kdevops_host_prefix + '-smbd' ] }}"
   when:
     - kdevops_smbd_enable|bool
 
 - name: Add an smb server if one was selected
-  set_fact:
+  ansible.builtin.set_fact:
     generic_nodes: "{{ generic_nodes + smbd_nodes }}"
   when:
     - kdevops_smbd_enable|bool
 
 - name: Set kdc_nodes list
-  set_fact:
+  ansible.builtin.set_fact:
     kdc_nodes: "{{ [ kdevops_host_prefix + '-kdc' ] }}"
   when:
     - kdevops_krb5_enable|bool
 
 - name: Add a KRB5 KDC if one was selected
-  set_fact:
+  ansible.builtin.set_fact:
     generic_nodes: "{{ generic_nodes + kdc_nodes }}"
   when:
     - kdevops_krb5_enable|bool
 
 - name: Set fstests config file variable for {{ fstests_fstyp }}
-  set_fact:
+  ansible.builtin.set_fact:
     is_fstests: true
     fs_config_path: "{{ kdevops_playbooks_dir_full_path }}/{{ fs_config_role_path }}"
   when:
@@ -110,14 +110,14 @@
   tags: vars
 
 - name: Verify fstest config file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ fs_config_path }}"
   register: fstests_config_file_reg
   when:
     - is_fstests|bool
 
 - name: Check if {{ kdevops_nodes }} exists already
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/{{ kdevops_nodes }}"
   register: kdevops_nodes_dest
 
@@ -125,7 +125,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ topdir_path }}/{{ kdevops_nodes }}"
     owner: "{{ my_user.stdout }}"
     group: "{{ my_group.stdout }}"
@@ -138,7 +138,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ generic_nodes }}"
     nodes: "{{ all_generic_nodes }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -152,7 +152,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ builder_nodes }}"
     nodes: "{{ all_generic_nodes }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -166,7 +166,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ nfsd_nodes + iscsi_nodes }}"
     nodes: "{{ all_generic_nodes }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -181,7 +181,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     all_generic_nodes: "{{ generic_nodes }}"
     nodes: "{{ all_generic_nodes }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -222,7 +222,7 @@
 
 - name: Set empty enabled test types list for fstests
   tags: ["hosts"]
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_nodes: []
   when:
     - is_fstests|bool
@@ -240,7 +240,7 @@
     clean_section_lines: "{{ sections_lines | regex_replace('\\[') | regex_replace('\\]') }}"
     clean_section_lines_without_fsname: "{{ clean_section_lines | regex_replace(fstests_fstyp + '_') }}"
     config_sections_targets: "{{ clean_section_lines_without_fsname |  replace(\"'\", '') | split(', ') }}"
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: "{{ topdir_path }}/.config"
     regexp: "^({{ config_val + item.upper() }})=y"
     line: ""
@@ -257,7 +257,7 @@
   vars:
     fs_test_section: "{{ fstests_fstyp + '-' + item.item | regex_replace('_', '-') }}"
     node: "{{ kdevops_host_prefix + '-' + fs_test_section }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_nodes: "{{ fstests_enabled_nodes + [ node ] }}"
   with_items: "{{ fstests_enabled_test_types_reg.results }}"
   loop_control:
@@ -273,7 +273,7 @@
   vars:
     fs_test_section: "{{ fstests_fstyp + '-' + item.item | regex_replace('_', '-') }}"
     node: "{{ kdevops_host_prefix + '-' + fs_test_section }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_nodes: "{{ fstests_enabled_nodes + [ node ] + [ node + '-dev' ] }}"
   with_items: "{{ fstests_enabled_test_types_reg.results }}"
   loop_control:
@@ -285,14 +285,14 @@
     - kdevops_baseline_and_dev
 
 - name: Add the nfs server if one was selected
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_nodes: "{{ fstests_enabled_nodes + nfsd_nodes }}"
   when:
     - is_fstests|bool
     - kdevops_nfsd_enable|bool
 
 - name: Add the smb server if one was selected
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_nodes: "{{ fstests_enabled_nodes + smbd_nodes }}"
   when:
     - is_fstests|bool
@@ -306,7 +306,7 @@
     - kdevops_enable_iscsi|bool
 
 - name: Add the KRB5 KDC if one was selected
-  set_fact:
+  ansible.builtin.set_fact:
     fstests_enabled_nodes: "{{ fstests_enabled_nodes + kdc_nodes }}"
   when:
     - is_fstests|bool
@@ -318,7 +318,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ fstests_enabled_nodes |  regex_replace('\\[') | regex_replace('\\]') | replace(\"'\", '') | split(', ') }}"
     all_generic_nodes: "{{ fstests_enabled_nodes }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -327,7 +327,7 @@
     - ansible_nodes_template.stat.exists
 
 - name: Infer enabled blktests test section types
-  set_fact:
+  ansible.builtin.set_fact:
     blktests_enabled_test_types: >-
       {{
         [kdevops_host_prefix + '-']
@@ -354,7 +354,7 @@
     config_block_test_types: "{{ kdevops_config_data | regex_findall('^' + config_val + '(.*)=y$', multiline=True) }}"
     config_block_test_type_names: "{{ config_block_test_types | lower }}"
     all_nodes: "{{ [kdevops_host_prefix + '-'] | product(config_block_test_type_names) | map('join') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     blktests_enabled_test_types: "{{ all_nodes | product(['', '-dev']) | map('join') | list }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -363,7 +363,7 @@
     - kdevops_baseline_and_dev
 
 - name: Debug inferring block test types
-  debug:
+  ansible.builtin.debug:
     var: blktests_enabled_test_types
   when:
     - false
@@ -377,7 +377,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ blktests_enabled_test_types }}"
     all_generic_nodes: "{{ blktests_enabled_test_types }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -413,7 +413,7 @@
     config_selftests_test_types: "{{ kdevops_config_data | regex_findall('^' + config_val + '(.*)=y$', multiline=True) }}"
     config_selftests_test_type_names: "{{ config_selftests_test_types | lower }}"
     all_nodes: "{{ [kdevops_host_prefix + '-'] | product(config_selftests_test_type_names) | map('join') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     selftests_enabled_test_types: "{{ all_nodes | product(['', '-dev']) | map('join') | list }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -427,7 +427,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ selftests_enabled_test_types }}"
     all_generic_nodes: "{{ selftests_enabled_test_types }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -441,7 +441,7 @@
     supported_filesystems_variables: "{{ hostvars[inventory_hostname] | dict2items | selectattr('key', 'search', '^sysbench_supported_filesystem_') }}"
     local_supported_filesystems: "{{ supported_filesystems_variables | selectattr('value', 'eq', True) | map(attribute='key') | map('regex_replace', '^sysbench_supported_filesystem_',
       '') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_enabled_filesystems: "{{ local_supported_filesystems }}"
     enabled_sysbench_tests: "{{ [] }}"
   when:
@@ -460,7 +460,7 @@
     enabled_fs: "{{ enabled_fs_sections | map('regex_replace', 'section_', '') | list }}"
     prefixed_fs: "{{ enabled_fs | map('regex_replace', '^', kdevops_host_prefix + '-') | list }}"
     enabled_fs_node: "{{ prefixed_fs | map('regex_replace', '_', '-') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     enabled_sysbench_tests: "{{ enabled_sysbench_tests + enabled_fs_node }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -478,7 +478,7 @@
     enabled_fs: "{{ enabled_fs_sections | map('regex_replace', 'section_', '') | list }}"
     prefixed_and_postfixed_fs: "{{ enabled_fs | map('regex_replace', '^', kdevops_host_prefix + '-') | map('regex_replace', '$', '-dev') | list }}"
     enabled_fs_node: "{{ prefixed_and_postfixed_fs | map('regex_replace', '_', '-') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     enabled_sysbench_tests: "{{ enabled_sysbench_tests + enabled_fs_node }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -486,7 +486,7 @@
     - kdevops_baseline_and_dev
 
 - name: Fail if no sysbench tests are enabled
-  fail:
+  ansible.builtin.fail:
     msg: "No sysbench tests are enabled. You should enable at least one."
   when:
     - kdevops_workflows_dedicated_workflow
@@ -500,7 +500,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ enabled_sysbench_tests }}"
     all_generic_nodes: "{{ enabled_sysbench_tests }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -510,7 +510,7 @@
     - ansible_nodes_template.stat.exists
 
 - name: Infer enabled mmtests test section types
-  set_fact:
+  ansible.builtin.set_fact:
     mmtests_enabled_test_types: >-
       {{
         [kdevops_host_prefix + '-']
@@ -536,7 +536,7 @@
     config_mmtests_test_types: "{{ kdevops_config_data | regex_findall('^' + config_val + '(.*)=y$', multiline=True) }}"
     config_mmtests_test_type_names: "{{ config_mmtests_test_types | lower }}"
     all_nodes: "{{ [kdevops_host_prefix + '-'] | product(config_mmtests_test_type_names) | map('join') | list }}"
-  set_fact:
+  ansible.builtin.set_fact:
     mmtests_enabled_test_types: "{{ all_nodes | product(['', '-dev']) | map('join') | list }}"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -550,7 +550,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ mmtests_enabled_test_types }}"
     all_generic_nodes: "{{ mmtests_enabled_test_types }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -565,7 +565,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ [kdevops_host_prefix + '-reboot-limit'] }}"
     all_generic_nodes: "{{ [kdevops_host_prefix + '-reboot-limit'] }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -581,7 +581,7 @@
     node_template: "{{ kdevops_nodes_template | basename }}"
     nodes: "{{ [kdevops_host_prefix + '-reboot-limit', kdevops_host_prefix + '-reboot-limit-dev'] }}"
     all_generic_nodes: "{{ [kdevops_host_prefix + '-reboot-limit', kdevops_host_prefix + '-reboot-limit-dev'] }}"
-  template:
+  ansible.builtin.template:
     src: "{{ node_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_nodes }}"
     force: true
@@ -596,13 +596,13 @@
   register: kdevops_host_timezone
 
 - name: Verify if dedicated workflow defined a custom nodes template and the final file exists {{ kdevops_nodes_template_full_path }}
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/{{ kdevops_nodes }}"
   register: dedicated_nodes_template
 
 - name: Fail if the dedicated workflow has no rules for node configuration
   tags: ["nodes"]
-  fail:
+  ansible.builtin.fail:
     msg: "Your dedicated workflow lacks rules for what nodes to use, go work on allowed topologies to parallelize testing one per node"
   when:
     - kdevops_workflows_dedicated_workflow
@@ -616,7 +616,7 @@
     mode: "0755"
 
 - name: Import list of guest nodes
-  include_vars: "{{ topdir_path }}/{{ kdevops_nodes }}"
+  ansible.builtin.include_vars: "{{ topdir_path }}/{{ kdevops_nodes }}"
   ignore_errors: true
   when:
     - kdevops_enable_guestfs|bool
@@ -631,7 +631,7 @@
 - name: Generate XML files for the libvirt guests for PCI passthrough for guestfs
   delegate_to: localhost
   run_once: true
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     {{ role_path }}/python/gen_pcie_passthrough_guestfs_xml.py
   args:
@@ -654,7 +654,7 @@
     - kdevops_enable_guestfs|bool
 
 - name: Set the conflict flag on if conflict occur
-  set_fact:
+  ansible.builtin.set_fact:
     gdb_port_conflict: true
   when:
     - libvirt_enable_gdb|bool
@@ -662,7 +662,7 @@
     - gdb_port_reg.results | selectattr('rc', 'equalto', 0) | list | length > 0
 
 - name: Fail bringup if gdb port conflict occur
-  fail:
+  ansible.builtin.fail:
     msg: "GDB port conflict occur, please check the base port number {{ libvirt_gdb_baseport }} and try with another"
   when:
     - libvirt_enable_gdb|bool
@@ -672,7 +672,7 @@
   vars:
     hostname: "{{ item.name }}"
     guestidx: "{{ idx }}"
-  template:
+  ansible.builtin.template:
     src: "guestfs_{{ libvirt_machine_type }}.j2.xml"
     dest: "{{ topdir_path }}/guestfs/{{ hostname }}/{{ hostname }}.xml"
     force: true
diff --git a/playbooks/roles/gen_pci_kconfig/tasks/main.yml b/playbooks/roles/gen_pci_kconfig/tasks/main.yml
index 8f10d1eb..50c40983 100644
--- a/playbooks/roles/gen_pci_kconfig/tasks/main.yml
+++ b/playbooks/roles/gen_pci_kconfig/tasks/main.yml
@@ -1,10 +1,10 @@
 ---
 - name: Dump pci output in machine-readible form
-  shell: "lspci -Dvmmm > {{ topdir_path }}/.dynamic-kconfig.pci.txt"
+  ansible.builtin.shell: "lspci -Dvmmm > {{ topdir_path }}/.dynamic-kconfig.pci.txt"
   when:
     - kdevops_pcie_dynamic_kconfig
 
 - name: Generate libvirt PCI-E kcofig files
-  shell: "./python/workflows/dynamic-kconfig/gen-dynamic-pci.py {{ topdir_path }}/.dynamic-kconfig.pci.txt > {{ topdir_path }}/Kconfig.passthrough_libvirt.generated"
+  ansible.builtin.shell: "./python/workflows/dynamic-kconfig/gen-dynamic-pci.py {{ topdir_path }}/.dynamic-kconfig.pci.txt > {{ topdir_path }}/Kconfig.passthrough_libvirt.generated"
   when:
     - kdevops_pcie_dynamic_kconfig
diff --git a/playbooks/roles/gen_tfvars/tasks/main.yml b/playbooks/roles/gen_tfvars/tasks/main.yml
index fb0d0e01..72ff5f09 100644
--- a/playbooks/roles/gen_tfvars/tasks/main.yml
+++ b/playbooks/roles/gen_tfvars/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,20 +11,20 @@
   tags: vars
 
 - name: Verify Terraform variable template file exists {{ kdevops_terraform_tfvars_template_full_path }}
-  stat:
+  ansible.builtin.stat:
     path: "{{ kdevops_nodes_template_full_path }}"
   register: terraform_tfvars_template
 
 - name: Get our user
-  command: "whoami"
+  ansible.builtin.command: "whoami"
   register: my_user
 
 - name: Get our primary group
-  command: "id -g -n"
+  ansible.builtin.command: "id -g -n"
   register: my_group
 
 - name: Check if {{ kdevops_terraform_tfvars }} exists already
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/{{ kdevops_terraform_tfvars }}"
   register: kdevops_tfvars_dest
 
@@ -32,7 +32,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ topdir_path }}/{{ kdevops_terraform_tfvars }}"
     owner: "{{ my_user.stdout }}"
     group: "{{ my_group.stdout }}"
@@ -43,7 +43,7 @@
   tags: ["nodes"]
   vars:
     tfvars_template: "{{ kdevops_terraform_tfvars_template }}"
-  template:
+  ansible.builtin.template:
     src: "{{ tfvars_template }}"
     dest: "{{ topdir_path }}/{{ kdevops_terraform_tfvars }}"
     force: true
diff --git a/playbooks/roles/gitr/tasks/main.yml b/playbooks/roles/gitr/tasks/main.yml
index 02bcf216..decdfce9 100644
--- a/playbooks/roles/gitr/tasks/main.yml
+++ b/playbooks/roles/gitr/tasks/main.yml
@@ -29,30 +29,30 @@
     gitr_run_uniqifier: "{{ ansible_date_time.iso8601_basic_short }}"
 
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ gitr_results_target }}/" state=absent
+  ansible.builtin.file: path="{{ gitr_results_target }}/" state=absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  file: path="{{ gitr_results_target }}/" state=directory
+  ansible.builtin.file: path="{{ gitr_results_target }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Get used target kernel version
   tags: ["copy_results"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   tags: ["copy_results"]
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ gitr_results_target }}/../last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ gitr_results_target }}/../last-kernel.txt
   delegate_to: localhost
   tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
@@ -378,12 +378,12 @@
 - name: Verify last-run kernel directory exists
   tags: ["copy_results"]
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ gitr_results_full_path }}/last-run/{{ last_kernel }}"
   register: last_run_kernel_dir
 
 - name: Copy over the last-run into the results directory for archiving into kdevops
-  copy:
+  ansible.builtin.copy:
     src: "{{ gitr_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ gitr_results_full_path }}/"
   run_once: true
diff --git a/playbooks/roles/guestfs/tasks/bringup/main.yml b/playbooks/roles/guestfs/tasks/bringup/main.yml
index 457fea16..c131de25 100644
--- a/playbooks/roles/guestfs/tasks/bringup/main.yml
+++ b/playbooks/roles/guestfs/tasks/bringup/main.yml
@@ -128,7 +128,7 @@
         - passthrough_devices.matched > 0
 
 - name: Ensure 9P host directory exists before bringing nodes on libvirt
-  file:
+  ansible.builtin.file:
     path: "{{ bootlinux_9p_host_path }}"
     state: directory
     mode: "0755"
diff --git a/playbooks/roles/hypervisor-tuning/tasks/main.yml b/playbooks/roles/hypervisor-tuning/tasks/main.yml
index e63cdb08..1d057b28 100644
--- a/playbooks/roles/hypervisor-tuning/tasks/main.yml
+++ b/playbooks/roles/hypervisor-tuning/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -16,14 +16,14 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat: path=/sys/kernel/mm/ksm/run
+  ansible.builtin.stat: path=/sys/kernel/mm/ksm/run
   register: ksm_enable_file
   tags: ["hypervisor"]
 
 - name: Enable ksm
   become: true
   become_method: sudo
-  shell: echo 1 > /sys/kernel/mm/ksm/run
+  ansible.builtin.shell: echo 1 > /sys/kernel/mm/ksm/run
   tags: ["hypervisor"]
   when:
     - ksm_enable_file.stat.exists
@@ -33,7 +33,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat: path=/sys/module/zswap/parameters/enabled
+  ansible.builtin.stat: path=/sys/module/zswap/parameters/enabled
   register: zswap_enable_file
   tags: ["hypervisor"]
 
@@ -41,7 +41,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat: path=/sys/module/zswap/parameters/max_pool_percent
+  ansible.builtin.stat: path=/sys/module/zswap/parameters/max_pool_percent
   register: zswap_max_pool_percent_file
   when:
     - hypervisor_tunning_zswap_enable|bool
@@ -51,7 +51,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  shell: echo {{ hypervisor_tunning_zswap_max_pool_percent }} > /sys/module/zswap/parameters/max_pool_percent
+  ansible.builtin.shell: echo {{ hypervisor_tunning_zswap_max_pool_percent }} > /sys/module/zswap/parameters/max_pool_percent
   register: zswap_max_pool_percent_file
   when:
     - hypervisor_tunning_zswap_enable|bool
@@ -61,7 +61,7 @@
 - name: Enable zswap
   become: true
   become_method: sudo
-  shell: echo 1 > /sys/module/zswap/parameters/enabled
+  ansible.builtin.shell: echo 1 > /sys/module/zswap/parameters/enabled
   tags: ["hypervisor"]
   when:
     - zswap_enable_file.stat.exists
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml
index c9d63331..6d74855a 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: linux
 
 - name: Install generic kdevops deps
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - gcc
       - make
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml
index e9902e4d..bdd7af52 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/fedora/main.yml
@@ -2,7 +2,7 @@
 - name: Install kdevops generic dependencies
   become: true
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     name:
       - gcc
       - make
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
index 871908a2..287b8b1c 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional distribution specific variables
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -9,13 +9,13 @@
   tags: vars
 
 - name: Distribution specific setup
-  import_tasks: debian/main.yml
+  ansible.builtin.import_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: suse/main.yml
+- ansible.builtin.import_tasks: suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: redhat/main.yml
+- ansible.builtin.import_tasks: redhat/main.yml
   when:
     - ansible_facts['os_family']|lower == 'redhat'
     - ansible_facts['distribution']|lower != "fedora"
-- import_tasks: fedora/main.yml
+- ansible.builtin.import_tasks: fedora/main.yml
   when: ansible_facts['distribution']|lower == "fedora"
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml
index 70a7e554..8e045fe5 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install kdevops generic dependencies
   become: true
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     name:
       - bison
       - flex
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml
index e14a3207..5e46eaf2 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/main.yml
index 5c8da645..4ba3a06c 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,6 +12,6 @@
 
 # Distro specific
 - name: Install kdevops deps to run make menuconfig
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
   when:
     - kdevops_first_run | bool
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml
index 2bee6769..cab47738 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Install systemd-journal-remote
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - systemd-journal-remote
   when:
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml
index 2464e157..c49e0a70 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install dependencies
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml
index db7ac51c..bec2d4ad 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install systemd-journal-remote
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "systemd-journal-remote"
   retries: 3
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/main.yml
index 7927d133..dd753631 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,14 +12,13 @@
 
 # Distro specific
 - name: Install systemd-journal-remote
-  include_tasks: install-deps/main.yml
-
+  ansible.builtin.include_tasks: install-deps/main.yml
 - name: Set up the server /etc/systemd/journal-remote.conf
   tags: ["journal"]
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "journal-remote.conf.j2"
     dest: "/etc/systemd/journal-remote.conf"
     force: true
@@ -33,7 +32,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "systemd-journal-remote.service.j2"
     dest: "/lib/systemd/system/systemd-journal-remote.service"
     force: true
@@ -82,7 +81,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "/var/log/journal/remote/"
     owner: systemd-journal-remote
     group: systemd-journal-remote
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml
index 9ac68013..25ace109 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Install systemd-timesyncd
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - systemd-timesyncd
   when:
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml
index 2464e157..c49e0a70 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install dependencies
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml
index 2812a5ce..02f069e0 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install systemd-timesyncd
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: systemd-udev
   retries: 3
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/main.yml
index e767a880..e760f72b 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,14 +12,13 @@
 
 # Distro specific
 - name: Install systemd-timesyncd
-  include_tasks: install-deps/main.yml
-
+  ansible.builtin.include_tasks: install-deps/main.yml
 - name: Set up the server /etc/systemd/timesyncd.conf
   tags: ["timesyncd"]
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "timesyncd.conf.j2"
     dest: "/etc/systemd/timesyncd.conf"
     force: true
@@ -32,7 +31,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "timedatectl set-ntp true"
+  ansible.builtin.command: "timedatectl set-ntp true"
   when:
     - devconfig_enable_systemd_timesyncd_ntp|bool
 
@@ -52,6 +51,6 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "timedatectl status"
+  ansible.builtin.command: "timedatectl status"
   when:
     - devconfig_enable_systemd_timesyncd|bool
diff --git a/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml b/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml
index c347ecb8..43d94d93 100644
--- a/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/install_terraform/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Verify Terraform installation
-  command: "which terraform"
+  ansible.builtin.command: "which terraform"
   register: terraform_present
   changed_when: terraform_present.rc == 1
   failed_when: terraform_present.rc != 0 and terraform_present.rc != 1
@@ -18,7 +18,7 @@
 - name: Download Terraform from the latest release and install locally
   become: true
   become_method: sudo
-  unarchive:
+  ansible.builtin.unarchive:
     src: https://releases.hashicorp.com/terraform/{{ terraform_version }}/terraform_{{ terraform_version }}_linux_amd64.zip
     dest: /usr/local/bin
     remote_src: true
diff --git a/playbooks/roles/install_terraform/tasks/install-deps/main.yml b/playbooks/roles/install_terraform/tasks/install-deps/main.yml
index d2d9b144..037e035b 100644
--- a/playbooks/roles/install_terraform/tasks/install-deps/main.yml
+++ b/playbooks/roles/install_terraform/tasks/install-deps/main.yml
@@ -1,8 +1,8 @@
 ---
 - name: Distribution specific setup
-  import_tasks: debian/main.yml
+  ansible.builtin.import_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: suse/main.yml
+- ansible.builtin.import_tasks: suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: redhat/main.yml
+- ansible.builtin.import_tasks: redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml b/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml
index 1df38820..45dbef64 100644
--- a/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/install_terraform/tasks/install-deps/redhat/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Verify Terraform installation
-  command: "which terraform"
+  ansible.builtin.command: "which terraform"
   register: terraform_present
   changed_when: terraform_present.rc == 1
   failed_when: terraform_present.rc != 0 and terraform_present.rc != 1
@@ -9,7 +9,7 @@
 - name: Download Terraform from the latest release and install locally
   become: true
   become_method: sudo
-  unarchive:
+  ansible.builtin.unarchive:
     src: https://releases.hashicorp.com/terraform/{{ terraform_version }}/terraform_{{ terraform_version }}_linux_amd64.zip
     dest: /usr/local/bin
     remote_src: true
diff --git a/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml b/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml
index 895ceb23..46cd30ed 100644
--- a/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/install_terraform/tasks/install-deps/suse/main.yml
@@ -1,19 +1,19 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 # SLE has no good package for terraform, and the one from package hub tends to be old
 - name: Override default setting for force_install_zip for SLE
-  set_fact:
+  ansible.builtin.set_fact:
     force_install_zip: true
   when:
     - is_sle
 
 - name: Verify Terraform installation
-  command: "which terraform"
+  ansible.builtin.command: "which terraform"
   register: terraform_present
   changed_when: terraform_present.rc == 1
   failed_when: terraform_present.rc != 0 and terraform_present.rc != 1
@@ -22,7 +22,7 @@
 - name: Download Terraform from the latest release and install locally
   become: true
   become_method: sudo
-  unarchive:
+  ansible.builtin.unarchive:
     src: https://releases.hashicorp.com/terraform/{{ terraform_version }}/terraform_{{ terraform_version }}_linux_amd64.zip
     dest: /usr/local/bin
     remote_src: true
diff --git a/playbooks/roles/install_terraform/tasks/main.yml b/playbooks/roles/install_terraform/tasks/main.yml
index 8b584090..8c0799b9 100644
--- a/playbooks/roles/install_terraform/tasks/main.yml
+++ b/playbooks/roles/install_terraform/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,4 +12,4 @@
 
 # Distro specific
 - name: Install terraform
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
diff --git a/playbooks/roles/kdc/tasks/install-deps/debian/main.yml b/playbooks/roles/kdc/tasks/install-deps/debian/main.yml
index 638cb763..dfe5eacc 100644
--- a/playbooks/roles/kdc/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/kdc/tasks/install-deps/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Install kdc dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - krb5-admin-server
       - krb5-kdc
diff --git a/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml b/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml
index b8f99ce9..4bf73cfc 100644
--- a/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/kdc/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install kdc dependencies
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
diff --git a/playbooks/roles/kdc/tasks/main.yml b/playbooks/roles/kdc/tasks/main.yml
index e10211e4..34d3ae27 100644
--- a/playbooks/roles/kdc/tasks/main.yml
+++ b/playbooks/roles/kdc/tasks/main.yml
@@ -25,7 +25,7 @@
 - name: Configure /etc/krb5.conf
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: krb5.conf.j2
     dest: /etc/krb5.conf
     owner: root
@@ -45,7 +45,7 @@
 - name: Configure {{ kdc_conf_dir }}/kdc.conf
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: kdc.conf.j2
     dest: "{{ kdc_conf_dir }}/kdc.conf"
     owner: root
@@ -55,7 +55,7 @@
 - name: Configure {{ kdc_data_dir }}/kadm5.acl
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: kadm5.acl.j2
     dest: "{{ kdc_data_dir }}/kadm5.acl"
     owner: root
diff --git a/playbooks/roles/kdevops_archive/tasks/main.yml b/playbooks/roles/kdevops_archive/tasks/main.yml
index 086b31d8..2cf3494c 100644
--- a/playbooks/roles/kdevops_archive/tasks/main.yml
+++ b/playbooks/roles/kdevops_archive/tasks/main.yml
@@ -3,14 +3,14 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  package:
+  ansible.builtin.package:
     name:
       - git-lfs
       - rsync
     state: present
 
 - name: Override kdevops archive repo url to demo URL if in demo mode
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_results_repo_url: "{{ kdevops_results_repo_url_demo }}"
   when:
     - "kdevops_archive_demo|bool"
@@ -34,25 +34,25 @@
   become: true
 
 - name: Create new kdevops archive/ for new results
-  file:
+  ansible.builtin.file:
     path: "{{ kdevops_results_local }}"
     state: directory
     mode: "0755"
 
 - name: Get list of files from make ci-results for our archive/
-  command: make ci-results
+  ansible.builtin.command: make ci-results
   register: ci_results
   args:
     chdir: "{{ topdir_path }}"
 
 - name: Get current user
-  command: whoami
+  ansible.builtin.command: whoami
   register: current_user
   changed_when: false
 
 - name: Ensure source files are readable by current user
   become: true
-  shell: |
+  ansible.builtin.shell: |
     for item in {{ ci_results.stdout_lines | join(' ') }}; do
       if [ -e "$item" ] || compgen -G "$item" > /dev/null; then
         find "$item" -type d -exec chmod 755 {} +
@@ -65,7 +65,7 @@
   when: ci_results.stdout_lines | length > 0
 
 - name: Copy files and directories to the our archive/
-  shell: |
+  ansible.builtin.shell: |
     for item in {{ ci_results.stdout_lines | join(' ') }}; do
       if [ -e "$item" ] || compgen -G "$item" > /dev/null; then
         rsync -a --relative "$item" "{{ kdevops_results_local }}"
@@ -76,16 +76,16 @@
   when: ci_results.stdout_lines | length > 0
 
 - name: Count files and directories in archive/
-  command: find "{{ kdevops_results_local }}" -mindepth 1 -type f,d
+  ansible.builtin.command: find "{{ kdevops_results_local }}" -mindepth 1 -type f,d
   register: kdevops_archive_data
   changed_when: false
 
 - name: Count files and directories we're putting into archive/
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_data_count: "{{ kdevops_archive_data.stdout_lines | length }}"
 
 - name: CI archive not setup
-  debug:
+  ansible.builtin.debug:
     msg: |
       The output of `make ci-results` yielded no files, this likely means
       you have not setup which results we should copy for this target
@@ -98,13 +98,13 @@
     - kdevops_archive_data_count | int == 0
 
 - name: Archiving disabled
-  meta: end_play
+  ansible.builtin.meta: end_play
   when:
     - kdevops_archive_data_count | int == 0
 
 - name: Ensure copied files are readable by current user
   become: true
-  shell: |
+  ansible.builtin.shell: |
     find "{{ kdevops_results_local }}" -type d -exec chmod 755 {} +
     find "{{ kdevops_results_local }}" -type f -exec chmod 644 {} +
     chown -R {{ current_user.stdout }}:{{ current_user.stdout }} "{{ kdevops_results_local }}"
@@ -112,7 +112,7 @@
     executable: /bin/bash
 
 - name: Copy files and directories to the archive/
-  shell: |
+  ansible.builtin.shell: |
     for item in {{ ci_results.stdout_lines | join(' ') }}; do
       if [ -e "$item" ]; then
         cp -R --parents "$item" "{{ kdevops_results_local }}"
@@ -123,42 +123,42 @@
   when: ci_results.stdout_lines | length > 0
 
 - name: Check if ci.ref file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/ci.ref"
   register: ci_ref_file
 
 - name: Read ci.ref file if it exists
-  slurp:
+  ansible.builtin.slurp:
     path: "{{ topdir_path }}/ci.ref"
   register: ci_ref_content
   when: ci_ref_file.stat.exists
 
 - name: Set kdevops_archive_test_ref from ci.ref
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_ref: "{{ ci_ref_content.content | b64decode | trim }}"
   when: ci_ref_file.stat.exists
 
 - name: Set kdevops_archive_test_ref in case ci.ref is not set
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_ref: "{{ target_linux_tree }}"
   when: not ci_ref_file.stat.exists
 
 - name: Create our archive/ xz file for kdevops-results-archive
-  archive:
+  community.general.archive:
     path: "{{ kdevops_results_local }}"
     dest: "{{ kdevops_results }}/{{ kdevops_archive_test_ref }}.xz"
     format: xz
     remove: false
 
 - name: Create the same archive/ zip file for web CI artifacts
-  archive:
+  community.general.archive:
     path: "{{ kdevops_results_local }}"
     dest: "{{ kdevops_results }}/{{ kdevops_archive_test_ref }}.zip"
     format: zip
     remove: false
 
 - name: Find archive files to verify
-  find:
+  ansible.builtin.find:
     paths: "{{ kdevops_results }}"
     patterns:
       - "*.zip"
@@ -166,7 +166,7 @@
   register: archive_files
 
 - name: Get archive file stat
-  stat:
+  ansible.builtin.stat:
     path: "{{ item.path }}"
   register: archive_stats
   loop: "{{ archive_files.files }}"
@@ -174,30 +174,30 @@
   no_log: true
 
 - name: Display archive file information
-  debug:
+  ansible.builtin.debug:
     msg: "{{ item.stat.path }} ({{ (item.stat.size / 1024 / 1024) | round(2) }}MB)"
   loop: "{{ archive_stats.results }}"
   loop_control:
     label: "{{ item.stat.path | basename }}"
 
 - name: Check if kdevops-results-archive directory exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ kdevops_results_archive_dir }}"
   register: archive_dir
 
 - name: Check if mirror directory exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ kdevops_archive }}"
   register: mirror_dir
 
 - name: Set kdevops_archive_mirror_present based on mirror directory existence
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_mirror_present: "{{ mirror_dir.stat.exists }}"
   when:
     - mirror_dir.stat.exists
 
 - name: Remove kdevops-results-archive always to account for epochs changes
-  file:
+  ansible.builtin.file:
     path: "{{ kdevops_results_archive_dir }}"
     state: absent
   when:
@@ -215,12 +215,12 @@
     - not kdevops_archive_mirror_present | bool
 
 - name: Committing to kdevops-results-archive not possible
-  meta: end_play
+  ansible.builtin.meta: end_play
   when:
     - not kdevops_archive_mirror_present|bool
 
 - name: Clone kdevops-results-archive repository with git LFS and use the local mirror
-  git:
+  ansible.builtin.git:
     repo: "{{ kdevops_results_repo_url }}"
     dest: "{{ kdevops_results_archive_dir }}"
     version: main
@@ -238,93 +238,93 @@
     - "kdevops_archive_demo|bool"
 
 - name: Check if ci.trigger file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/ci.trigger"
   register: ci_trigger_file
 
 - name: Read ci.trigger file if it exists
-  slurp:
+  ansible.builtin.slurp:
     path: "{{ topdir_path }}/ci.trigger"
   register: ci_trigger_content
   when: ci_trigger_file.stat.exists
 
 - name: Set kdevops_archive_test_subject from ci.trigger
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_trigger: "{{ ci_trigger_content.content | b64decode | trim }}"
   when: ci_trigger_file.stat.exists
 
 - name: Set kdevops_archive_test_trigger in case ci.trigger is not set
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_trigger: "{{ target_linux_tree }}"
   when: not ci_trigger_file.stat.exists
 
 - name: Get current date in YYYYMMDD format
-  set_fact:
+  ansible.builtin.set_fact:
     current_date: "{{ '%Y%m%d' | strftime }}"
 
 - name: Construct base directory path
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_base: "{{ kdevops_workflow_name }}/{{ current_user.stdout }}/{{ kdevops_archive_test_trigger }}/{{ current_date }}"
 
 - name: Ensure base directory exists
-  file:
+  ansible.builtin.file:
     path: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_base }}"
     state: directory
     mode: "0755"
 
 - name: List all directories in base path
-  find:
+  ansible.builtin.find:
     paths: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_base }}"
     file_type: directory
   register: all_dirs
 
 - name: Get directory names only
-  set_fact:
+  ansible.builtin.set_fact:
     dir_names: "{{ all_dirs.files | map(attribute='path') | map('basename') | list }}"
 
 - name: Filter for numbered directories
-  set_fact:
+  ansible.builtin.set_fact:
     numbered_dirs: "{{ dir_names | select('match', '^\\d{4}$') | list }}"
 
 - name: Get highest number or default to 0
-  set_fact:
+  ansible.builtin.set_fact:
     current_highest: "{{ (numbered_dirs | map('int') | max | default(0)) | int }}"
 
 - name: Calculate next number
-  set_fact:
+  ansible.builtin.set_fact:
     next_number_int: "{{ (current_highest | int) + 1 }}"
 
 - name: Convert to padded string
-  set_fact:
+  ansible.builtin.set_fact:
     next_number: "{{ '%04d' % (next_number_int | int)}}"
 
 - name: Set archive test number
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_number: "{{ next_number }}"
 
 - name: Check if ci.subject file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/ci.subject"
   register: ci_subject_file
 
 - name: Read ci.subject file if it exists
-  slurp:
+  ansible.builtin.slurp:
     path: "{{ topdir_path }}/ci.subject"
   register: ci_subject_content
   when: ci_subject_file.stat.exists
 
 - name: Set kdevops_archive_test_subject from ci.subject
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_subject: "{{ ci_subject_content.content | b64decode | trim }}"
   when: ci_subject_file.stat.exists
 
 - name: Set best-effort heuristic subject in case ci.subject is not set
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_subject: "{{ target_linux_tree }} {{ kdevops_archive_test_ref }} result #{{ kdevops_archive_test_number }}"
   when: not ci_subject_file.stat.exists
 
 - name: Generate git-format-patch style filename from subject
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_ci_subject_patchform_name: >-
       {{
         (kdevops_archive_test_subject | lower
@@ -337,35 +337,35 @@
       }}
 
 - name: Set complete archive prefix with subject-based name
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_prefix: "{{ kdevops_archive_base }}/{{ kdevops_archive_test_number }}/{{ kdevops_archive_ci_subject_patchform_name }}/"
 
 - name: Create target directory if it doesn't exist
-  file:
+  ansible.builtin.file:
     path: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_prefix }}"
     state: directory
     mode: "0755"
 
 - name: Copy archive to target directory
-  copy:
+  ansible.builtin.copy:
     src: "{{ kdevops_results }}/{{ kdevops_archive_test_ref }}.xz"
     dest: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_prefix }}"
     mode: "0644"
 
 - name: Create .tar.xz symlink for the archive
-  file:
+  ansible.builtin.file:
     src: "{{ kdevops_archive_test_ref }}.xz"
     dest: "{{ kdevops_results_archive_dir }}/{{ kdevops_archive_prefix }}/{{ kdevops_archive_test_ref }}.tar.xz"
     state: link
 
 - name: Ensure .xz files are tracked by Git LFS
-  command:
+  ansible.builtin.command:
     cmd: git lfs track "*.xz"
   args:
     chdir: "{{ kdevops_results_archive_dir }}"
 
 - name: Stage the new archive file
-  command:
+  ansible.builtin.command:
     cmd: git add "{{ kdevops_archive_prefix }}{{ kdevops_archive_test_ref }}*.xz"
   args:
     chdir: "{{ kdevops_results_archive_dir }}"
@@ -373,44 +373,44 @@
     GIT_LFS_SKIP_SMUDGE: "0"
 
 - name: Check if ci.commit_extra file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/ci.commit_extra"
   register: ci_commit_file
 
 - name: Read ci.commit_extra file if it exists
-  slurp:
+  ansible.builtin.slurp:
     path: "{{ topdir_path }}/ci.commit_extra"
   register: ci_commit_content
   when: ci_commit_file.stat.exists
 
 - name: Set kdevops_archive_test_subject from ci.commit_extra
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_commit: "{{ ci_commit_content.content | b64decode | trim }}"
   when: ci_commit_file.stat.exists
 
 - name: Set kdevops_archive_test_subject in case ci.commit_extra is not set
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_test_commit: "No extra test report details available."
   when: not ci_commit_file.stat.exists
 
 - name: Check if ci.result file exists
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/ci.result"
   register: ci_result_file
 
 - name: Read ci.result file if it exists
-  slurp:
+  ansible.builtin.slurp:
     path: "{{ topdir_path }}/ci.result"
   register: ci_result_content
   when: ci_result_file.stat.exists
 
 - name: Set kdevops_archive_ci_test_result from ci.result
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_ci_test_result: "{{ ci_result_content.content | b64decode | trim }}"
   when: ci_result_file.stat.exists
 
 - name: Set kdevops_archive_ci_test_result in case ci.result is not set
-  set_fact:
+  ansible.builtin.set_fact:
     kdevops_archive_ci_test_result: "unknown"
   when: not ci_result_file.stat.exists
 
@@ -457,7 +457,7 @@
     state: absent
 
 - name: Push changes to remote repository
-  command:
+  ansible.builtin.command:
     cmd: git push origin main
   args:
     chdir: "{{ kdevops_results_archive_dir }}"
@@ -468,6 +468,6 @@
   ignore_errors: true
 
 - name: Display push error if it failed
-  debug:
+  ansible.builtin.debug:
     msg: "Failed to push changes: {{ git_push_result.stderr }}"
   when: git_push_result.rc != 0
diff --git a/playbooks/roles/krb5/tasks/install-deps/debian/main.yml b/playbooks/roles/krb5/tasks/install-deps/debian/main.yml
index d9094fe6..d9d3af59 100644
--- a/playbooks/roles/krb5/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/krb5/tasks/install-deps/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Install krb5 dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - krb5-user
     state: present
diff --git a/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml b/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml
index bb2a068b..dc61fc33 100644
--- a/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/krb5/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install krb5 dependencies
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
diff --git a/playbooks/roles/krb5/tasks/install-deps/suse/main.yml b/playbooks/roles/krb5/tasks/install-deps/suse/main.yml
index de84799b..ee1c6e2c 100644
--- a/playbooks/roles/krb5/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/krb5/tasks/install-deps/suse/main.yml
@@ -2,7 +2,7 @@
 - name: Install krb5 dependencies
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - krb5
       - krb5-client
diff --git a/playbooks/roles/krb5/tasks/main.yml b/playbooks/roles/krb5/tasks/main.yml
index ff6b5bdf..4910fa17 100644
--- a/playbooks/roles/krb5/tasks/main.yml
+++ b/playbooks/roles/krb5/tasks/main.yml
@@ -14,7 +14,7 @@
 - name: Configure /etc/krb5.conf
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: krb5.conf.j2
     dest: /etc/krb5.conf
     owner: root
diff --git a/playbooks/roles/ktls/tasks/install-deps/debian/main.yml b/playbooks/roles/ktls/tasks/install-deps/debian/main.yml
index 9d9c3b08..90b6a600 100644
--- a/playbooks/roles/ktls/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/ktls/tasks/install-deps/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Install ktls dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - python3-cryptography
       - ktls-utils
diff --git a/playbooks/roles/ktls/tasks/install-deps/main.yml b/playbooks/roles/ktls/tasks/install-deps/main.yml
index d9da53de..cb7798cf 100644
--- a/playbooks/roles/ktls/tasks/install-deps/main.yml
+++ b/playbooks/roles/ktls/tasks/install-deps/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install dependencies for pynfs
 - name: oscheck distribution ospecific setup
-  include_tasks: debian/main.yml
+  ansible.builtin.include_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- include_tasks: suse/main.yml
+- ansible.builtin.include_tasks: suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- include_tasks: redhat/main.yml
+- ansible.builtin.include_tasks: redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml b/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml
index 7a2ec5b0..23c4b1f6 100644
--- a/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/ktls/tasks/install-deps/redhat/main.yml
@@ -8,7 +8,7 @@
 - name: Install ktls dependencies
   become: true
   become_method: sudo
-  dnf:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
diff --git a/playbooks/roles/ktls/tasks/main.yml b/playbooks/roles/ktls/tasks/main.yml
index 1abc7cbb..7a822156 100644
--- a/playbooks/roles/ktls/tasks/main.yml
+++ b/playbooks/roles/ktls/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -10,11 +10,10 @@
       skip: true
 
 - name: Install dependencies
-  include_tasks: install-deps/main.yml
-
+  ansible.builtin.include_tasks: install-deps/main.yml
 - name: Construct the path to the CA directory
   delegate_to: localhost
-  set_fact:
+  ansible.builtin.set_fact:
     ca_dir: "{{ topdir_path }}/ca/{{ kdevops_host_prefix }}"
 
 - name: Create directory to hold the CA on local host
@@ -89,7 +88,7 @@
   register: certificate
 
 - name: Write certificate file on host
-  copy:
+  ansible.builtin.copy:
     dest: "/etc/pki/tls/certs/ktls.pem"
     content: "{{ certificate.certificate }}"
   become: true
diff --git a/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml b/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
index dfdd7989..941b4057 100644
--- a/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
+++ b/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -15,7 +15,7 @@
   become_method: sudo
   vars:
     sysfs_override: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id}}/driver_override"
-  stat:
+  ansible.builtin.stat:
     path: "{{ sysfs_override }}"
   with_items: "{{ pcie_passthrough_devices }}"
   loop_control:
@@ -28,7 +28,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item.stat.path }}"
     group: "{{ libvirt_qemu_group }}"
     mode: "0664"
@@ -45,7 +45,7 @@
   become_method: sudo
   vars:
     sysfs_unbind: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id}}/unbind"
-  stat:
+  ansible.builtin.stat:
     path: "{{ sysfs_unbind }}"
   with_items: "{{ pcie_passthrough_devices }}"
   loop_control:
@@ -58,7 +58,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item.stat.path }}"
     group: "{{ libvirt_qemu_group }}"
     mode: "0220"
@@ -72,7 +72,7 @@
 - name: Deploy udev 10-qemu-hw-users.rules which enables libvirt to use vfio subsystem
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "10-qemu-hw-users.rules"
     dest: "/etc/udev/rules.d/"
   when:
diff --git a/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml b/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml
index eeffabb1..7ded3d57 100644
--- a/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml
+++ b/playbooks/roles/libvirt_storage_pool_create/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -18,7 +18,7 @@
 - name: Verify if the pool already exists
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: "virsh pool-info {{ libvirt_storage_pool_name }}"
   register: pool_check
   failed_when: pool_check.rc != 0 and pool_check.rc != 1
@@ -30,7 +30,7 @@
 - name: Create {{ libvirt_storage_pool_name }} pool if it does not exist
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: "virsh pool-define-as {{ libvirt_storage_pool_name }} dir --target {{ libvirt_storage_pool_path }}"
   when:
     - "not libvirt_session|bool"
@@ -40,7 +40,7 @@
 - name: Start {{ libvirt_storage_pool_name }} pool
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: "virsh pool-start {{ libvirt_storage_pool_name }}"
   when:
     - "not libvirt_session|bool"
@@ -50,7 +50,7 @@
 - name: Set pool {{ libvirt_storage_pool_name }} to auto-start
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: "virsh  pool-autostart {{ libvirt_storage_pool_name }}"
   when:
     - "not libvirt_session|bool"
@@ -58,7 +58,7 @@
     - pool_check.rc == 1
 
 - name: Verify if the pool already exists
-  command:
+  ansible.builtin.command:
     cmd: "virsh pool-info {{ libvirt_storage_pool_name }}"
   register: pool_check
   failed_when: pool_check.rc != 0 and pool_check.rc != 1
@@ -68,7 +68,7 @@
     - "libvirt_storage_pool_create|bool"
 
 - name: Create {{ libvirt_storage_pool_name }} pool if it does not exist
-  command:
+  ansible.builtin.command:
     cmd: "virsh pool-define-as {{ libvirt_storage_pool_name }} dir --target {{ libvirt_storage_pool_path }}"
   when:
     - "libvirt_session|bool"
@@ -76,7 +76,7 @@
     - pool_check.rc == 1
 
 - name: Start {{ libvirt_storage_pool_name }} pool
-  command:
+  ansible.builtin.command:
     cmd: "virsh pool-start {{ libvirt_storage_pool_name }}"
   when:
     - "libvirt_session|bool"
@@ -84,7 +84,7 @@
     - pool_check.rc == 1
 
 - name: Set pool {{ libvirt_storage_pool_name }} to auto-start
-  command:
+  ansible.builtin.command:
     cmd: "virsh  pool-autostart {{ libvirt_storage_pool_name }}"
   when:
     - "libvirt_session|bool"
diff --git a/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml b/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml
index f29a346e..416f06f3 100644
--- a/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/enable-user/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Adds the user to the respective distro libvirt groups
   become: true
   become_method: sudo
-  user:
+  ansible.builtin.user:
     name: "{{ running_user }}"
     groups: libvirt,kvm,libvirt-qemu
     append: true
@@ -11,7 +11,7 @@
     - not only_verify_user|bool
 
 - name: Check if apparmor_status exists
-  stat:
+  ansible.builtin.stat:
     path: /usr/sbin/apparmor_status
   register: apparmor_file_stat_result
   when: "only_verify_user|bool"
@@ -19,7 +19,7 @@
 - name: Verify if AppArmor is disabled when applicable
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: /usr/sbin/apparmor_status --enabled
   register: apparmor_check
   failed_when: apparmor_check.rc == 0
@@ -28,7 +28,7 @@
     - "apparmor_file_stat_result.stat.exists"
 
 - name: Verifies user's effective group allows to run libvirt/kvm without being root
-  shell: groups | grep {{ item }}
+  ansible.builtin.shell: groups | grep {{ item }}
   with_items:
     - libvirt
     - kvm
diff --git a/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml b/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml
index 1eac9e72..3d7ee927 100644
--- a/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/enable-user/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Adds the user to the respective distro libvirt groups
   become: true
   become_method: sudo
-  user:
+  ansible.builtin.user:
     name: "{{ ansible_env.USER }}"
     groups: libvirt,kvm,qemu
     append: true
@@ -11,7 +11,7 @@
     - not libvirt_session
 
 - name: Check if apparmor_status exists
-  stat:
+  ansible.builtin.stat:
     path: /usr/sbin/apparmor_status
   register: apparmor_file_stat_result
   when: "only_verify_user|bool"
@@ -19,7 +19,7 @@
 - name: Verify if apparmor is disabled when applicable
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: /usr/sbin/apparmor_status --enabled
   register: apparmor_check
   failed_when: apparmor_check.rc == 0
@@ -28,7 +28,7 @@
     - "apparmor_file_stat_result.stat.exists"
 
 - name: Test whether SELinux is enabled
-  command: /usr/sbin/selinuxenabled
+  ansible.builtin.command: /usr/sbin/selinuxenabled
   register: selinux_status
   changed_when: false
   failed_when: false
@@ -36,7 +36,7 @@
     - only_verify_user|bool
 
 - name: Test SELinux context of {{ libvirt_storage_pool_path }}
-  command: "/usr/bin/stat -c %C {{ libvirt_storage_pool_path }}"
+  ansible.builtin.command: "/usr/bin/stat -c %C {{ libvirt_storage_pool_path }}"
   register: storage_pool_path_ctx
   when:
     - only_verify_user|bool
@@ -53,7 +53,7 @@
     - storage_pool_path_ctx.stdout.find(':svirt_home_t:') == -1
 
 - name: Verifies user's effective group allows to run libvirt/kvm without being root
-  shell: groups | grep {{ item }}
+  ansible.builtin.shell: groups | grep {{ item }}
   with_items:
     - libvirt
     - kvm
@@ -69,7 +69,7 @@
 
 - name: Inform if user must log out and back in to use libvirt as a regular user
   register: user_groups_ready
-  debug:
+  ansible.builtin.debug:
     msg: "User group settings are not in effect, you must log out and back in to make group {{ item.item }} be part of your effective group"
   failed_when: item.rc is undefined or item.rc != 0
   when:
diff --git a/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml b/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml
index 36d8518a..7972956d 100644
--- a/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/enable-user/suse/main.yml
@@ -2,7 +2,7 @@
 - name: Adds the user to the respective distro libvirt groups
   become: true
   become_method: sudo
-  user:
+  ansible.builtin.user:
     name: "{{ ansible_env.USER }}"
     groups: libvirt,kvm,qemu
     append: true
@@ -11,7 +11,7 @@
     - not only_verify_user|bool
 
 - name: Check if apparmor_status exists
-  stat:
+  ansible.builtin.stat:
     path: /usr/sbin/apparmor_status
   register: apparmor_file_stat_result
   when: "only_verify_user|bool"
@@ -19,7 +19,7 @@
 - name: Verify if apparmor is disabled when applicable
   become: true
   become_method: sudo
-  command:
+  ansible.builtin.command:
     cmd: /usr/sbin/apparmor_status --enabled
   register: apparmor_check
   failed_when: apparmor_check.rc == 0
@@ -28,7 +28,7 @@
     - "apparmor_file_stat_result.stat.exists"
 
 - name: Verifies user's effective group allows to run libvirt/kvm without being root
-  shell: groups | grep {{ item }}
+  ansible.builtin.shell: groups | grep {{ item }}
   with_items:
     - libvirt
     - kvm
@@ -44,7 +44,7 @@
 
 - name: Inform if user must log out and back in to use libvirt as a regular user
   register: user_groups_ready
-  debug:
+  ansible.builtin.debug:
     msg: "User group settings are not in effect, you must log out and back in to make group {{ item.item }} be part of your effective group"
   failed_when: item.rc is undefined or item.rc != 0
   when:
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml
index bd99d865..6deaba05 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: install
 
 - name: Install libvirt / kvm dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - libvirt-daemon
       - libvirt-daemon-system
@@ -24,7 +24,7 @@
 - name: Enable libvirtd
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: libvirtd
     enabled: true
     masked: false
@@ -32,6 +32,6 @@
 - name: Make sure libvirtd is running
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     state: started
     name: libvirtd
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml
index 2866775b..1c556d5f 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/fedora/main.yml
@@ -2,7 +2,7 @@
 - name: Install libvirt / kvm dependencies
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name:
       - libvirt
       - libvirt-daemon
@@ -14,7 +14,7 @@
 - name: Enable libvirtd
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: libvirtd
     enabled: true
     masked: false
@@ -22,14 +22,14 @@
 - name: Make sure libvirtd is running
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     state: started
     name: libvirtd
 
 - name: Enable virtnetworkd
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: virtnetworkd
     enabled: true
     masked: false
@@ -37,6 +37,6 @@
 - name: Make sure virtnetworkd is running
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     state: started
     name: virtnetworkd
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
index 871908a2..287b8b1c 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional distribution specific variables
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -9,13 +9,13 @@
   tags: vars
 
 - name: Distribution specific setup
-  import_tasks: debian/main.yml
+  ansible.builtin.import_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: suse/main.yml
+- ansible.builtin.import_tasks: suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: redhat/main.yml
+- ansible.builtin.import_tasks: redhat/main.yml
   when:
     - ansible_facts['os_family']|lower == 'redhat'
     - ansible_facts['distribution']|lower != "fedora"
-- import_tasks: fedora/main.yml
+- ansible.builtin.import_tasks: fedora/main.yml
   when: ansible_facts['distribution']|lower == "fedora"
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml
index 2e9e69d9..bed2e8fc 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install libvirt / kvm dependencies
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name:
       - libvirt
       - libvirt-daemon
@@ -14,7 +14,7 @@
 - name: Enable libvirtd
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: libvirtd
     enabled: true
     masked: false
@@ -22,6 +22,6 @@
 - name: Make sure libvirtd is running
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     state: started
     name: libvirtd
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml
index dce7958a..f19adfca 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/suse/main.yml
@@ -14,7 +14,7 @@
 - name: Enable libvirtd
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: libvirtd
     enabled: true
     masked: false
@@ -22,6 +22,6 @@
 - name: Make sure libvirtd is running
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     state: started
     name: libvirtd
diff --git a/playbooks/roles/libvirt_user/tasks/main.yml b/playbooks/roles/libvirt_user/tasks/main.yml
index 269b63f3..ddd701be 100644
--- a/playbooks/roles/libvirt_user/tasks/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -12,13 +12,13 @@
 
 # Distro specific
 - name: Install libvirt and other dependencies
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
   when:
     - "not skip_install|bool"
     - "not only_verify_user|bool"
 
 - name: Enables / verifies if user to run libvirt guests
-  include_tasks: enable-user/main.yml
+  ansible.builtin.include_tasks: enable-user/main.yml
   when:
     - "not skip_configuration|bool"
     - "not only_install|bool"
diff --git a/playbooks/roles/linux-mirror/tasks/main.yml b/playbooks/roles/linux-mirror/tasks/main.yml
index e85224ce..a07ed103 100644
--- a/playbooks/roles/linux-mirror/tasks/main.yml
+++ b/playbooks/roles/linux-mirror/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -17,7 +17,7 @@
   tags: ["mirror"]
 
 - name: Fail if linux_mirror_nfs is enabled but user is not root
-  fail:
+  ansible.builtin.fail:
     msg: "NFS server setup is enabled, but you are not running as root. Please run as root to set up NFS."
   when:
     - not install_only_git_daemon|bool
@@ -27,7 +27,7 @@
 
 - name: Set up the mirrors.yaml based on preferences configured
   tags: ["mirror"]
-  template:
+  ansible.builtin.template:
     src: "mirrors.yaml.j2"
     dest: "{{ topdir_path }}/playbooks/roles/linux-mirror/linux-mirror-systemd/mirrors.yaml"
     force: true
@@ -42,7 +42,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ local_systemd_path }}"
     state: directory
     mode: "0755"
@@ -55,7 +55,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "{{ item }}.j2"
     dest: "{{ local_systemd_path }}/{{ item }}"
     force: true
@@ -71,7 +71,7 @@
 - name: Start mirroring
   delegate_to: localhost
   run_once: true
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     {{ role_path }}/python/start-mirroring.py --verbose
   args:
@@ -85,7 +85,7 @@
 - name: Generate systemd service and timer unit files
   delegate_to: localhost
   run_once: true
-  shell: |
+  ansible.builtin.shell: |
     set -o pipefail
     {{ role_path }}/python/gen-mirror-files.py --refresh 360m --refresh-on-boot 10m
   args:
@@ -97,7 +97,7 @@
   tags: ["mirror"]
 
 - name: load variables from yaml file
-  include_vars:
+  ansible.builtin.include_vars:
     file: "{{ topdir_path }}/playbooks/roles/linux-mirror/linux-mirror-systemd/mirrors.yaml"
     name: mirrors
   tags: ["mirror", "status-check"]
@@ -105,7 +105,7 @@
     - not install_only_git_daemon|bool
 
 - name: Set scope based on user (root uses system scope)
-  set_fact:
+  ansible.builtin.set_fact:
     systemd_scope: "{{ 'system' if ansible_user_id == 'root' else 'user' }}"
     systemd_dir: "{{ '/etc/systemd/system/' if ansible_user_id == 'root' else mirror_user_system_dir }}"
   tags: ["mirror"]
@@ -113,7 +113,7 @@
     - not install_only_git_daemon|bool
 
 - name: Copy systemd service file to user/system systemd dir
-  copy:
+  ansible.builtin.copy:
     src: "{{ topdir_path }}/playbooks/roles/linux-mirror/linux-mirror-systemd/{{ item.short_name | regex_replace('/', '-') }}-mirror.service"
     dest: "{{ systemd_dir }}/"
   with_items:
@@ -125,7 +125,7 @@
     - not install_only_git_daemon|bool
 
 - name: Copy systemd timer file to user/system systemd dir
-  copy:
+  ansible.builtin.copy:
     src: "{{ topdir_path }}/playbooks/roles/linux-mirror/linux-mirror-systemd/{{ item.short_name | regex_replace('/', '-') }}-mirror.timer"
     dest: "{{ systemd_dir }}/"
   with_items:
@@ -178,7 +178,7 @@
     - not install_only_git_daemon|bool
 
 - name: Service status
-  debug:
+  ansible.builtin.debug:
     var: "{{ item }}.status.ActiveState"
   with_items:
     - "{{ mirror_service_status.item }}"
@@ -200,7 +200,7 @@
     - not install_only_git_daemon|bool
 
 - name: Service timer status
-  debug:
+  ansible.builtin.debug:
     var: "{{ item }}.status.ActiveState"
   with_items:
     - "{{ mirror_timer_status.item }}"
@@ -311,7 +311,7 @@
 
 - name: Ensure NFS firewall rules are set (for root user and if NFS is enabled)
   become: true
-  ansible.builtin.firewalld:
+  ansible.posix.firewalld:
     service: "{{ item }}"
     permanent: true
     state: enabled
diff --git a/playbooks/roles/ltp/tasks/main.yml b/playbooks/roles/ltp/tasks/main.yml
index 612bdb9f..d11be9e0 100644
--- a/playbooks/roles/ltp/tasks/main.yml
+++ b/playbooks/roles/ltp/tasks/main.yml
@@ -33,30 +33,30 @@
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ ltp_results_target }}/" state=absent
+  ansible.builtin.file: path="{{ ltp_results_target }}/" state=absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  file: path="{{ ltp_results_target }}/" state=directory
+  ansible.builtin.file: path="{{ ltp_results_target }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Get used target kernel version
   tags: ["copy_results"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   tags: ["copy_results"]
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ ltp_results_target }}/../last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ ltp_results_target }}/../last-kernel.txt
   delegate_to: localhost
   tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
@@ -266,12 +266,12 @@
 - name: Verify last-run kernel directory exists
   tags: ["copy_results"]
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ ltp_results_full_path }}/last-run/{{ last_kernel }}"
   register: last_run_kernel_dir
 
 - name: Copy over the last-run into the results directory for archiving into kdevops
-  copy:
+  ansible.builtin.copy:
     src: "{{ ltp_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ ltp_results_full_path }}/"
   run_once: true
diff --git a/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml b/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml
index 71470eba..62de1e2a 100644
--- a/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/mmtests/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -13,14 +13,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: deps
 
 - name: Install mmtests build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - build-essential
       - git
@@ -38,7 +38,7 @@
 - name: Install mmtests runtime dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - numactl
       - fio
@@ -56,7 +56,7 @@
 - name: Install mmtests monitoring dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - trace-cmd
       - perf-tools-unstable
diff --git a/playbooks/roles/mmtests/tasks/install-deps/main.yml b/playbooks/roles/mmtests/tasks/install-deps/main.yml
index 3ecd6982..84108053 100644
--- a/playbooks/roles/mmtests/tasks/install-deps/main.yml
+++ b/playbooks/roles/mmtests/tasks/install-deps/main.yml
@@ -1,16 +1,16 @@
 ---
-- include_role:
+- ansible.builtin.include_role:
     name: pkg
 
 # Distribution-specific setup for mmtests dependencies
 - name: Debian/Ubuntu distribution specific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 
 - name: SUSE distribution specific setup
-  import_tasks: tasks/install-deps/suse/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
 
 - name: RedHat distribution specific setup
-  import_tasks: tasks/install-deps/redhat/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml b/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml
index d9d68479..debfb577 100644
--- a/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/mmtests/tasks/install-deps/redhat/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -13,7 +13,7 @@
 - name: Install mmtests build dependencies (RedHat/CentOS)
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name:
       - gcc
       - git
@@ -30,7 +30,7 @@
 - name: Install mmtests runtime dependencies (RedHat/CentOS)
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name:
       - numactl
       - fio
@@ -47,7 +47,7 @@
 - name: Install mmtests monitoring dependencies (RedHat/CentOS)
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name:
       - kernel-tools
       - trace-cmd
diff --git a/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml b/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml
index 83118744..5a6c2b54 100644
--- a/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/mmtests/tasks/install-deps/suse/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -13,7 +13,7 @@
 - name: Install mmtests build dependencies (SUSE)
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - gcc
       - git
@@ -29,7 +29,7 @@
 - name: Install mmtests runtime dependencies (SUSE)
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - numactl
       - fio
@@ -47,7 +47,7 @@
 - name: Install mmtests monitoring dependencies (SUSE)
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - kernel-default-devel
       - trace-cmd
diff --git a/playbooks/roles/mmtests/tasks/main.yaml b/playbooks/roles/mmtests/tasks/main.yaml
index 4f8a8195..6e959366 100644
--- a/playbooks/roles/mmtests/tasks/main.yaml
+++ b/playbooks/roles/mmtests/tasks/main.yaml
@@ -1,14 +1,14 @@
 ---
 # Install distribution-specific dependencies
 - name: Install dependencies
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
   tags: ["setup", "deps"]
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["setup", "data_partition"]
 
-- include_role:
+- ansible.builtin.include_role:
     name: common
   when:
     - infer_uid_and_group|bool
@@ -34,7 +34,7 @@
 - name: Check if mmtests fixes directory exists
   tags: ["setup"]
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/workflows/mmtests/fixes/"
   register: fixes_dir
   run_once: false
@@ -42,7 +42,7 @@
 - name: Find mmtests patches in fixes directory
   tags: ["setup"]
   delegate_to: localhost
-  find:
+  ansible.builtin.find:
     paths: "{{ topdir_path }}/workflows/mmtests/fixes/"
     patterns: "*.patch"
   register: mmtests_patches
@@ -53,7 +53,7 @@
   tags: ["setup"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     src: "{{ item.path }}"
     dest: "/tmp/{{ item.path | basename }}"
     mode: "0644"
@@ -66,7 +66,7 @@
   tags: ["setup"]
   become: true
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     cd {{ mmtests_data_dir }}
     git am /tmp/{{ item.path | basename }}
   with_items: "{{ mmtests_patches.files }}"
@@ -78,7 +78,7 @@
 
 - name: Report patch application results
   tags: ["setup"]
-  debug:
+  ansible.builtin.debug:
     msg: |
       Applied {{ mmtests_patches.files | length | default(0) }} patches from fixes directory:
       {% for patch in mmtests_patches.files | default([]) %}
@@ -100,7 +100,7 @@
     mode: "0644"
 
 - name: Fail if configured memory percentages overcommit available memory
-  fail:
+  ansible.builtin.fail:
     msg: >-
       Overcommit configuration: anonymous ({{ mmtests_anonymous_memory_percent }}%) +
       file-backed ({{ mmtests_file_memory_percent }}%) exceeds 100% of available memory.
@@ -130,7 +130,7 @@
 
 - name: Show kernel version
   tags: ["setup", "run_tests"]
-  debug:
+  ansible.builtin.debug:
     msg: "Kernel version on {{ inventory_hostname }} : {{ kernel_version.stdout }}"
 
 - name: Build mmtests
@@ -146,7 +146,7 @@
   register: mmtests_build_result
 
 - name: Fail if mmtests build failed
-  fail:
+  ansible.builtin.fail:
     msg: >
       mmtests build failed on {{ inventory_hostname }}.
       Exit code: {{ mmtests_build_result.rc }}
@@ -159,7 +159,7 @@
   tags: ["run_tests"]
   become: true
   become_method: sudo
-  command: findmnt --noheadings --output TARGET --source {{ mmtests_device }}
+  ansible.builtin.command: findmnt --noheadings --output TARGET --source {{ mmtests_device }}
   register: mountpoint_stat
   failed_when: false
   changed_when: false
@@ -169,7 +169,7 @@
   tags: ["run_tests"]
   become: true
   become_method: sudo
-  command: umount {{ mmtests_device }}
+  ansible.builtin.command: umount {{ mmtests_device }}
   when:
     - mmtests_requires_mkfs_device | bool
     - mountpoint_stat.stdout != ""
@@ -214,7 +214,7 @@
 
 - name: Show kernel version
   tags: ["run_tests"]
-  debug:
+  ansible.builtin.debug:
     msg: "Kernel version on {{ inventory_hostname }} : {{ kernel_version.stdout }}"
 
 - name: Run mmtests in background
@@ -259,7 +259,7 @@
 - name: Archive mmtests results directory on remote host
   become: true
   become_method: sudo
-  command: >
+  ansible.builtin.command: >
     tar czf {{ mmtests_results_dir_basename }}/mmtests-results-{{ inventory_hostname }}.tar.gz -C {{ mmtests_results_dir }} .
   args:
     creates: "{{ mmtests_results_dir_basename }}/mmtests-results-{{ inventory_hostname }}.tar.gz"
diff --git a/playbooks/roles/mmtests_compare/tasks/main.yml b/playbooks/roles/mmtests_compare/tasks/main.yml
index 59d7468e..57c11604 100644
--- a/playbooks/roles/mmtests_compare/tasks/main.yml
+++ b/playbooks/roles/mmtests_compare/tasks/main.yml
@@ -3,7 +3,7 @@
   delegate_to: localhost
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - perl
       - perl-doc
@@ -25,7 +25,7 @@
   delegate_to: localhost
   become: true
   become_method: sudo
-  cpanm:
+  community.general.cpanm:
     name: "{{ item }}"
   with_items:
     - File::Temp
@@ -38,7 +38,7 @@
   delegate_to: localhost
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name:
       - perl
       - perl-File-Which
@@ -62,7 +62,7 @@
   delegate_to: localhost
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     name:
       - perl
       - perl-File-Which
@@ -106,7 +106,7 @@
 
 - name: Check if mmtests fixes directory exists
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ topdir_path }}/workflows/mmtests/fixes/"
   register: fixes_dir
   run_once: true
@@ -114,7 +114,7 @@
 
 - name: Find mmtests patches in fixes directory
   delegate_to: localhost
-  find:
+  ansible.builtin.find:
     paths: "{{ topdir_path }}/workflows/mmtests/fixes/"
     patterns: "*.patch"
   register: mmtests_patches
@@ -124,7 +124,7 @@
 
 - name: Apply mmtests patches if found
   delegate_to: localhost
-  ansible.builtin.patch:
+  ansible.posix.patch:
     src: "{{ item.path }}"
     basedir: "{{ topdir_path }}/tmp/mmtests"
     strip: 1
@@ -140,13 +140,13 @@
 - name: Get kernel versions from nodes
   block:
     - name: Get baseline kernel version
-      command: uname -r
+      ansible.builtin.command: uname -r
       register: baseline_kernel_version
       delegate_to: "{{ groups['baseline'][0] }}"
       run_once: true
 
     - name: Get dev kernel version
-      command: uname -r
+      ansible.builtin.command: uname -r
       register: dev_kernel_version
       delegate_to: "{{ groups['dev'][0] }}"
       run_once: true
@@ -156,7 +156,7 @@
   tags: ["compare"]
 
 - name: Set node information facts
-  set_fact:
+  ansible.builtin.set_fact:
     baseline_hostname: "{{ groups['baseline'][0] }}"
     baseline_kernel: "{{ baseline_kernel_version.stdout }}"
     dev_hostname: "{{ groups['dev'][0] }}"
@@ -179,7 +179,7 @@
   tags: ["compare"]
 
 - name: Archive baseline results on remote
-  archive:
+  community.general.archive:
     path: "{{ mmtests_data_dir }}/work/log/{{ baseline_hostname }}-{{ baseline_kernel }}"
     dest: "/tmp/baseline-mmtests-results.tar.gz"
     format: gz
@@ -188,7 +188,7 @@
   tags: ["compare"]
 
 - name: Archive dev results on remote
-  archive:
+  community.general.archive:
     path: "{{ mmtests_data_dir }}/work/log/{{ dev_hostname }}-{{ dev_kernel }}"
     dest: "/tmp/dev-mmtests-results.tar.gz"
     format: gz
@@ -198,7 +198,7 @@
   tags: ["compare"]
 
 - name: Fetch baseline results to localhost
-  fetch:
+  ansible.builtin.fetch:
     src: "/tmp/baseline-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/"
     flat: true
@@ -207,7 +207,7 @@
   tags: ["compare"]
 
 - name: Fetch dev results to localhost
-  fetch:
+  ansible.builtin.fetch:
     src: "/tmp/dev-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/"
     flat: true
@@ -218,7 +218,7 @@
 
 - name: Extract baseline results locally
   delegate_to: localhost
-  unarchive:
+  ansible.builtin.unarchive:
     src: "{{ topdir_path }}/tmp/baseline-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/mmtests/work/log/"
     remote_src: true
@@ -227,7 +227,7 @@
 
 - name: Extract dev results locally
   delegate_to: localhost
-  unarchive:
+  ansible.builtin.unarchive:
     src: "{{ topdir_path }}/tmp/dev-mmtests-results.tar.gz"
     dest: "{{ topdir_path }}/tmp/mmtests/work/log/"
     remote_src: true
@@ -266,7 +266,7 @@
 
 - name: Parse comparison data for template
   delegate_to: localhost
-  set_fact:
+  ansible.builtin.set_fact:
     comparison_metrics: []
   run_once: true
   when: kdevops_baseline_and_dev|bool
@@ -276,7 +276,7 @@
   delegate_to: localhost
   block:
     - name: Check for available iterations data
-      find:
+      ansible.builtin.find:
         paths: "{{ topdir_path }}/tmp/mmtests/work/log/{{ item }}/{{ mmtests_test_type }}"
         patterns: "*.gz"
         recurse: true
@@ -311,7 +311,7 @@
 
 - name: Find generated graph files
   delegate_to: localhost
-  find:
+  ansible.builtin.find:
     paths: "{{ topdir_path }}/workflows/mmtests/results/compare"
     patterns: "*.png"
   register: graph_files
@@ -320,7 +320,7 @@
 
 - name: Read graph files for embedding
   delegate_to: localhost
-  slurp:
+  ansible.builtin.slurp:
     src: "{{ item.path }}"
   register: graph_data
   loop: "{{ graph_files.files[:10] }}" # Limit to first 10 graphs
@@ -330,7 +330,7 @@
 
 - name: Prepare graph data for template
   delegate_to: localhost
-  set_fact:
+  ansible.builtin.set_fact:
     performance_graphs: []
   run_once: true
   when: graph_files.files is not defined or graph_files.files | length == 0
@@ -338,7 +338,7 @@
 
 - name: Build graph data list
   delegate_to: localhost
-  set_fact:
+  ansible.builtin.set_fact:
     performance_graphs: "{{ performance_graphs | default([]) + [{'embedded_data': item.content, 'title': item.item.path | basename | regex_replace('.png', '')}] }}"
   loop: "{{ graph_data.results | default([]) }}"
   run_once: true
@@ -349,7 +349,7 @@
 
 - name: Generate benchmark description
   delegate_to: localhost
-  set_fact:
+  ansible.builtin.set_fact:
     benchmark_description: |
       {% if mmtests_test_type == 'thpcompact' %}
       <p><strong>thpcompact</strong> tests memory management performance, specifically:</p>
@@ -386,7 +386,7 @@
 
 - name: Generate comparison report from template
   delegate_to: localhost
-  template:
+  ansible.builtin.template:
     src: comparison_report.html.j2
     dest: "{{ topdir_path }}/workflows/mmtests/results/compare/comparison_report.html"
     mode: "0644"
@@ -411,7 +411,7 @@
 
 - name: Save comparison outputs
   delegate_to: localhost
-  copy:
+  ansible.builtin.copy:
     content: "{{ item.content }}"
     dest: "{{ item.dest }}"
     mode: "0644"
@@ -438,7 +438,7 @@
   tags: ["compare"]
 
 - name: Display comparison report location
-  debug:
+  ansible.builtin.debug:
     msg: |
       🎯 mmtests Comparison Reports Generated:
 
@@ -460,7 +460,7 @@
   tags: ["compare"]
 
 - name: Clean up temporary archives on remote nodes
-  file:
+  ansible.builtin.file:
     path: "/tmp/{{ item }}-mmtests-results.tar.gz"
     state: absent
   delegate_to: "{{ groups[item][0] }}"
diff --git a/playbooks/roles/monitoring/tasks/main.yml b/playbooks/roles/monitoring/tasks/main.yml
index 9e1eeb45..fae9ecbd 100644
--- a/playbooks/roles/monitoring/tasks/main.yml
+++ b/playbooks/roles/monitoring/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,13 +11,13 @@
   tags: vars
 
 - name: Include monitor_run tasks
-  include_tasks: monitor_run.yml
+  ansible.builtin.include_tasks: monitor_run.yml
   when:
     - enable_monitoring|default(false)|bool
   tags: ["monitoring", "monitor_run"]
 
 - name: Include monitor_collect tasks
-  include_tasks: monitor_collect.yml
+  ansible.builtin.include_tasks: monitor_collect.yml
   when:
     - enable_monitoring|default(false)|bool
   tags: ["monitoring", "monitor_collect"]
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect.yml b/playbooks/roles/monitoring/tasks/monitor_collect.yml
index 036595c7..05c91db2 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect.yml
@@ -4,7 +4,7 @@
 - name: Check if folio migration monitoring was started
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: /root/monitoring/folio_migration.pid
   register: folio_migration_pid_file
   when:
@@ -14,7 +14,7 @@
 - name: Stop folio migration monitoring
   become: true
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     if [ -f /root/monitoring/folio_migration.pid ]; then
       pid=$(cat /root/monitoring/folio_migration.pid)
       if ps -p $pid > /dev/null 2>&1; then
@@ -32,7 +32,7 @@
     - folio_migration_pid_file.stat.exists|default(false)
 
 - name: Display stop monitoring status
-  debug:
+  ansible.builtin.debug:
     msg: "{{ stop_monitor.stdout }}"
   when:
     - monitor_developmental_stats|default(false)|bool
@@ -43,7 +43,7 @@
 - name: Check if monitoring data was collected
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: /root/monitoring/folio_migration_stats.txt
   register: folio_migration_data_file
   when:
@@ -53,7 +53,7 @@
 - name: Copy plot_migration_stats.py to target
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     src: "{{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py"
     dest: /root/monitoring/plot_migration_stats.py
     mode: "0755"
@@ -65,7 +65,7 @@
 - name: Check if matplotlib is available for plotting
   become: true
   become_method: sudo
-  command: python3 -c "import matplotlib.pyplot"
+  ansible.builtin.command: python3 -c "import matplotlib.pyplot"
   register: matplotlib_check
   ignore_errors: true
   when:
@@ -76,7 +76,7 @@
 - name: Generate folio migration plots
   become: true
   become_method: sudo
-  command: |
+  ansible.builtin.command: |
     python3 /root/monitoring/plot_migration_stats.py
       /root/monitoring/folio_migration_stats.txt
       /root/monitoring/folio_migration_plot.png
@@ -91,7 +91,7 @@
     - matplotlib_check.rc == 0
 
 - name: Log plot generation skip if matplotlib not available
-  debug:
+  ansible.builtin.debug:
     msg: "Skipping plot generation - matplotlib not available on target system"
   when:
     - monitor_developmental_stats|default(false)|bool
@@ -100,7 +100,7 @@
     - matplotlib_check.rc != 0
 
 - name: Debug monitoring collection start
-  debug:
+  ansible.builtin.debug:
     msg: |
       Starting monitoring collection
       monitor_developmental_stats: {{ monitor_developmental_stats|default(false) }}
@@ -109,11 +109,11 @@
       kdevops_run_fstests: {{ kdevops_run_fstests|default(false) }}
 
 - name: Set monitoring results path
-  set_fact:
+  ansible.builtin.set_fact:
     monitoring_results_path: "{{ monitoring_results_base_path | default(topdir_path + '/workflows/fstests/results/monitoring') }}"
 
 - name: Create local monitoring results directory
-  file: path="{{ monitoring_results_path }}" state=directory
+  ansible.builtin.file: path="{{ monitoring_results_path }}" state=directory
   delegate_to: localhost
   run_once: true
   when:
@@ -123,7 +123,7 @@
 - name: Copy folio migration stats data to localhost
   become: true
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: /root/monitoring/folio_migration_stats.txt
     dest: "{{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats.txt"
     flat: true
@@ -136,7 +136,7 @@
 - name: Check if plot was generated
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: /root/monitoring/folio_migration_plot.png
   register: folio_migration_plot_file
   when:
@@ -146,7 +146,7 @@
 - name: Copy folio migration plot to localhost
   become: true
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: /root/monitoring/folio_migration_plot.png
     dest: "{{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_plot.png"
     flat: true
@@ -157,7 +157,7 @@
     - folio_migration_plot_file.stat.exists|default(false)
 
 - name: Display monitoring data collection summary
-  debug:
+  ansible.builtin.debug:
     msg: |
       Folio migration monitoring collection complete.
       Data saved to: {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats.txt
@@ -171,7 +171,7 @@
 
 # Generate plots on localhost after collecting data
 - name: Check if matplotlib is available on localhost
-  command: python3 -c "import matplotlib.pyplot"
+  ansible.builtin.command: python3 -c "import matplotlib.pyplot"
   delegate_to: localhost
   register: localhost_matplotlib_check
   ignore_errors: true
@@ -181,7 +181,7 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Generate folio migration plots on localhost
-  command: "python3 {{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py\n  -o {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_plot.png\n\
+  ansible.builtin.command: "python3 {{ playbook_dir }}/roles/monitoring/files/plot_migration_stats.py\n  -o {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_plot.png\n\
     \  {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats.txt\n"
   delegate_to: localhost
   register: localhost_plot_generation
@@ -193,7 +193,7 @@
     - localhost_matplotlib_check.rc == 0
 
 - name: Log localhost plot generation status
-  debug:
+  ansible.builtin.debug:
     msg: |
       {% if localhost_matplotlib_check.rc != 0 %}
       Skipping plot generation - matplotlib not available on localhost
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
index c2ecf495..a61ff5e6 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
@@ -5,7 +5,7 @@
 - name: Check if monitoring data exists (without stopping monitoring)
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: /root/monitoring/folio_migration_stats.txt
   register: folio_migration_data_file
   when:
@@ -17,7 +17,7 @@
 - name: Create snapshot of monitoring data
   become: true
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     # Create a snapshot copy to avoid interfering with ongoing monitoring
     cp /root/monitoring/folio_migration_stats.txt /root/monitoring/folio_migration_stats_snapshot.txt
   args:
@@ -31,7 +31,7 @@
 # Plot generation happens on localhost, not on target hosts
 
 - name: Debug monitoring collection status
-  debug:
+  ansible.builtin.debug:
     msg: |
       Collecting monitoring data (without stopping monitoring)
       monitor_developmental_stats: {{ monitor_developmental_stats|default(false) }}
@@ -40,11 +40,11 @@
       Data file exists: {{ folio_migration_data_file.stat.exists|default(false) }}
 
 - name: Set monitoring results path
-  set_fact:
+  ansible.builtin.set_fact:
     monitoring_results_path: "{{ monitoring_results_base_path | default(topdir_path + '/workflows/fstests/results/monitoring') }}"
 
 - name: Create local monitoring results directory
-  file:
+  ansible.builtin.file:
   delegate_to: localhost
   become: false
   run_once: true
@@ -55,7 +55,7 @@
 - name: Check if snapshot was created
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: /root/monitoring/folio_migration_stats_snapshot.txt
   register: folio_migration_snapshot_file
   when:
@@ -65,7 +65,7 @@
 - name: Copy folio migration stats snapshot to localhost
   become: true
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: /root/monitoring/folio_migration_stats_snapshot.txt
     dest: "{{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats_interim.txt"
     flat: true
@@ -78,7 +78,7 @@
 # Plots are generated on localhost, not fetched from targets
 
 - name: Display interim monitoring data collection summary
-  debug:
+  ansible.builtin.debug:
     msg: |
       Interim folio migration monitoring data collected (monitoring still running).
       Data saved to: {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats_interim.txt
@@ -89,7 +89,7 @@
 
 # Generate plots on localhost from the collected data
 - name: Check if matplotlib is available on localhost
-  command: python3 -c "import matplotlib.pyplot"
+  ansible.builtin.command: python3 -c "import matplotlib.pyplot"
   delegate_to: localhost
   register: localhost_matplotlib_check
   ignore_errors: true
@@ -101,7 +101,7 @@
     - monitor_folio_migration|default(false)|bool
 
 - name: Collect all monitoring data files
-  find:
+  ansible.builtin.find:
   delegate_to: localhost
   register: all_monitoring_files
   run_once: true
@@ -111,7 +111,7 @@
     - localhost_matplotlib_check.rc == 0
 
 - name: Generate A/B comparison plots for each configuration
-  shell:
+  ansible.builtin.shell:
   delegate_to: localhost
   with_items: "{{ all_monitoring_files.files | map(attribute='path') | map('basename') | list }}"
   register: ab_plot_generation
@@ -124,7 +124,7 @@
     - all_monitoring_files.files | length > 0
 
 - name: Generate comprehensive plot with all results
-  shell:
+  ansible.builtin.shell:
   delegate_to: localhost
   register: comprehensive_plot_generation
   ignore_errors: true
@@ -135,7 +135,7 @@
     - localhost_matplotlib_check.rc == 0
 
 - name: Log plot generation summary
-  debug:
+  ansible.builtin.debug:
     msg: |
       {% if localhost_matplotlib_check.rc != 0 %}
       Skipping plot generation - matplotlib not available on localhost
@@ -152,7 +152,7 @@
 - name: Clean up snapshot files on target
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item }}"
     state: absent
   loop:
diff --git a/playbooks/roles/monitoring/tasks/monitor_run.yml b/playbooks/roles/monitoring/tasks/monitor_run.yml
index a5a799f0..f56d06e4 100644
--- a/playbooks/roles/monitoring/tasks/monitor_run.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_run.yml
@@ -4,7 +4,7 @@
 - name: Check if folio migration stats are available
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: /sys/kernel/debug/mm/migrate/stats
   register: folio_migration_stats_file
   when:
@@ -14,7 +14,7 @@
 - name: Create monitoring directory
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: /root/monitoring
     state: directory
     mode: "0755"
@@ -26,7 +26,7 @@
 - name: Start folio migration monitoring in background
   become: true
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     nohup bash -c 'while true; do
       echo "$(date +"%Y-%m-%d %H:%M:%S")" >> /root/monitoring/folio_migration_stats.txt
       cat /sys/kernel/debug/mm/migrate/stats >> /root/monitoring/folio_migration_stats.txt
@@ -43,7 +43,7 @@
     - folio_migration_stats_file.stat.exists|default(false)
 
 - name: Save async job ID for later termination
-  set_fact:
+  ansible.builtin.set_fact:
     folio_migration_monitor_job: "{{ folio_migration_monitor.ansible_job_id }}"
   when:
     - monitor_developmental_stats|default(false)|bool
@@ -54,7 +54,7 @@
 - name: Verify monitoring started successfully
   become: true
   become_method: sudo
-  shell: |
+  ansible.builtin.shell: |
     if [ -f /root/monitoring/folio_migration.pid ]; then
       pid=$(cat /root/monitoring/folio_migration.pid)
       if ps -p $pid > /dev/null 2>&1; then
@@ -74,7 +74,7 @@
     - folio_migration_stats_file.stat.exists|default(false)
 
 - name: Display monitoring status
-  debug:
+  ansible.builtin.debug:
     msg: "{{ monitor_status.stdout }}"
   when:
     - monitor_developmental_stats|default(false)|bool
diff --git a/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml b/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
index 8a505a6d..5df9cd6e 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
@@ -11,25 +11,25 @@
         - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ nfsd_export_fstype }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fsprogs: "{{ fstype_userspace_progs[nfsd_export_fstype] | default() }}"
 
 - name: Add {{ fsprogs }} to the nfsd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     nfsd_packages: "{{ nfsd_packages + [fsprogs] }}"
   when:
     - fsprogs is defined
     - fsprogs | length > 0
 
 - name: Add gssproxy to the nfsd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     nfsd_packages: "{{ nfsd_packages + ['gssproxy'] }}"
   when: kdevops_krb5_enable|bool
 
 - name: Install nfsd dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name: "{{ nfsd_packages }}"
     state: present
     update_cache: true
diff --git a/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml b/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
index 676464d7..993b8c73 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
@@ -11,11 +11,11 @@
         - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ nfsd_export_fstype }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fsprogs: "{{ fstype_userspace_progs[nfsd_export_fstype] | default() }}"
 
 - name: Add {{ fsprogs }} to the nfsd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     nfsd_packages: "{{ nfsd_packages + [fsprogs] }}"
   when:
     - fsprogs is defined
@@ -24,7 +24,7 @@
 - name: Install nfsd dependencies
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ nfsd_packages }}"
   retries: 3
diff --git a/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml b/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
index 298008ed..b8176798 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
@@ -11,24 +11,24 @@
         - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ nfsd_export_fstype }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fsprogs: "{{ fstype_userspace_progs[nfsd_export_fstype] | default() }}"
 
 - name: Add {{ fsprogs }} to the nfsd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     nfsd_packages: "{{ nfsd_packages + [fsprogs] }}"
   when:
     - fsprogs is defined
     - fsprogs
 
 - name: Add additional packages needed for krb5 to the nfsd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     nfsd_packages: "{{ nfsd_packages + ['gssproxy', 'libverto-libev1'] }}"
   when: kdevops_krb5_enable|bool
 
 - name: Install nfsd dependencies
   become: true
   become_method: sudo
-  zypper:
+  community.general.zypper:
     name: "{{ nfsd_packages }}"
     state: present
diff --git a/playbooks/roles/nfsd/tasks/main.yml b/playbooks/roles/nfsd/tasks/main.yml
index 23a2cf19..cdd53ac9 100644
--- a/playbooks/roles/nfsd/tasks/main.yml
+++ b/playbooks/roles/nfsd/tasks/main.yml
@@ -15,7 +15,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: nfs.conf.j2
     dest: /etc/nfs.conf
     owner: root
@@ -49,7 +49,7 @@
     mode: "0755"
 
 - name: Test whether SELinux is enabled
-  command: /usr/sbin/selinuxenabled
+  ansible.builtin.command: /usr/sbin/selinuxenabled
   register: selinux_status
   changed_when: false
   failed_when: false
@@ -58,7 +58,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     src: "{{ playbook_dir }}/roles/nfsd/templates/nfsd_policy.te"
     dest: "/root/nfsd_policy.te"
     owner: root
@@ -70,21 +70,21 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: /usr/bin/checkmodule -M -m -o /root/nfsd_policy.mod /root/nfsd_policy.te
+  ansible.builtin.command: /usr/bin/checkmodule -M -m -o /root/nfsd_policy.mod /root/nfsd_policy.te
   when: selinux_status.rc == 0
 
 - name: Compile SELinux policy module into policy package
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: /usr/bin/semodule_package -o /root/nfsd_policy.pp -m /root/nfsd_policy.mod
+  ansible.builtin.command: /usr/bin/semodule_package -o /root/nfsd_policy.pp -m /root/nfsd_policy.mod
   when: selinux_status.rc == 0
 
 - name: Install SELinux policy module
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: /usr/sbin/semodule -i /root/nfsd_policy.pp
+  ansible.builtin.command: /usr/sbin/semodule -i /root/nfsd_policy.pp
   when: selinux_status.rc == 0
 
 - name: Allow nfsd full access to {{ nfsd_export_path }}
@@ -99,7 +99,7 @@
 
 # FIXME: open ports instead
 - name: Populate service facts
-  service_facts:
+  ansible.builtin.service_facts:
 
 - name: Turn off firewalld
   become: true
diff --git a/playbooks/roles/nfsd_add_export/tasks/main.yml b/playbooks/roles/nfsd_add_export/tasks/main.yml
index 627f7cd6..d6b66a64 100644
--- a/playbooks/roles/nfsd_add_export/tasks/main.yml
+++ b/playbooks/roles/nfsd_add_export/tasks/main.yml
@@ -24,7 +24,7 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  file:
+  ansible.builtin.file:
     state: directory
     path: "{{ nfsd_export_path }}/{{ export_volname }}"
     owner: "{{ export_user }}"
@@ -32,7 +32,7 @@
     mode: "{{ export_mode }}"
 
 - name: Test whether SELinux is enabled
-  command: /usr/sbin/selinuxenabled
+  ansible.builtin.command: /usr/sbin/selinuxenabled
   register: selinux_status
   delegate_to: "{{ server_host }}"
   changed_when: false
@@ -43,7 +43,7 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  command: /usr/sbin/restorecon -R "{{ nfsd_export_path }}/{{ export_volname }}"
+  ansible.builtin.command: /usr/sbin/restorecon -R "{{ nfsd_export_path }}/{{ export_volname }}"
   when: selinux_status.rc == 0
 
 - name: Ensure /etc/exports.d exists
@@ -51,7 +51,7 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  file:
+  ansible.builtin.file:
     state: directory
     path: "/etc/exports.d"
     owner: "root"
@@ -59,31 +59,31 @@
     mode: "644"
 
 - name: Copy export options to a template variable
-  set_fact:
+  ansible.builtin.set_fact:
     template_export_options: "{{ export_options }}"
 
 - name: Check for an fsid= export option
-  set_fact:
+  ansible.builtin.set_fact:
     fsid_is_present: '{{ "fsid=" in export_options }}'
   when:
     - export_fstype == "tmpfs"
 
 - name: Generate a unique fsid
-  command: "uuidgen -r"
+  ansible.builtin.command: "uuidgen -r"
   register: export_fsid
   when:
     - export_fstype == "tmpfs"
     - not fsid_is_present|bool
 
 - name: Add an fsid= export option
-  set_fact:
+  ansible.builtin.set_fact:
     template_export_options: "{{ export_options }},fsid={{ export_fsid.stdout }}"
   when:
     - export_fstype == "tmpfs"
     - not fsid_is_present|bool
 
 - name: Enable pNFS for the new export
-  set_fact:
+  ansible.builtin.set_fact:
     template_export_options: "{{ export_options }},pnfs"
   when:
     - export_pnfs|bool
@@ -93,7 +93,7 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  template:
+  ansible.builtin.template:
     src: exports.j2
     dest: /etc/exports.d/{{ export_volname }}.exports
     owner: root
@@ -105,4 +105,4 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  command: /usr/sbin/exportfs -ra
+  ansible.builtin.command: /usr/sbin/exportfs -ra
diff --git a/playbooks/roles/nfstest/tasks/main.yml b/playbooks/roles/nfstest/tasks/main.yml
index ea87125c..b404f64e 100644
--- a/playbooks/roles/nfstest/tasks/main.yml
+++ b/playbooks/roles/nfstest/tasks/main.yml
@@ -140,13 +140,13 @@
   tags: copy_results
 
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ nfstest_results_target }}/" state=absent
+  ansible.builtin.file: path="{{ nfstest_results_target }}/" state=absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  file: path="{{ nfstest_results_target }}/" state=directory
+  ansible.builtin.file: path="{{ nfstest_results_target }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
@@ -160,17 +160,17 @@
 
 - name: Get used target kernel version
   tags: ["copy_results"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
   tags: ["copy_results"]
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ nfstest_results_target }}/../last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ nfstest_results_target }}/../last-kernel.txt
   delegate_to: localhost
   tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
@@ -212,12 +212,12 @@
 - name: Verify last-run kernel directory exists
   tags: ["copy_results"]
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ nfstest_results_full_path }}/last-run/{{ last_kernel }}"
   register: last_run_kernel_dir
 
 - name: Copy over the last-run into the results directory for archiving into kdevops
-  copy:
+  ansible.builtin.copy:
     src: "{{ nfstest_results_full_path }}/last-run/{{ last_kernel }}"
     dest: "{{ nfstest_results_full_path }}/"
   run_once: true
diff --git a/playbooks/roles/pkg/tasks/debian.yml b/playbooks/roles/pkg/tasks/debian.yml
index 6d245b86..98f6687f 100644
--- a/playbooks/roles/pkg/tasks/debian.yml
+++ b/playbooks/roles/pkg/tasks/debian.yml
@@ -1,12 +1,12 @@
 ---
 - name: debian_libaio rename for buster
-  set_fact:
+  ansible.builtin.set_fact:
     is_bookworm: '{{ ansible_distribution_release == "bookworm" }}'
     is_buster: '{{ ansible_distribution_release == "buster" }}'
     is_trixie: '{{ ansible_distribution_release == "trixie" }}'
 
 - name: debian_libaio rename for debian releases older than trixie
-  set_fact:
+  ansible.builtin.set_fact:
     pkg_libaio: "libaio1"
   when: >
     is_buster|bool or
diff --git a/playbooks/roles/pkg/tasks/main.yml b/playbooks/roles/pkg/tasks/main.yml
index 1098e1e8..602b1359 100644
--- a/playbooks/roles/pkg/tasks/main.yml
+++ b/playbooks/roles/pkg/tasks/main.yml
@@ -1,4 +1,4 @@
 ---
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/debian.yml
+  ansible.builtin.import_tasks: tasks/debian.yml
   when: ansible_facts['os_family']|lower == 'debian'
diff --git a/playbooks/roles/postfix_relay_host/tasks/main.yml b/playbooks/roles/postfix_relay_host/tasks/main.yml
index 69470b88..ab063c79 100644
--- a/playbooks/roles/postfix_relay_host/tasks/main.yml
+++ b/playbooks/roles/postfix_relay_host/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -16,7 +16,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  stat: path=/etc/postfix/main.cf
+  ansible.builtin.stat: path=/etc/postfix/main.cf
   register: postfix_config_main_file
   when:
     - postfix_relay_host_setup|bool
@@ -26,7 +26,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/postfix/main.cf
     regexp: "^(relayhost)(.*)"
     line: "relayhost = {{ postfix_relay_host }}"
@@ -38,7 +38,7 @@
 - name: Enable and restart postfix service
   become: true
   become_method: sudo
-  systemd:
+  ansible.builtin.systemd:
     name: postfix
     enabled: true
     state: restarted
diff --git a/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml b/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml
index b6302cfc..f0e7f9c6 100644
--- a/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/pynfs/tasks/install-deps/debian/main.yml
@@ -2,7 +2,7 @@
 - name: Install pynfs build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - gcc
       - git-core
diff --git a/playbooks/roles/pynfs/tasks/install-deps/main.yml b/playbooks/roles/pynfs/tasks/install-deps/main.yml
index ab343e8b..00221282 100644
--- a/playbooks/roles/pynfs/tasks/install-deps/main.yml
+++ b/playbooks/roles/pynfs/tasks/install-deps/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install dependencies for pynfs
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml b/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml
index 915fc566..5139825e 100644
--- a/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/pynfs/tasks/install-deps/redhat/main.yml
@@ -6,7 +6,7 @@
 - name: Install build dependencies for pynfs
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
diff --git a/playbooks/roles/pynfs/tasks/main.yml b/playbooks/roles/pynfs/tasks/main.yml
index d8ffbbd5..4b7ebdc4 100644
--- a/playbooks/roles/pynfs/tasks/main.yml
+++ b/playbooks/roles/pynfs/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,44 +11,43 @@
   tags: vars
 
 - name: Set the path where we collect our local pynfs results
-  set_fact:
+  ansible.builtin.set_fact:
     pynfs_workflow_dir: "../workflows/pynfs"
     pynfs_results_full_path: "{{ topdir_path }}/workflows/pynfs/results"
     pynfs_results_target: "../workflows/pynfs/results/last-run/"
   tags: ["vars"]
 
 - name: Clean up our localhost results directory and files
-  file: path="{{ pynfs_workflow_dir }}/results/" state=absent
+  ansible.builtin.file: path="{{ pynfs_workflow_dir }}/results/" state=absent
   delegate_to: localhost
   run_once: true
   tags: ["clean_local_results"]
 
 - name: Create the local results directory
-  file: path="{{ pynfs_workflow_dir }}/results/" state=directory
+  ansible.builtin.file: path="{{ pynfs_workflow_dir }}/results/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["first_run"]
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["data_partition"]
 
 # Distro specific
 - name: Install dependencies
-  include_tasks: install-deps/main.yml
-
+  ansible.builtin.include_tasks: install-deps/main.yml
 - name: Remove old pynfs dir as we always clone a fresh tree
   tags: ["git", "pynfs"]
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ pynfs_data }}"
     state: absent
 
 - name: Shallow-clone the pynfs source code from {{ pynfs_git }}
   tags: ["git", "pynfs"]
-  git:
+  ansible.builtin.git:
     repo: "{{ pynfs_git }}"
     dest: "{{ pynfs_data }}"
     update: true
@@ -63,7 +62,7 @@
 
 - name: Clone the full pynfs source code tree from {{ pynfs_git }}
   tags: ["git", "pynfs"]
-  git:
+  ansible.builtin.git:
     repo: "{{ pynfs_git }}"
     dest: "{{ pynfs_data }}"
     update: true
@@ -77,19 +76,19 @@
 
 - name: Build pynfs
   tags: ["pynfs"]
-  command: ./setup.py build
+  ansible.builtin.command: ./setup.py build
   args:
     chdir: "{{ pynfs_data }}"
 
 - name: Get the hostname of the NFS server and base volname
   tags: ["vars"]
-  set_fact:
+  ansible.builtin.set_fact:
     nfsd_hostname: "{{ kdevops_host_prefix }}-nfsd"
     volname_base: "pynfs"
 
 - name: Create an export for NFSv4.0 testing
   tags: ["pynfs"]
-  include_role:
+  ansible.builtin.include_role:
     name: nfsd_add_export
   vars:
     server_host: "{{ nfsd_hostname }}"
@@ -100,7 +99,7 @@
 
 - name: Create an export for NFSv4.1 testing
   tags: ["pynfs"]
-  include_role:
+  ansible.builtin.include_role:
     name: nfsd_add_export
   vars:
     server_host: "{{ nfsd_hostname }}"
@@ -111,7 +110,7 @@
 
 - name: Create an export for pNFS testing
   tags: ["pynfs"]
-  include_role:
+  ansible.builtin.include_role:
     name: nfsd_add_export
   vars:
     server_host: "{{ nfsd_hostname }}"
@@ -126,27 +125,27 @@
 - name: Wait until nfsd grace period ends
   tags: ["run_tests"]
   delegate_to: "{{ nfsd_hostname }}"
-  command: /usr/bin/grep -q Y /proc/fs/nfsd/v4_end_grace
+  ansible.builtin.command: /usr/bin/grep -q Y /proc/fs/nfsd/v4_end_grace
   register: result
   retries: 90
   delay: 1
   until: result.rc == 0
 
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ pynfs_results_target }}/" state=absent
+  ansible.builtin.file: path="{{ pynfs_results_target }}/" state=absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  file: path="{{ pynfs_results_target }}/" state=directory
+  ansible.builtin.file: path="{{ pynfs_results_target }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Run pynfs
   tags: ["run_tests"]
-  script: "{{ pynfs_workflow_dir }}/scripts/run_pynfs.sh"
+  ansible.builtin.script: "{{ pynfs_workflow_dir }}/scripts/run_pynfs.sh"
   environment:
     PYNFS_DATA: "{{ pynfs_data }}"
     EXPORT_BASE: "{{ nfsd_hostname }}:{{ nfsd_export_path }}/{{ volname_base }}"
@@ -154,7 +153,7 @@
 
 - name: Run pynfs pNFS block tests
   tags: ["run_tests"]
-  script: "{{ pynfs_workflow_dir }}/scripts/run_pynfs_block.sh"
+  ansible.builtin.script: "{{ pynfs_workflow_dir }}/scripts/run_pynfs_block.sh"
   environment:
     PYNFS_DATA: "{{ pynfs_data }}"
     EXPORT_BASE: "{{ nfsd_hostname }}:{{ nfsd_export_path }}/{{ volname_base }}"
@@ -164,17 +163,17 @@
 
 - name: Get used target kernel version
   tags: ["copy_results"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store kernel_rev variable
   tags: ["copy_results"]
-  set_fact:
+  ansible.builtin.set_fact:
     kernel_rev: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   run_once: true
 
 - name: Document used target kernel version
-  shell: echo {{ kernel_rev }} > {{ pynfs_results_target }}/../last-kernel.txt
+  ansible.builtin.shell: echo {{ kernel_rev }} > {{ pynfs_results_target }}/../last-kernel.txt
   delegate_to: localhost
   tags: ["run_tests", "copy_results", "print_results"]
   run_once: true
@@ -184,7 +183,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ pynfs_data }}/pynfs-{{ item }}-results.json"
     dest: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev}}/{{ kernel_rev }}-v{{ item }}.json"
     flat: true
@@ -197,7 +196,7 @@
   become: true
   become_flags: "su - -c"
   become_method: ansible.builtin.sudo
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ pynfs_data }}/pynfs-{{ item }}-results.json"
     dest: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev}}/{{ kernel_rev }}-v{{ item }}.json"
     flat: true
@@ -209,12 +208,12 @@
 - name: Verify last-run kernel directory exists
   tags: ["copy_results"]
   delegate_to: localhost
-  stat:
+  ansible.builtin.stat:
     path: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev }}"
   register: last_run_kernel_dir
 
 - name: Copy over the last-run into the results directory for archiving into kdevops
-  copy:
+  ansible.builtin.copy:
     src: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev }}"
     dest: "{{ pynfs_results_full_path }}/"
   run_once: true
diff --git a/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml b/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
index 9976786a..358f86a6 100644
--- a/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
+++ b/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
@@ -2,29 +2,28 @@
 # This task performs both regular and kexec reboots sequentially for comparison
 - name: Print uname for each host
   tags: ["run_tests"]
-  debug: var=ansible_kernel
-
+  ansible.builtin.debug: var=ansible_kernel
 - name: Hint to our watchdog our reboot-limit comparison tests are about to kick off
-  file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
+  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
   delegate_to: localhost
   tags: ["run_tests"]
   run_once: true
 
 # Phase 1: Regular reboot test
 - name: Starting Phase 1 - Regular reboot test ({{ reboot_num }} of {{ reboot_limit_max }})
-  debug:
+  ansible.builtin.debug:
     msg: "Starting regular reboot test - reboot {{ reboot_num }} of {{ reboot_limit_max }}"
   tags: ["run_tests"]
 
 - name: Run the regular reboot test using the ansible reboot module
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     post_reboot_delay: 10
   tags: ["run_tests"]
 
 - name: Handle regular reboot count and data collection
-  include_tasks: handle-reboot-data.yml
+  ansible.builtin.include_tasks: handle-reboot-data.yml
   vars:
     reboot_type: "regular"
     data_path: "{{ reboot_limit_data_regular }}"
@@ -32,18 +31,18 @@
 
 # Phase 2: Kexec reboot test
 - name: Starting Phase 2 - Kexec reboot test ({{ reboot_num }} of {{ reboot_limit_max }})
-  debug:
+  ansible.builtin.debug:
     msg: "Starting kexec reboot test - reboot {{ reboot_num }} of {{ reboot_limit_max }}"
   tags: ["run_tests"]
 
 # Kexec preparation tasks
 - name: Get current kernel version for kexec
-  command: uname -r
+  ansible.builtin.command: uname -r
   register: current_kernel_version
   tags: ["run_tests"]
 
 - name: Check for kernel image locations for kexec
-  stat:
+  ansible.builtin.stat:
     path: "{{ kernel_path }}"
   register: kernel_stat
   loop:
@@ -57,7 +56,7 @@
   tags: ["run_tests"]
 
 - name: Set kernel path for kexec
-  set_fact:
+  ansible.builtin.set_fact:
     kexec_kernel_path: "{{ kernel_item.stat.path }}"
   loop: "{{ kernel_stat.results }}"
   loop_control:
@@ -67,7 +66,7 @@
   tags: ["run_tests"]
 
 - name: Check for initrd/initramfs locations for kexec
-  stat:
+  ansible.builtin.stat:
     path: "{{ initrd_path }}"
   register: initrd_stat
   loop:
@@ -82,7 +81,7 @@
   tags: ["run_tests"]
 
 - name: Set initrd path for kexec
-  set_fact:
+  ansible.builtin.set_fact:
     kexec_initrd_path: "{{ initrd_item.stat.path }}"
   loop: "{{ initrd_stat.results }}"
   loop_control:
@@ -92,7 +91,7 @@
   tags: ["run_tests"]
 
 - name: Read current kernel command line for kexec
-  slurp:
+  ansible.builtin.slurp:
     src: /proc/cmdline
   register: cmdline_content
   tags: ["run_tests"]
@@ -100,7 +99,7 @@
 - name: Load kernel into kexec
   become: true
   become_method: sudo
-  command: >
+  ansible.builtin.command: >
     kexec -l {{ kexec_kernel_path }}
     --initrd={{ kexec_initrd_path }}
     --command-line="{{ cmdline_content.content | b64decode | trim }}"
@@ -112,7 +111,7 @@
 - name: Run the kexec reboot test using systemctl kexec
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     msg: "Rebooting system via systemctl kexec for reboot-limit comparison test"
     reboot_command: "systemctl kexec"
     post_reboot_delay: 10
@@ -120,7 +119,7 @@
   tags: ["run_tests"]
 
 - name: Handle kexec reboot count and data collection
-  include_tasks: handle-reboot-data.yml
+  ansible.builtin.include_tasks: handle-reboot-data.yml
   vars:
     reboot_type: "kexec"
     data_path: "{{ reboot_limit_data_kexec }}"
diff --git a/playbooks/roles/reboot-limit/tasks/do-reboot.yml b/playbooks/roles/reboot-limit/tasks/do-reboot.yml
index 8f916b87..f8003c3c 100644
--- a/playbooks/roles/reboot-limit/tasks/do-reboot.yml
+++ b/playbooks/roles/reboot-limit/tasks/do-reboot.yml
@@ -1,10 +1,9 @@
 ---
 - name: Print uname for each host
   tags: ["run_tests"]
-  debug: var=ansible_kernel
-
+  ansible.builtin.debug: var=ansible_kernel
 - name: Hint to our watchdog our reboot-limit tests are about to kick off
-  file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
+  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
   delegate_to: localhost
   tags: ["run_tests"]
   run_once: true
@@ -12,7 +11,7 @@
 - name: Run the reboot test using the ansible reboot module
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     post_reboot_delay: 10
   when:
     - reboot_limit_test_type == "ansible"
@@ -21,7 +20,7 @@
 - name: Reboot using systemctl reboot with proper handling
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     msg: "Rebooting system via systemctl reboot for reboot-limit test"
     reboot_command: "systemctl reboot"
     post_reboot_delay: 10
@@ -32,14 +31,14 @@
 
 # kexec tasks - prepare the kernel for kexec before rebooting
 - name: Get current kernel version for kexec
-  command: uname -r
+  ansible.builtin.command: uname -r
   register: current_kernel_version
   when:
     - reboot_limit_test_type == "systemctl_kexec"
   tags: ["run_tests"]
 
 - name: Check for kernel image locations for kexec
-  stat:
+  ansible.builtin.stat:
     path: "{{ kernel_path }}"
   register: kernel_stat
   loop:
@@ -54,7 +53,7 @@
   tags: ["run_tests"]
 
 - name: Set kernel path for kexec
-  set_fact:
+  ansible.builtin.set_fact:
     kexec_kernel_path: "{{ kernel_item.stat.path }}"
   loop: "{{ kernel_stat.results }}"
   loop_control:
@@ -65,7 +64,7 @@
   tags: ["run_tests"]
 
 - name: Check for initrd/initramfs locations for kexec
-  stat:
+  ansible.builtin.stat:
     path: "{{ initrd_path }}"
   register: initrd_stat
   loop:
@@ -81,7 +80,7 @@
   tags: ["run_tests"]
 
 - name: Set initrd path for kexec
-  set_fact:
+  ansible.builtin.set_fact:
     kexec_initrd_path: "{{ initrd_item.stat.path }}"
   loop: "{{ initrd_stat.results }}"
   loop_control:
@@ -92,7 +91,7 @@
   tags: ["run_tests"]
 
 - name: Read current kernel command line for kexec
-  slurp:
+  ansible.builtin.slurp:
     src: /proc/cmdline
   register: cmdline_content
   when:
@@ -102,7 +101,7 @@
 - name: Load kernel into kexec
   become: true
   become_method: sudo
-  command: >
+  ansible.builtin.command: >
     kexec -l {{ kexec_kernel_path }}
     --initrd={{ kexec_initrd_path }}
     --command-line="{{ cmdline_content.content | b64decode | trim }}"
@@ -115,7 +114,7 @@
 - name: Reboot using systemctl kexec with proper handling
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     msg: "Rebooting system via systemctl kexec for reboot-limit test"
     reboot_command: "systemctl kexec"
     post_reboot_delay: 10
@@ -127,7 +126,7 @@
 - name: Check if the reboot limit count variable file exists
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: "{{ reboot_limit_count_file }}"
   register: reboot_limit_reg_count_file
   tags: ["run_tests", "read_count", "vars"]
@@ -135,7 +134,7 @@
 - name: Read last boot count variable file
   become: true
   become_method: sudo
-  slurp:
+  ansible.builtin.slurp:
     src: "{{ reboot_limit_count_file }}"
   register: reboot_limit_last_count
   when:
@@ -143,21 +142,21 @@
   tags: ["run_tests", "read_count", "vars"]
 
 - name: Set the current boot count into a variable
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_limit_count: "{{ reboot_limit_last_count['content'] | b64decode | int }}"
   tags: ["run_tests", "read_count", "vars"]
   when:
     - reboot_limit_reg_count_file.stat.exists
 
 - name: Adjust the local boot count variable if we rebooted OK
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_limit_count: "{{ reboot_limit_count | int + 1 }}"
   tags: ["run_tests", "read_count"]
   when:
     - reboot_limit_reg_count_file.stat.exists
 
 - name: Set the current boot count into a variable when no prior boot test exists
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_limit_count: 1
   tags: ["run_tests", "read_count", "vars"]
   when:
@@ -166,7 +165,7 @@
 - name: Enable sysrq key if we're about to force a crash
   become: true
   become_method: sudo
-  shell: echo 1 > /proc/sys/kernel/sysrq
+  ansible.builtin.shell: echo 1 > /proc/sys/kernel/sysrq
   tags: ["run_tests", "read_count", "vars", "crash-check"]
   when:
     - reboot_limit_boot_count_crash_enable
@@ -175,7 +174,7 @@
 - name: Force a crash if we were asked to
   become: true
   become_method: sudo
-  shell: echo c > /proc/sysrq-trigger
+  ansible.builtin.shell: echo c > /proc/sysrq-trigger
   ignore_errors: true
   tags: ["run_tests", "read_count", "vars", "crash-check"]
   when:
@@ -185,7 +184,7 @@
 - name: Write current updated boot count variable file to be {{ reboot_limit_count }}
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ reboot_limit_count }}"
     dest: "{{ reboot_limit_count_file }}"
   when:
@@ -195,7 +194,7 @@
 - name: Create last boot count variable file if it does not exist
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "1"
     dest: "{{ reboot_limit_count_file }}"
   when:
@@ -205,7 +204,7 @@
 - name: Wait for boot up to complete before running systemd-analyze
   become: true
   become_method: sudo
-  command: "systemctl is-system-running --wait"
+  ansible.builtin.command: "systemctl is-system-running --wait"
   when:
     - reboot_limit_enable_systemd_analyze|bool
   tags: ["run_tests"]
@@ -213,7 +212,7 @@
 - name: Collect systemctl-analyze results
   become: true
   become_method: sudo
-  command: "systemd-analyze"
+  ansible.builtin.command: "systemd-analyze"
   register: systemd_analyze_cmd
   when:
     - reboot_limit_enable_systemd_analyze|bool
@@ -223,7 +222,7 @@
   become: true
   become_method: sudo
   tags: ["run_tests"]
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: "{{ reboot_limit_analyze_file }}"
     line: "{{ systemd_analyze_cmd.stdout }}"
     create: true
diff --git a/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml b/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml
index 76a7ce0f..788afd56 100644
--- a/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml
+++ b/playbooks/roles/reboot-limit/tasks/handle-reboot-data.yml
@@ -5,7 +5,7 @@
 #   data_path: path where to store data for this reboot type
 
 - name: Set reboot type specific file paths
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_type_analyze_file: "{{ data_path }}/{{ ansible_ssh_host }}/{{ reboot_limits_systemctl_analyze_log }}"
     reboot_type_count_file: "{{ data_path }}/{{ ansible_ssh_host }}/{{ reboot_limits_count_log }}"
   tags: ["run_tests"]
@@ -13,7 +13,7 @@
 - name: Create the data collection directory for {{ reboot_type }} reboot type
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ data_path }}/{{ ansible_ssh_host }}"
     state: directory
   tags: ["run_tests"]
@@ -21,7 +21,7 @@
 - name: Check if the {{ reboot_type }} reboot count file exists
   become: true
   become_method: sudo
-  stat:
+  ansible.builtin.stat:
     path: "{{ reboot_type_count_file }}"
   register: reboot_type_count_file_stat
   tags: ["run_tests"]
@@ -29,7 +29,7 @@
 - name: Read last {{ reboot_type }} boot count
   become: true
   become_method: sudo
-  slurp:
+  ansible.builtin.slurp:
     src: "{{ reboot_type_count_file }}"
   register: reboot_type_last_count
   when:
@@ -37,21 +37,21 @@
   tags: ["run_tests"]
 
 - name: Set the current {{ reboot_type }} boot count into a variable
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_type_count: "{{ reboot_type_last_count['content'] | b64decode | int }}"
   tags: ["run_tests"]
   when:
     - reboot_type_count_file_stat.stat.exists
 
 - name: Adjust the {{ reboot_type }} boot count if we rebooted OK
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_type_count: "{{ reboot_type_count | int + 1 }}"
   tags: ["run_tests"]
   when:
     - reboot_type_count_file_stat.stat.exists
 
 - name: Set the current {{ reboot_type }} boot count when no prior test exists
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_type_count: 1
   tags: ["run_tests"]
   when:
@@ -60,7 +60,7 @@
 - name: Write current {{ reboot_type }} boot count to file ({{ reboot_type_count }})
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ reboot_type_count }}"
     dest: "{{ reboot_type_count_file }}"
   tags: ["run_tests"]
@@ -68,7 +68,7 @@
 - name: Wait for boot up to complete before running systemd-analyze for {{ reboot_type }}
   become: true
   become_method: sudo
-  command: "systemctl is-system-running --wait"
+  ansible.builtin.command: "systemctl is-system-running --wait"
   when:
     - reboot_limit_enable_systemd_analyze|bool
   tags: ["run_tests"]
@@ -76,7 +76,7 @@
 - name: Collect systemctl-analyze results for {{ reboot_type }}
   become: true
   become_method: sudo
-  command: "systemd-analyze"
+  ansible.builtin.command: "systemd-analyze"
   register: systemd_analyze_cmd
   when:
     - reboot_limit_enable_systemd_analyze|bool
@@ -86,7 +86,7 @@
   become: true
   become_method: sudo
   tags: ["run_tests"]
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: "{{ reboot_type_analyze_file }}"
     line: "{{ systemd_analyze_cmd.stdout }}"
     create: true
diff --git a/playbooks/roles/reboot-limit/tasks/install-deps/main.yml b/playbooks/roles/reboot-limit/tasks/install-deps/main.yml
index 91304221..651d4c9e 100644
--- a/playbooks/roles/reboot-limit/tasks/install-deps/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/install-deps/main.yml
@@ -1,12 +1,12 @@
 ---
-- include_role:
+- ansible.builtin.include_role:
     name: pkg
 
 # tasks to install dependencies for reboot-limit
 - name: reboot-limit distribution specific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml b/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml
index ee606cad..5c10cb02 100644
--- a/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install kexec-tools and dependencies for reboot-limit on Red Hat
   become: true
   become_method: sudo
-  ansible.builtin.yum:
+  ansible.builtin.dnf:
     name:
       - kexec-tools
     state: present
diff --git a/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml b/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml
index 65a6aff6..a2250d68 100644
--- a/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/install-deps/suse/main.yml
@@ -2,7 +2,7 @@
 - name: Install kexec-tools and dependencies for reboot-limit on SUSE
   become: true
   become_method: sudo
-  ansible.builtin.zypper:
+  community.general.zypper:
     name:
       - kexec-tools
     state: present
diff --git a/playbooks/roles/reboot-limit/tasks/main.yml b/playbooks/roles/reboot-limit/tasks/main.yml
index 8280df19..a4c65dea 100644
--- a/playbooks/roles/reboot-limit/tasks/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -10,18 +10,18 @@
       skip: true
   tags: vars
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["data_partition"]
 
 - name: Install dependencies for reboot-limit
-  include_tasks: install-deps/main.yml
+  ansible.builtin.include_tasks: install-deps/main.yml
   tags: ["install", "deps"]
 
 - name: Create the reboot-limit data collection directory for each host
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ reboot_limit_data }}/{{ ansible_ssh_host }}"
     state: directory
   when: not reboot_limit_compare_both_enabled|default(false)|bool
@@ -30,7 +30,7 @@
 - name: Create the regular reboot data collection directory for comparison mode
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ reboot_limit_data_regular }}/{{ ansible_ssh_host }}"
     state: directory
   when: reboot_limit_compare_both_enabled|default(false)|bool
@@ -39,7 +39,7 @@
 - name: Create the kexec reboot data collection directory for comparison mode
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ reboot_limit_data_kexec }}/{{ ansible_ssh_host }}"
     state: directory
   when: reboot_limit_compare_both_enabled|default(false)|bool
@@ -48,21 +48,21 @@
 - name: Set the file to collect systemctl-analyze results
   become: true
   become_method: sudo
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_limit_analyze_file: "{{ reboot_limit_data}}/{{ ansible_ssh_host }}/{{ reboot_limits_systemctl_analyze_log }}"
   tags: ["vars"]
 
 - name: Set the file to collect the reboot count
   become: true
   become_method: sudo
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_limit_count_file: "{{ reboot_limit_data}}/{{ ansible_ssh_host }}/{{ reboot_limits_count_log }}"
   tags: ["read_count", "vars"]
 
 - name: Delete old results directory files if a reset was called (single mode)
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item }}"
     state: absent
   with_items:
@@ -76,7 +76,7 @@
 - name: Delete old results directory files if a reset was called (comparison mode - regular)
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ reboot_limit_data_regular }}/{{ ansible_ssh_host }}"
     state: absent
   when: reboot_limit_compare_both_enabled|default(false)|bool
@@ -85,31 +85,31 @@
 - name: Delete old results directory files if a reset was called (comparison mode - kexec)
   become: true
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ reboot_limit_data_kexec }}/{{ ansible_ssh_host }}"
     state: absent
   when: reboot_limit_compare_both_enabled|default(false)|bool
   tags: ["reset"]
 
 - name: Set the path where we collect our local reboot-limit results
-  set_fact:
+  ansible.builtin.set_fact:
     reboot_limit_local_results_dir: "../workflows/demos/reboot-limit/results"
   tags: ["vars"]
 
 - name: Clean up our localhost results directory and files as we are on boot number {{ reboot_limit_count }}
-  file: path="{{ reboot_limit_local_results_dir }}/" state=absent
+  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/" state=absent
   delegate_to: localhost
   run_once: true
   tags: ["clean_local_results", "first_run"]
 
 - name: Create the local results directory
-  file: path="{{ reboot_limit_local_results_dir }}/" state=directory
+  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["first_run"]
 
 - name: Run the reboot loop (single mode)
-  include_tasks: do-reboot.yml
+  ansible.builtin.include_tasks: do-reboot.yml
   with_sequence: count={{ reboot_limit_max }}
   loop_control:
     loop_var: reboot_num
@@ -117,7 +117,7 @@
   tags: ["run_tests"]
 
 - name: Run the reboot comparison loop (both regular and kexec)
-  include_tasks: do-reboot-compare.yml
+  ansible.builtin.include_tasks: do-reboot-compare.yml
   with_sequence: count={{ reboot_limit_max }}
   loop_control:
     loop_var: reboot_num
@@ -129,7 +129,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item }}"
     dest: "{{ reboot_limit_local_results_dir }}/{{ item | regex_replace(reboot_limit_data | regex_escape()) | regex_replace('^/', '') }}"
     flat: true
@@ -145,7 +145,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ reboot_limit_data_regular }}/{{ ansible_ssh_host }}/{{ item }}"
     dest: "{{ reboot_limit_local_results_dir }}/regular/{{ ansible_ssh_host }}/{{ item }}"
     flat: true
@@ -159,7 +159,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ reboot_limit_data_kexec }}/{{ ansible_ssh_host }}/{{ item }}"
     dest: "{{ reboot_limit_local_results_dir }}/kexec/{{ ansible_ssh_host }}/{{ item }}"
     flat: true
diff --git a/playbooks/roles/selftests/tasks/install-deps/debian/main.yml b/playbooks/roles/selftests/tasks/install-deps/debian/main.yml
index 7fa19e20..2a807605 100644
--- a/playbooks/roles/selftests/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/debian/main.yml
@@ -2,14 +2,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: deps
 
 - name: Install every single selftest build dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - gcc
       - bc
diff --git a/playbooks/roles/selftests/tasks/install-deps/main.yml b/playbooks/roles/selftests/tasks/install-deps/main.yml
index 7ffa2cbe..bb752e04 100644
--- a/playbooks/roles/selftests/tasks/install-deps/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/main.yml
@@ -1,9 +1,9 @@
 ---
 # tasks to install dependencies for selftests
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml b/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml
index bca86f41..60148d4e 100644
--- a/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/redhat/main.yml
@@ -2,7 +2,7 @@
 - name: Install every single selftest build dependencies
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   vars:
diff --git a/playbooks/roles/selftests/tasks/install-deps/suse/main.yml b/playbooks/roles/selftests/tasks/install-deps/suse/main.yml
index ceb1806b..7ff252d7 100644
--- a/playbooks/roles/selftests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/suse/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -24,7 +24,7 @@
     - is_sle|bool
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
diff --git a/playbooks/roles/selftests/tasks/main.yml b/playbooks/roles/selftests/tasks/main.yml
index 86bb9548..02d3476c 100644
--- a/playbooks/roles/selftests/tasks/main.yml
+++ b/playbooks/roles/selftests/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -15,12 +15,11 @@
 # the target node and the localhost because we first need to build
 # the target selftests for the nodes and then actually use them.
 - name: Install dependencies
-  include_tasks: install-deps/main.yml
-
+  ansible.builtin.include_tasks: install-deps/main.yml
 - name: Install dependencies to build Linux selftests on host
   tags: ["deps"]
   run_once: true
-  import_tasks: install-deps/main.yml
+  ansible.builtin.import_tasks: install-deps/main.yml
   delegate_to: localhost
   when:
     - bootlinux_9p|bool
@@ -30,7 +29,7 @@
     is_selftest_xarray: "{{ 'xarray' in ansible_host }}"
     is_selftest_maple: "{{ 'maple' in ansible_host }}"
     is_selftest_vma: "{{ 'vma' in ansible_host }}"
-  set_fact:
+  ansible.builtin.set_fact:
     selftest_xarray: "{{ is_selftest_xarray }}"
     selftest_maple: "{{ is_selftest_maple }}"
     selftest_vma: "{{ is_selftest_vma }}"
@@ -38,17 +37,17 @@
 
 - name: Check if this node is in charge of userspace tests
   vars:
-  set_fact:
+  ansible.builtin.set_fact:
     selftest_userspace: "{{ selftest_xarray or selftest_maple or selftest_vma }}"
   tags: ["vars"]
 
 - name: Check if this node is in charge of running kernel tests
-  set_fact:
+  ansible.builtin.set_fact:
     selftest_kernelspace: "{{ not selftest_userspace }}"
   tags: ["vars"]
 
 - name: Debug kernelspace / userspace tests
-  debug:
+  ansible.builtin.debug:
     msg: |
       Host: {{ ansible_host }}
       - selftest_xarray: {{ selftest_xarray }}
@@ -59,19 +58,19 @@
   tags: ["run_tests"]
 
 - name: Fail if both userspace and kernelspace are True
-  fail:
+  ansible.builtin.fail:
     msg: "Both selftest_userspace and selftest_kernelspace are True for host {{ ansible_host }}. This is not expected."
   when: selftest_userspace and selftest_kernelspace
   tags: ["vars"]
 
 - name: Fail if both userspace and kernelspace are False
-  fail:
+  ansible.builtin.fail:
     msg: "Both selftest_userspace and selftest_kernelspace are False for host {{ ansible_host }}. This is not expected."
   when: not selftest_userspace and not selftest_kernelspace
   tags: ["vars"]
 
 - name: Fail if selftest_kernelspace is true on incorrect host
-  fail:
+  ansible.builtin.fail:
     msg: "Both selftest_userspace and selftest_kernelspace are True for host {{ ansible_host }}. This is not expected."
   when: (selftest_kernelspace and (selftest_xarray or selftest_maple or selftest_vma))
   tags: ["vars"]
@@ -81,7 +80,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "/lib/udev/rules.d/50-firmware.rules"
     state: absent
   when:
@@ -92,24 +91,24 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "/lib/firmware"
     state: directory
     mode: "0755"
   when:
     - selftests_section_firmware|bool
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["data_partition"]
 
 - name: Get nproc
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["selftests", "build"]
   register: nproc
 
 - name: Get nproc on host
-  command: "{{ num_jobs }}"
+  ansible.builtin.command: "{{ num_jobs }}"
   tags: ["selftests", "build"]
   register: nproc_host
   when:
@@ -119,7 +118,7 @@
   vars:
     all_tests: "{{ play_hosts | join(' ') | regex_replace('selftests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_')
       }}"
-  set_fact:
+  ansible.builtin.set_fact:
     target_selftest: "{{ ansible_host | regex_replace('selftests-') | regex_replace(kdevops_host_prefix + '-') | regex_replace('-dev') | regex_replace('-', '_') }}"
     all_selftest_targets: "{{ all_tests | regex_replace('maple') | regex_replace('xarray') }}"
   tags: ["selftests", "vars"]
@@ -132,7 +131,7 @@
 # 2) installing built selftests
 - name: Build selftests
   tags: ["selftests", "build"]
-  make:
+  community.general.make:
     chdir: "{{ selftests_data }}"
     jobs: "{{ nproc.stdout }}"
     params:
@@ -144,7 +143,7 @@
 
 - name: Build selftests
   tags: ["selftests", "build"]
-  make:
+  community.general.make:
     chdir: "{{ selftests_data }}"
     jobs: "{{ nproc.stdout }}"
     params:
@@ -156,7 +155,7 @@
 
 - name: Build radix tree tools/testing/radix-tree
   tags: ["selftests", "build"]
-  make:
+  community.general.make:
     chdir: "{{ target_linux_dir_path }}/tools/testing/radix-tree"
     jobs: "{{ nproc.stdout }}"
   when:
@@ -171,7 +170,7 @@
 # met.. so you should ensure that build-deps are met before adding a new target
 - name: Build selftests on host on {{ selftests_data_9p }}
   tags: ["selftests", "build"]
-  make:
+  community.general.make:
     chdir: "{{ selftests_data_9p }}"
     jobs: "{{ nproc_host.stdout }}"
     params:
@@ -185,7 +184,7 @@
 
 - name: Build radix tree tools/testing/radix-tree on host
   tags: ["selftests", "build"]
-  command: "make -j{{ nproc.stdout }}"
+  ansible.builtin.command: "make -j{{ nproc.stdout }}"
   args:
     chdir: "{{ bootlinux_9p_host_path }}/tools/testing/radix-tree"
   delegate_to: localhost
@@ -196,7 +195,7 @@
 
 - name: Build VMA tools/testing/vma
   tags: ["selftests", "build"]
-  make:
+  community.general.make:
     chdir: "{{ target_linux_dir_path }}/tools/testing/vma"
     jobs: "{{ nproc.stdout }}"
   when:
@@ -205,7 +204,7 @@
 
 - name: Build VMA tools/testing/vma on host
   tags: ["selftests", "build"]
-  command: "make -j{{ nproc.stdout }}"
+  ansible.builtin.command: "make -j{{ nproc.stdout }}"
   args:
     chdir: "{{ bootlinux_9p_host_path }}/tools/testing/vma"
   delegate_to: localhost
@@ -222,7 +221,7 @@
   become: true
   become_method: sudo
   become_flags: "su - -c"
-  make:
+  community.general.make:
     chdir: "{{ selftests_data }}"
     jobs: "{{ nproc.stdout }}"
     target: install
@@ -236,29 +235,29 @@
   tags: ["selftests", "run_tests", "reboot"]
   become: true
   become_method: sudo
-  reboot:
+  ansible.builtin.reboot:
     post_reboot_delay: 10
   when:
     - not selftests_skip_reboot|bool
 
 - name: Set the path to selftests workflow
-  set_fact:
+  ansible.builtin.set_fact:
     selftests_workflow_target: "../workflows/selftests/"
   tags: ["selftests", "run_tests", "copy_results", "prior_run", "print_results", "augment_expunge_list"]
 
 - name: Get used target kernel version
   tags: ["selftests", "vars", "copy_results", "augment_expunge_list"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   tags: ["selftests", "vars", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Set the path where we collect our selftests results
-  set_fact:
+  ansible.builtin.set_fact:
     selftests_results_full_path: "{{ topdir_path }}/workflows/selftests/results/"
     selftests_workflow_dir: "../workflows/selftests"
     selftests_results_target: "../workflows/selftests/results/last-run/{{ last_kernel }}"
@@ -266,14 +265,13 @@
 
 - name: Print uname for each host
   tags: ["selftests", "run_tests"]
-  debug: var=ansible_kernel
-
+  ansible.builtin.debug: var=ansible_kernel
 - name: Load configfs module
   tags: ["selftests", "run_tests", "configfs"]
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "modprobe configfs"
+  ansible.builtin.command: "modprobe configfs"
   when:
     - kdevops_run_selftests|bool
 
@@ -281,13 +279,13 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     state: absent
     path: "{{ selftests_data_target }}/results/"
   tags: ["selftests", "run_tests", "clean_results"]
 
 - name: Hint to watchdog tests are about to kick off
-  file: path="{{ selftests_workflow_target }}/.begin" state=touch
+  ansible.builtin.file: path="{{ selftests_workflow_target }}/.begin" state=touch
   delegate_to: localhost
   tags: ["selftests", "run_tests"]
   when:
@@ -298,8 +296,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: sysctl kernel.printk="8 8 1 7"
-
+  ansible.builtin.command: sysctl kernel.printk="8 8 1 7"
 - name: Stop selftests if we're debbugging
   ansible.builtin.meta: end_play
   tags: ["selftests", "run_tests", "vars"]
@@ -309,12 +306,12 @@
 - name: Set variable we'd use for an override for a timeout for this test
   vars:
     selftest_name: "{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') }}"
-  set_fact:
+  ansible.builtin.set_fact:
     selftest_timeout_variable: "{{ 'selftests_section_' + selftest_name + '_timeout' }}"
   tags: ["vars"]
 
 - name: Check if selftest timeout variable exists and is not empty
-  set_fact:
+  ansible.builtin.set_fact:
     selftest_timeout_argument: "{{ '--override-timeout ' + (lookup('vars', selftest_timeout_variable, default='') | string) }}"
   when:
     - selftest_kernelspace|bool
@@ -322,7 +319,7 @@
   tags: ["vars"]
 
 - name: Log timeout argument used
-  debug:
+  ansible.builtin.debug:
     msg: "{{ ansible_host }} could use {{ selftest_timeout_variable }} : using timeout argument {{ selftest_timeout_argument }}"
   tags: ["vars"]
   when:
@@ -333,7 +330,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ command_to_run }}"
+  ansible.builtin.command: "{{ command_to_run }}"
   args:
     chdir: "{{ target_linux_dir_path }}/tools/testing/radix-tree"
   register: selftests_module_out
@@ -357,7 +354,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "{{ command_to_run }}"
+  ansible.builtin.command: "{{ command_to_run }}"
   args:
     chdir: "{{ test_target_dir }}"
   register: selftests_userspace_out
@@ -387,7 +384,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: "./run_kselftest.sh -s {{ selftest_timeout_argument }}"
+  ansible.builtin.command: "./run_kselftest.sh -s {{ selftest_timeout_argument }}"
   args:
     chdir: "{{ selftests_workdir }}"
   register: selftests_out
@@ -400,7 +397,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ selftests_workdir }}"
     state: directory
     mode: "0755"
@@ -408,7 +405,7 @@
     group: root
 
 - name: Remove watchdog hint that tests have started
-  file: path="{{ selftests_workflow_target }}/.begin" state=absent
+  ansible.builtin.file: path="{{ selftests_workflow_target }}/.begin" state=absent
   delegate_to: localhost
   tags: ["selftests", "run_tests"]
   when:
@@ -416,7 +413,7 @@
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  file: path="{{ selftests_results_target }}/{{ item }}" state=absent
+  ansible.builtin.file: path="{{ selftests_results_target }}/{{ item }}" state=absent
   delegate_to: localhost
   with_items:
     - "last-run"
@@ -426,13 +423,13 @@
   tags: ["selftests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  file: path="{{ selftests_results_target }}/" state=directory
+  ansible.builtin.file: path="{{ selftests_results_target }}/" state=directory
   delegate_to: localhost
   run_once: true
   tags: ["selftests", "copy_results", "clean_local_results"]
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ selftests_results_target }}/last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ selftests_results_target }}/last-kernel.txt
   delegate_to: localhost
   tags: ["selftests", "copy_results", "augment_expunge_list"]
   run_once: true
@@ -441,14 +438,14 @@
   tags: ["selftests", "copy_results"]
   become: true
   become_method: sudo
-  command: journalctl -k
+  ansible.builtin.command: journalctl -k
   register: journal_cmd
 
 - name: Save kernel logs to local file per node
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ journal_cmd.stdout }}"
     dest: "{{ selftests_workdir }}/dmesg.log"
   tags: ["selftests", "copy_results"]
@@ -458,7 +455,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ selftests_out.stdout_lines|join('\n') }}"
     dest: "{{ selftests_workdir}}/tap.log"
   when:
@@ -470,7 +467,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ selftests_userspace_out.stdout_lines|join('\n') }}"
     dest: "{{ selftests_workdir}}/userspace.log"
   when:
@@ -481,7 +478,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ selftests_module_out.stdout_lines|join('\n') }}"
     dest: "{{ selftests_workdir}}/module.log"
   when:
@@ -493,7 +490,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  find:
+  ansible.builtin.find:
     paths: "{{ selftests_workdir }}"
     recurse: true
     patterns:
@@ -512,7 +509,7 @@
   become_method: sudo
   vars:
     item_with_target: "{{ target_selftest }}.{{ item.path | basename }}"
-  fetch:
+  ansible.builtin.fetch:
     src: "{{ item.path }}"
     dest: "{{ selftests_results_target }}/{{ item_with_target }}"
     flat: true
@@ -525,7 +522,7 @@
 - name: Find all *.tap.log files in the selftests_results_target directory
   tags: ["selftests", "check_results"]
   delegate_to: localhost
-  find:
+  ansible.builtin.find:
     paths: "{{ selftests_results_target }}"
     patterns: "*.tap.log"
   register: tap_log_files
@@ -533,7 +530,7 @@
 - name: Read each tap.log file
   tags: ["selftests", "check_results"]
   delegate_to: localhost
-  slurp:
+  ansible.builtin.slurp:
     src: "{{ item.path }}"
   with_items: "{{ tap_log_files.files }}"
   register: tap_log_contents
@@ -543,13 +540,13 @@
 - name: Initialize tap_failures as an empty list
   tags: ["selftests", "check_results"]
   delegate_to: localhost
-  set_fact:
+  ansible.builtin.set_fact:
     tap_failures: []
 
 - name: Read each tap.log file
   tags: ["selftests", "check_results"]
   delegate_to: localhost
-  slurp:
+  ansible.builtin.slurp:
     src: "{{ item.path }}"
   with_items: "{{ tap_log_files.files }}"
   register: tap_log_contents
@@ -559,7 +556,7 @@
 - name: Check for TAP failures in the content of each tap.log
   tags: ["selftests", "check_results"]
   delegate_to: localhost
-  set_fact:
+  ansible.builtin.set_fact:
     tap_failures: "{{ tap_failures + [{'file': item.item.path, 'content': item.content | b64decode | string}] }}"
   when: "'not ok' in (item.content | b64decode | string)"
   with_items: "{{ tap_log_contents.results }}"
@@ -569,7 +566,7 @@
 - name: Fail if TAP failures are found
   tags: ["selftests", "check_results"]
   delegate_to: localhost
-  fail:
+  ansible.builtin.fail:
     msg: |
       Test failures detected in the following TAP logs:
       {% for failure in tap_failures %}
diff --git a/playbooks/roles/siw/tasks/main.yml b/playbooks/roles/siw/tasks/main.yml
index 16f074f0..a357fab8 100644
--- a/playbooks/roles/siw/tasks/main.yml
+++ b/playbooks/roles/siw/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
diff --git a/playbooks/roles/smbd/tasks/install-deps/debian/main.yml b/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
index e32a052c..eb757514 100644
--- a/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
@@ -11,11 +11,11 @@
         - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ smbd_share_fstype }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fsprogs: "{{ fstype_userspace_progs[smbd_share_fstype] | default() }}"
 
 - name: Add {{ fsprogs }} to the smbd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     smbd_packages: "{{ smbd_packages + [fsprogs] }}"
   when:
     - fsprogs is defined
@@ -24,7 +24,7 @@
 - name: Install smbd dependencies
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name: "{{ smbd_packages }}"
     state: present
     update_cache: true
diff --git a/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml b/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
index f5410bd3..2bc78700 100644
--- a/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
@@ -11,11 +11,11 @@
         - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ smbd_share_fstype }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fsprogs: "{{ fstype_userspace_progs[smbd_share_fstype] | default() }}"
 
 - name: Add {{ fsprogs }} to the smbd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     smbd_packages: "{{ smbd_packages + [fsprogs] }}"
   when:
     - fsprogs is defined
@@ -24,7 +24,7 @@
 - name: Install smbd dependencies
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ smbd_packages }}"
   retries: 3
diff --git a/playbooks/roles/smbd/tasks/install-deps/suse/main.yml b/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
index 112e3962..a6a7d077 100644
--- a/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
@@ -11,11 +11,11 @@
         - "vars"
 
 - name: Determine which fsprogs package is needed for "{{ smbd_share_fstype }}"
-  set_fact:
+  ansible.builtin.set_fact:
     fsprogs: "{{ fstype_userspace_progs[smbd_share_fstype] | default() }}"
 
 - name: Add {{ fsprogs }} to the smbd packages list
-  set_fact:
+  ansible.builtin.set_fact:
     smbd_packages: "{{ smbd_packages + [fsprogs] }}"
   when:
     - fsprogs is defined
diff --git a/playbooks/roles/smbd/tasks/main.yml b/playbooks/roles/smbd/tasks/main.yml
index aee5b04b..0e3497d5 100644
--- a/playbooks/roles/smbd/tasks/main.yml
+++ b/playbooks/roles/smbd/tasks/main.yml
@@ -38,7 +38,7 @@
     mode: "0755"
 
 - name: Test whether SELinux is enabled
-  command: /usr/sbin/selinuxenabled
+  ansible.builtin.command: /usr/sbin/selinuxenabled
   register: selinux_status
   changed_when: false
   failed_when: false
diff --git a/playbooks/roles/smbd_add_share/tasks/main.yml b/playbooks/roles/smbd_add_share/tasks/main.yml
index ba815be0..8be27e11 100644
--- a/playbooks/roles/smbd_add_share/tasks/main.yml
+++ b/playbooks/roles/smbd_add_share/tasks/main.yml
@@ -16,7 +16,7 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  filesystem:
+  community.general.filesystem:
     fstype: "{{ share_fstype }}"
     dev: "/dev/shares/{{ share_volname }}"
   when:
@@ -28,7 +28,7 @@
   become_method: sudo
   delegate_to: "{{ server_host }}"
   throttle: 1 # running this in parallel can clobber fstab changes
-  mount:
+  ansible.posix.mount:
     path: "{{ smbd_share_path }}/{{ share_volname }}"
     src: "/dev/shares/{{ share_volname }}"
     fstype: "{{ share_fstype }}"
@@ -42,7 +42,7 @@
   become_method: sudo
   delegate_to: "{{ server_host }}"
   throttle: 1 # running this in parallel can clobber fstab changes
-  mount:
+  ansible.posix.mount:
     path: "{{ smbd_share_path }}/{{ share_volname }}"
     src: "tmpfs"
     fstype: "tmpfs"
@@ -55,7 +55,7 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  file:
+  ansible.builtin.file:
     state: directory
     path: "{{ smbd_share_path }}/{{ share_volname }}"
     owner: "{{ share_user }}"
@@ -63,7 +63,7 @@
     mode: "{{ share_mode }}"
 
 - name: Test whether SELinux is enabled
-  command: /usr/sbin/selinuxenabled
+  ansible.builtin.command: /usr/sbin/selinuxenabled
   register: selinux_status
   delegate_to: "{{ server_host }}"
   changed_when: false
@@ -74,7 +74,7 @@
   become_flags: "su - -c"
   become_method: sudo
   delegate_to: "{{ server_host }}"
-  command: /usr/sbin/restorecon -R "{{ smbd_share_path }}/{{ share_volname }}"
+  ansible.builtin.command: /usr/sbin/restorecon -R "{{ smbd_share_path }}/{{ share_volname }}"
   when: selinux_status.rc == 0
 
 - name: Create an SMB share for the new fs
diff --git a/playbooks/roles/steady_state/tasks/main.yaml b/playbooks/roles/steady_state/tasks/main.yaml
index bde1abfe..bab189e3 100644
--- a/playbooks/roles/steady_state/tasks/main.yaml
+++ b/playbooks/roles/steady_state/tasks/main.yaml
@@ -11,13 +11,13 @@
   failed_when: false
   tags: vars
 
-- include_role:
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["data_partition"]
 
 - name: Ensure fio is installed
   become: true
-  package:
+  ansible.builtin.package:
     name: fio
     state: present
 
@@ -32,7 +32,7 @@
 - name: Generate fio steady state configs
   become: true
   become_method: sudo
-  template:
+  ansible.builtin.template:
     src: "{{ item }}.j2"
     dest: "{{ steady_state_data }}/{{ item }}"
     mode: "0644"
@@ -81,7 +81,7 @@
 - name: Get device basename from resolved symlink
   become: true
   become_method: sudo
-  set_fact:
+  ansible.builtin.set_fact:
     device_basename: "{{ real_device_path.stdout | basename }}"
   when: kdevops_run_ssd_steady_state | bool
   tags: ["prefill"]
@@ -119,7 +119,7 @@
 - name: Set block device properties as facts
   become: true
   become_method: sudo
-  set_fact:
+  ansible.builtin.set_fact:
     device_physical_block_size: >-
       {{
         (device_sysfs_read.results |
@@ -161,7 +161,7 @@
     effective_blocksize: "{{ effective_blocksize | trim | int }}"
 
 - name: Debug type of device_optimal_io_size
-  debug:
+  ansible.builtin.debug:
     msg: "device_optimal_io_size={{ device_optimal_io_size }} ({{ device_optimal_io_size | type_debug }})"
 
 - name: Validate capacity alignment to physical block size
diff --git a/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml b/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml
index c38aa502..bd091389 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/debian/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -13,14 +13,14 @@
 - name: Update apt cache
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     update_cache: true
   tags: deps
 
 - name: Install sysbench deps
   become: true
   become_method: sudo
-  apt:
+  ansible.builtin.apt:
     name:
       - docker.io
       - locales
diff --git a/playbooks/roles/sysbench/tasks/install-deps/main.yml b/playbooks/roles/sysbench/tasks/install-deps/main.yml
index 4e01d57d..6936b77d 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/main.yml
@@ -1,12 +1,12 @@
 ---
-- include_role:
+- ansible.builtin.include_role:
     name: pkg
 
 # tasks to install dependencies for oscheck
 - name: oscheck distribution ospecific setup
-  import_tasks: tasks/install-deps/debian/main.yml
+  ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
-- import_tasks: tasks/install-deps/suse/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
   when: ansible_facts['os_family']|lower == 'suse'
-- import_tasks: tasks/install-deps/redhat/main.yml
+- ansible.builtin.import_tasks: tasks/install-deps/redhat/main.yml
   when: ansible_facts['os_family']|lower == 'redhat'
diff --git a/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml b/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml
index 87c3c3af..9b780db2 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/redhat/main.yml
@@ -12,7 +12,7 @@
 - name: Install docker
   become: true
   become_method: sudo
-  yum:
+  ansible.builtin.dnf:
     update_cache: true
     name: "{{ packages }}"
   retries: 3
diff --git a/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml b/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml
index 9d6470e0..f9e78f38 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/suse/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Set generic SUSE specific distro facts
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle: '{{ (ansible_distribution == "SLES") or (ansible_distribution == "SLED") }}'
     is_leap: '{{ "Leap" in ansible_distribution }}'
     is_tumbleweed: '{{ "openSUSE Tumbleweed" == ansible_distribution }}'
 
 - name: Set SLE specific version labels to make checks easier
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: '{{ ansible_distribution_major_version == "10" }}'
     is_sle11: '{{ ansible_distribution_major_version == "11" }}'
     is_sle12: '{{ ansible_distribution_major_version == "12" }}'
@@ -24,7 +24,7 @@
     - is_sle|bool
 
 - name: Set SLE specific version labels to make checks easier when not SLE
-  set_fact:
+  ansible.builtin.set_fact:
     is_sle10: false
     is_sle11: false
     is_sle12: false
@@ -42,18 +42,18 @@
     - not is_sle|bool
 
 - name: By default we assume we have figured out how to add repos on a release
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: true
 
 - name: Lets us disable things which require a zypper repo present
-  set_fact:
+  ansible.builtin.set_fact:
     repos_present: false
   when:
     - is_sle|bool
     - is_sle10|bool or is_sle11|bool
 
 - name: The default is to assume all distros have the indent package
-  set_fact:
+  ansible.builtin.set_fact:
     has_indent: true
 
 - name: Install docker tools
diff --git a/playbooks/roles/sysbench/tasks/main.yaml b/playbooks/roles/sysbench/tasks/main.yaml
index 451a5659..77c57d6a 100644
--- a/playbooks/roles/sysbench/tasks/main.yaml
+++ b/playbooks/roles/sysbench/tasks/main.yaml
@@ -25,9 +25,8 @@
 
 # Distro specific
 - name: Install dependencies
-  include_tasks: install-deps/main.yml
-
-- include_role:
+  ansible.builtin.include_tasks: install-deps/main.yml
+- ansible.builtin.include_role:
     name: create_data_partition
   tags: ["mkfs"]
 
diff --git a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
index 480fbe24..481f1097 100644
--- a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
+++ b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
@@ -33,7 +33,7 @@
     fs_cmd: "{{  lookup('vars', 'sysbench_' + fs_command_variable) }}"
     sect_size: "{{  lookup('vars', fs_sector_size_variable) }}"
     db_page_size: "{{  lookup('vars', 'sysbench_' + db_page_size_variable) }}"
-  set_fact:
+  ansible.builtin.set_fact:
     filesystem_command_for_host: "{{ fs_cmd }}"
     sysbench_fs_sector_size: "{{ sect_size }}"
     sysbench_fstype: "{{ fs_type_variable }}"
@@ -42,33 +42,33 @@
   tags: ["vars"]
 
 - name: Set filesystem options for XFS with sector size
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_fs_opts: "{{ sysbench_fs_opts_without_sector_size }} -s size={{ sysbench_fs_sector_size }} -L {{ sysbench_label }}"
   when: sysbench_fstype != 'ext4'
   tags: ["mkfs"]
 
 - name: Set filesystem options for ext4 without sector size
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_fs_opts: "{{ sysbench_fs_opts_without_sector_size }} -L {{ sysbench_label }}"
   when: sysbench_fstype == 'ext4'
   tags: ["mkfs"]
 
 - name: Set environment variable for sector size for ext4
   vars:
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_fs_env:
       MKE2FS_DEVICE_SECTSIZE: "{{ sysbench_fs_sector_size }}"
   when: sysbench_fstype == 'ext4'
   tags: ["mkfs"]
 
 - name: Clear environment variable for non-ext4 filesystems
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_fs_env: {}
   when: sysbench_fstype != 'ext4'
   tags: ["mkfs"]
 
 - name: Display the filesystem options and environment variable for the current host
-  debug:
+  ansible.builtin.debug:
     msg: |
       Sysbench device:    {{ sysbench_device }}
       Sysbench fstype:    {{ sysbench_fstype }}
@@ -79,7 +79,7 @@
   tags: ["debug"]
 
 - name: Fail if no filesystem command is found for the host
-  fail:
+  ansible.builtin.fail:
     msg: "No filesystem configuration command found for the current host: {{ ansible_host }}"
   when: filesystem_command_for_host is undefined
   tags: ["mkfs"]
@@ -110,7 +110,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.mount:
+  ansible.posix.mount:
     path: "{{ sysbench_mnt }}"
     state: unmounted
   tags: ["clean", "mkfs"]
@@ -137,7 +137,7 @@
 
 - name: Set sysbench_mysql_innodb_doublewrite based on ansible_host
   tags: ["vars"]
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_host_is_baseline: "{{ False if ansible_host is search('-dev$') else True }}"
     sysbench_mysql_innodb_doublewrite: "{{ '0' if ansible_host is search('-dev$') else '1' }}"
   when:
@@ -145,7 +145,7 @@
 
 - name: Set sysbench_mysql_innodb_doublewrite based on ansible_host
   tags: ["vars"]
-  set_fact:
+  ansible.builtin.set_fact:
     sysbench_mysql_innodb_doublewrite: "0"
   when:
     - "sysbench_disable_doublewrite_always|bool"
@@ -184,7 +184,7 @@
   become_method: sudo
   environment:
     GIT_SSL_NO_VERIFY: true
-  git:
+  ansible.builtin.git:
     repo: "https://github.com/lefred/mysqlshell-plugins.git"
     dest: "{{ sysbench_mysql_container_host_root_path }}/.mysqlsh/plugins/"
     update: true
@@ -193,11 +193,11 @@
 
 - name: Get used target kernel version
   tags: ["db_start"]
-  command: "uname -r"
+  ansible.builtin.command: "uname -r"
   register: uname_cmd
 
 - name: Store last kernel variable
-  set_fact:
+  ansible.builtin.set_fact:
     last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
   tags: ["db_start"]
   run_once: true
@@ -218,18 +218,18 @@
     state: directory
 
 - name: Document used target kernel version
-  shell: echo {{ last_kernel }} > {{ topdir_path }}/workflows/sysbench/results/last-kernel.txt
+  ansible.builtin.shell: echo {{ last_kernel }} > {{ topdir_path }}/workflows/sysbench/results/last-kernel.txt
   delegate_to: localhost
   tags: ["db_start"]
   run_once: true
 
 - name: Document double write buffer setting on node
-  shell: echo {{ sysbench_mysql_innodb_doublewrite }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_doublewrite.txt
+  ansible.builtin.shell: echo {{ sysbench_mysql_innodb_doublewrite }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_doublewrite.txt
   delegate_to: localhost
   tags: ["db_start"]
 
 - name: Document db page size setting on node
-  shell: echo {{ sysbench_db_page_size }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_page_size.txt
+  ansible.builtin.shell: echo {{ sysbench_db_page_size }} > {{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/innodb_page_size.txt
   delegate_to: localhost
   tags: ["db_start"]
 
@@ -292,7 +292,7 @@
   tags: ["db_start"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ mysql_socket_output_explicit.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-mysql-client-explicit-test.txt"
   when: "sysbench_type_mysql_docker|bool"
@@ -311,7 +311,7 @@
   tags: ["db_start"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ mysql_socket_output.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-mysql-client-test.txt"
   when: "sysbench_type_mysql_docker|bool"
@@ -331,7 +331,7 @@
   tags: ["post_entrypoint"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ mysql_add_sysbench_user.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0001-add-user.txt"
   when: "sysbench_type_mysql_docker|bool"
@@ -351,7 +351,7 @@
   tags: ["post_entrypoint"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ mysql_sysbench_privs.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0002-grant-privs-user.txt"
   when: "sysbench_type_mysql_docker|bool"
@@ -381,7 +381,7 @@
   tags: ["post_entrypoint"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ mysql_pip.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0003-install-python-pip.txt"
   when: "sysbench_type_mysql_docker|bool"
@@ -403,7 +403,7 @@
   tags: ["post_entrypoint"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ mysql_pip_install_deps.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/root-setup-0004-install-telemetry-reqs.txt"
   when: "sysbench_type_mysql_docker|bool"
@@ -491,7 +491,7 @@
   tags: ["post_entrypoint"]
   become: true
   become_method: sudo
-  copy:
+  ansible.builtin.copy:
     content: "{{ sysbench_init_pop.stdout }}"
     dest: "{{ sysbench_docker_telemetry_path }}/sysbench_populate.txt"
   when: "sysbench_type_mysql_docker|bool"
@@ -549,7 +549,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  async_status:
+  ansible.builtin.async_status:
     jid: "{{ sysbench_job.ansible_job_id }}"
   register: sysbench_result
   until: sysbench_result.finished
@@ -561,8 +561,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  command: mv "{{ sysbench_result.results_file }}" "{{ sysbench_telemetry_path }}/sysbench_output.txt"
-
+  ansible.builtin.command: mv "{{ sysbench_result.results_file }}" "{{ sysbench_telemetry_path }}/sysbench_output.txt"
 - name: Fetch sysbench container logs
   become: true
   become_flags: "su - -c"
@@ -578,7 +577,7 @@
   become_flags: "su - -c"
   become_method: sudo
   tags: ["run_sysbench"]
-  copy:
+  ansible.builtin.copy:
     content: "{{ sysbench_logs.stdout }}"
     dest: "{{ sysbench_telemetry_path }}/docker-sysbench-results-{{ ansible_date_time.iso8601 }}.log"
   when: "sysbench_type_mysql_docker|bool"
@@ -618,7 +617,7 @@
 
 - name: Copy telemetry data from each node to the localhost
   tags: ["results"]
-  synchronize:
+  ansible.posix.synchronize:
     src: "{{ sysbench_telemetry_path }}/"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/"
     mode: pull
@@ -632,11 +631,11 @@
   tags: ["results"]
   become: true
   become_method: sudo
-  command: journalctl -k
+  ansible.builtin.command: journalctl -k
   register: journal_cmd
 
 - name: Save kernel logs to local file per node
-  copy:
+  ansible.builtin.copy:
     content: "{{ journal_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/dmesg.txt"
   delegate_to: localhost
@@ -646,11 +645,11 @@
   tags: ["results"]
   become: true
   become_method: sudo
-  command: cat /sys/kernel/debug/extfrag/extfrag_index
+  ansible.builtin.command: cat /sys/kernel/debug/extfrag/extfrag_index
   register: extfrag_index_cmd
 
 - name: Save memory fragmentation index per node
-  copy:
+  ansible.builtin.copy:
     content: "{{ extfrag_index_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/extfrag_index.txt"
   delegate_to: localhost
@@ -660,11 +659,11 @@
   tags: ["results"]
   become: true
   become_method: sudo
-  command: cat /sys/kernel/debug/extfrag/unusable_index
+  ansible.builtin.command: cat /sys/kernel/debug/extfrag/unusable_index
   register: unusable_index_cmd
 
 - name: Save memory memory unusable index per node
-  copy:
+  ansible.builtin.copy:
     content: "{{ unusable_index_cmd.stdout }}"
     dest: "{{ topdir_path }}/workflows/sysbench/results/{{ inventory_hostname }}/unusable_index.txt"
   delegate_to: localhost
@@ -674,7 +673,7 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  file:
+  ansible.builtin.file:
     path: "{{ item }}"
     state: absent
   loop:
@@ -685,7 +684,7 @@
 
 - name: Remove all results and telemetry directories on the host
   become: true
-  file:
+  ansible.builtin.file:
     path: "{{ item }}"
     state: absent
   loop:
@@ -696,7 +695,7 @@
 - name: Find directories under sysbench results target
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
-  find:
+  ansible.builtin.find:
     paths: "{{ sysbench_results_target }}"
     recurse: false
     file_type: directory
@@ -709,7 +708,7 @@
 - name: Check if sysbench_tps.txt exists in each directory
   vars:
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
-  stat:
+  ansible.builtin.stat:
     path: "{{ sysbench_results_target }}/{{ item.path | basename }}/sysbench_tps.txt"
   register: sysbench_tps_exists
   with_items: "{{ sysbench_results_dirs.files }}"
@@ -725,7 +724,8 @@
     sysbench_results_target: "{{ topdir_path }}/workflows/sysbench/results/"
     host_dir: "{{ item.item.path | basename }}"
     output_image: "{{ sysbench_results_target }}/{{ host_dir }}/sysbench_tps_plot.png"
-  command: "./python/workflows/sysbench/sysbench-tps-plot.py {{ sysbench_results_target }}/{{ host_dir }}/sysbench_tps.txt --output {{ output_image }}"
+  ansible.builtin.command: "./python/workflows/sysbench/sysbench-tps-plot.py {{ sysbench_results_target }}/{{ host_dir }}/sysbench_tps.txt --output {{ output_image
+    }}"
   tags: ["plot"]
   delegate_to: localhost
   with_items: "{{ sysbench_tps_exists.results }}"
@@ -746,8 +746,8 @@
     legend2: "{{ fs_type }} innodb_doublewrite=OFF"
     file2: "{{ sysbench_results_target }}/{{ dev_host }}/sysbench_tps.txt"
     output_image: "{{ sysbench_results_target }}a_vs_b.png"
-  command: "./python/workflows/sysbench/sysbench-tps-compare.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --output {{ output_image }} {{ file1 }} {{
-    file2 }}"
+  ansible.builtin.command: "./python/workflows/sysbench/sysbench-tps-compare.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --output {{ output_image }}
+    {{ file1 }} {{ file2 }}"
   tags: ["plot"]
   delegate_to: localhost
   with_items:
@@ -767,8 +767,8 @@
     dev_host: "{{ item }}-dev"
     legend2: "{{ fs_type }} innodb_doublewrite=OFF"
     file2: "{{ sysbench_results_target }}/{{ dev_host }}/sysbench_tps.txt"
-  command: "./python/workflows/sysbench/sysbench-tps-variance.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --dir {{ sysbench_results_target }} {{ file1
-    }} {{ file2}}"
+  ansible.builtin.command: "./python/workflows/sysbench/sysbench-tps-variance.py --legend1 \"{{ legend1 }}\" --legend2 \"{{ legend2 }}\" --dir {{ sysbench_results_target
+    }} {{ file1 }} {{ file2}}"
   tags: ["plot"]
   delegate_to: localhost
   with_items:
diff --git a/playbooks/roles/update_etc_hosts/tasks/main.yml b/playbooks/roles/update_etc_hosts/tasks/main.yml
index f026b098..7b124d08 100644
--- a/playbooks/roles/update_etc_hosts/tasks/main.yml
+++ b/playbooks/roles/update_etc_hosts/tasks/main.yml
@@ -1,6 +1,6 @@
 ---
 - name: Import optional extra_args file
-  include_vars: "{{ item }}"
+  ansible.builtin.include_vars: "{{ item }}"
   ignore_errors: true
   with_first_found:
     - files:
@@ -11,7 +11,7 @@
   tags: vars
 
 - name: Wait for target nodes to become reachable
-  wait_for_connection:
+  ansible.builtin.wait_for_connection:
 
 - name: Gather network facts
   ansible.builtin.setup:
@@ -19,27 +19,27 @@
       - "network"
 
 - name: Build network address
-  set_fact:
+  ansible.builtin.set_fact:
     private_network: "{{ terraform_private_net_prefix }}/{{ terraform_private_net_mask }}"
   when:
     - terraform_private_net_enabled
 
 - name: Build list of hosts
-  set_fact:
+  ansible.builtin.set_fact:
     ueh_hosts: "{{ ansible_play_hosts_all | difference([inventory_hostname]) }}"
 
-- debug:
+- ansible.builtin.debug:
     var: ueh_hosts
 
 - name: Stat /etc/cloud/cloud.cfg.d
-  stat:
+  ansible.builtin.stat:
     path: /etc/cloud/cloud.cfg.d
   register: cloud_init
 
 - name: Disable cloud-init hosts management
   become: true
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     dest: /etc/cloud/cloud.cfg.d/99-kdevops-manage-net-disable
     line: "manage_etc_hosts: false"
     create: true
@@ -49,7 +49,7 @@
 - name: Add IP address of all hosts to all hosts
   become: true
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     dest: /etc/hosts
     regexp: ".*{{ item }}$"
     line: "{{ hostvars[item].ansible_all_ipv4_addresses | ipaddr(private_network) | first }} {{ item }}"
@@ -61,7 +61,7 @@
 - name: Add IP address of all hosts to all hosts
   become: true
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     dest: /etc/hosts
     regexp: ".*{{ item }}$"
     line: "{{ hostvars[item].ansible_all_ipv4_addresses | first }} {{item}}"
@@ -73,7 +73,7 @@
 - name: Fix up hostname on Debian guestfs hosts
   become: true
   become_method: sudo
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: /etc/hosts
     regexp: "^(127\\.0\\.1\\.1)(\\s+)unassigned-hostname\\.unassigned-domain\\s+({{ ansible_hostname }})$"
     backrefs: true
diff --git a/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml b/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml
index 8ef64562..3e345595 100644
--- a/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml
+++ b/playbooks/roles/update_ssh_config_guestfs/tasks/main.yml
@@ -1,12 +1,12 @@
 ---
 - name: Check if the ssh config file exists
-  stat:
+  ansible.builtin.stat:
     path: "~/.ssh/config"
   register: ssh_config
 
 # Check if the include directive is already presetn
 - name: Check if the kdevops include directive was used
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: ~/.ssh/config
     regexp: "Include ~/.ssh/config_kdevops_*"
     state: absent
@@ -17,7 +17,7 @@
 
 # Check if the the kdevops_version was added in a comment
 - name: Check if the new include directive was used with a kdevops_version comment
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: ~/.ssh/config
     regexp: "^#(.*)kdevops_version(.*)"
     state: absent
@@ -29,7 +29,7 @@
 # If both the include directive was found and kdevops version comment was found
 # we bail right away to avoid updating the ssh config file always.
 - name: Check if the new fixed include directive was used
-  meta: end_play
+  ansible.builtin.meta: end_play
   when:
     - ssh_config.stat.exists
     - kdevops_ssh_include.found | bool
@@ -39,21 +39,21 @@
 # line was not found. So remove old stale include directives which may be
 # buggy.
 - name: Remove buggy stale include directive to ~/.ssh/config without a new line
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: ~/.ssh/config
     line: "Include ~/.ssh/config_kdevops_*"
     state: absent
   when: ssh_config.stat.exists
 
 - name: Remove any stale kdevops comments
-  lineinfile:
+  ansible.builtin.lineinfile:
     path: ~/.ssh/config
     regexp: "^#(.*)kdevops(.*)"
     state: absent
   when: ssh_config.stat.exists
 
 - name: Remove any extra new lines
-  replace:
+  ansible.builtin.replace:
     path: ~/.ssh/config
     regexp: "(^\\s*$)"
     replace: ""
@@ -61,7 +61,7 @@
 
 # ssh include directives must follow a new line.
 - name: Add Include directive to ~/.ssh/config
-  blockinfile:
+  ansible.builtin.blockinfile:
     path: ~/.ssh/config
     insertbefore: BOF
     marker: "{mark}"

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH RFT 3/8] playbooks: ansible-lint fix jinja
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 1/8] playbooks: ansible-lint fix deprecated-local-action Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 2/8] playbooks: ansible-lint fix fqcn Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 4/8] playbooks: ansible-lint fix key-order Daniel Gomez
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix jinja ansible-lint rule violations

Fixed jinja rule violations across 34 file(s).

Affected files include:
- playbooks/roles/blktests/tasks/main.yml
- playbooks/roles/bootlinux/tasks/install/packages.yml
- playbooks/roles/bootlinux/tasks/main.yml
- playbooks/roles/build_qemu/tasks/install-deps/main.yml
- playbooks/roles/cxl/tasks/main.yml
... and 29 more files

Applied using the ansible-lint --fix=jinja.

Generated-by: Ansible Lint
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/roles/blktests/tasks/main.yml            |  2 +-
 .../roles/bootlinux/tasks/install/packages.yml     |  2 +-
 playbooks/roles/bootlinux/tasks/main.yml           | 10 +++----
 .../roles/build_qemu/tasks/install-deps/main.yml   |  2 +-
 playbooks/roles/cxl/tasks/main.yml                 |  2 +-
 .../roles/devconfig/tasks/install-deps/main.yml    |  2 +-
 .../devconfig/tasks/install-deps/redhat/main.yml   |  6 ++--
 .../roles/devconfig/tasks/kotd-rev-kernel/main.yml |  2 +-
 playbooks/roles/devconfig/tasks/main.yml           |  2 +-
 playbooks/roles/fstests/tasks/main.yml             | 14 ++++-----
 playbooks/roles/gen_hosts/tasks/main.yml           | 12 ++++----
 playbooks/roles/gen_nodes/tasks/main.yml           | 18 ++++++------
 playbooks/roles/gitr/tasks/main.yml                |  2 +-
 .../tasks/install-deps/main.yml                    |  2 +-
 playbooks/roles/kdc/tasks/main.yml                 |  4 +--
 playbooks/roles/kdevops_archive/tasks/main.yml     |  4 +--
 .../roles/libvirt_pcie_passthrough/tasks/main.yml  |  4 +--
 .../roles/libvirt_user/tasks/install-deps/main.yml |  2 +-
 playbooks/roles/ltp/tasks/main.yml                 |  2 +-
 .../roles/monitoring/tasks/monitor_collect.yml     | 10 +++----
 .../monitoring/tasks/monitor_collect_only.yml      |  8 +++---
 .../roles/nfsd/tasks/install-deps/debian/main.yml  |  4 +--
 .../roles/nfsd/tasks/install-deps/redhat/main.yml  |  4 +--
 .../roles/nfsd/tasks/install-deps/suse/main.yml    |  4 +--
 playbooks/roles/nfstest/tasks/main.yml             |  2 +-
 playbooks/roles/pynfs/tasks/main.yml               |  6 ++--
 playbooks/roles/reboot-limit/tasks/main.yml        |  4 +--
 playbooks/roles/selftests/tasks/main.yml           | 33 ++++++----------------
 .../roles/smbd/tasks/install-deps/debian/main.yml  |  4 +--
 .../roles/smbd/tasks/install-deps/redhat/main.yml  |  4 +--
 .../roles/smbd/tasks/install-deps/suse/main.yml    |  4 +--
 .../roles/sysbench/tasks/mysql-docker/main.yaml    |  8 +++---
 playbooks/roles/update_etc_hosts/tasks/main.yml    |  2 +-
 .../roles/volume_group/tasks/terraform/aws.yml     |  2 +-
 34 files changed, 88 insertions(+), 105 deletions(-)

diff --git a/playbooks/roles/blktests/tasks/main.yml b/playbooks/roles/blktests/tasks/main.yml
index 67fdc072..c119b80d 100644
--- a/playbooks/roles/blktests/tasks/main.yml
+++ b/playbooks/roles/blktests/tasks/main.yml
@@ -178,7 +178,7 @@
 
 - name: Store last kernel variable
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
 
diff --git a/playbooks/roles/bootlinux/tasks/install/packages.yml b/playbooks/roles/bootlinux/tasks/install/packages.yml
index 34365293..3395e2c0 100644
--- a/playbooks/roles/bootlinux/tasks/install/packages.yml
+++ b/playbooks/roles/bootlinux/tasks/install/packages.yml
@@ -23,7 +23,7 @@
 
     - name: Add the core kernel package
       ansible.builtin.set_fact:
-        kernel_packages: "{{ kernel_packages + ['/tmp/' + item.path | basename ] }}"
+        kernel_packages: "{{ kernel_packages + ['/tmp/' + item.path | basename] }}"
       when:
         - "'devel' not in item.path"
         - "'headers' not in item.path"
diff --git a/playbooks/roles/bootlinux/tasks/main.yml b/playbooks/roles/bootlinux/tasks/main.yml
index 21581841..8029d26e 100644
--- a/playbooks/roles/bootlinux/tasks/main.yml
+++ b/playbooks/roles/bootlinux/tasks/main.yml
@@ -111,11 +111,11 @@
 - name: Determine active kernel parameters for A/B testing with 9P
   ansible.builtin.set_fact:
     target_linux_git: "{{ bootlinux_dev_tree if bootlinux_dev_tree != '' else target_linux_git }}"
-    active_linux_ref: "{{ target_linux_dev_ref if targeting_dev_nodes|default(false)|bool else target_linux_ref }}"
-    active_linux_kernelrelease: "{{ target_linux_dev_kernelrelease if (targeting_dev_nodes|default(false)|bool and bootlinux_tree_custom_kernelrelease|bool) else
-      target_linux_kernelrelease }}"
-    active_linux_localversion: "{{ target_linux_dev_localversion if (targeting_dev_nodes|default(false)|bool and bootlinux_tree_custom_localversion|bool) else target_linux_localversion
-      }}"
+    active_linux_ref: "{{ target_linux_dev_ref if targeting_dev_nodes | default(false) | bool else target_linux_ref }}"
+    active_linux_kernelrelease: "{{ target_linux_dev_kernelrelease if (targeting_dev_nodes | default(false) | bool and bootlinux_tree_custom_kernelrelease | bool)
+      else target_linux_kernelrelease }}"
+    active_linux_localversion: "{{ target_linux_dev_localversion if (targeting_dev_nodes | default(false) | bool and bootlinux_tree_custom_localversion | bool) else
+      target_linux_localversion }}"
     target_linux_config: "config-{{ target_linux_dev_ref }}"
   when:
     - kdevops_baseline_and_dev|bool
diff --git a/playbooks/roles/build_qemu/tasks/install-deps/main.yml b/playbooks/roles/build_qemu/tasks/install-deps/main.yml
index 287b8b1c..23cda58e 100644
--- a/playbooks/roles/build_qemu/tasks/install-deps/main.yml
+++ b/playbooks/roles/build_qemu/tasks/install-deps/main.yml
@@ -4,7 +4,7 @@
   ignore_errors: true
   with_first_found:
     - files:
-        - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family'] | lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/cxl/tasks/main.yml b/playbooks/roles/cxl/tasks/main.yml
index a92437d8..95dcc3b8 100644
--- a/playbooks/roles/cxl/tasks/main.yml
+++ b/playbooks/roles/cxl/tasks/main.yml
@@ -84,7 +84,7 @@
 
 - name: Store last kernel variable
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   tags: ["ndctl", "cxl-test-prep", "copy_results"]
   run_once: true
 
diff --git a/playbooks/roles/devconfig/tasks/install-deps/main.yml b/playbooks/roles/devconfig/tasks/install-deps/main.yml
index fc389ccf..68ad9e7b 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/main.yml
@@ -20,7 +20,7 @@
   ignore_errors: true
   with_first_found:
     - files:
-        - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family'] | lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml b/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
index 1d213a19..d7fef691 100644
--- a/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/devconfig/tasks/install-deps/redhat/main.yml
@@ -109,21 +109,21 @@
 
 - name: Add btrfs-progs to install package list
   ansible.builtin.set_fact:
-    packages: "{{ packages + [ 'btrfs-progs' ] }}"
+    packages: "{{ packages + ['btrfs-progs'] }}"
   when:
     - devconfig_try_install_kdevtools|bool
     - ansible_distribution == 'Fedora'
 
 - name: Add GNU screen to install package list
   ansible.builtin.set_fact:
-    packages: "{{ packages + [ 'screen' ] }}"
+    packages: "{{ packages + ['screen'] }}"
   when:
     - devconfig_try_install_kdevtools|bool
     - ansible_facts['os_family']|lower != 'redhat' or ansible_facts['distribution_major_version'] | int < 8
 
 - name: Add Tmux to install package list
   ansible.builtin.set_fact:
-    packages: "{{ packages + [ 'tmux' ] }}"
+    packages: "{{ packages + ['tmux'] }}"
   when:
     - devconfig_try_install_kdevtools|bool
     - ansible_facts['os_family']|lower == 'redhat' or ansible_facts['distribution_major_version'] | int >= 8
diff --git a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
index 1c706b15..78f23b0b 100644
--- a/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
+++ b/playbooks/roles/devconfig/tasks/kotd-rev-kernel/main.yml
@@ -13,7 +13,7 @@
   ignore_errors: true
   with_first_found:
     - files:
-        - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family'] | lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/devconfig/tasks/main.yml b/playbooks/roles/devconfig/tasks/main.yml
index fc0e929e..cc4c6592 100644
--- a/playbooks/roles/devconfig/tasks/main.yml
+++ b/playbooks/roles/devconfig/tasks/main.yml
@@ -627,7 +627,7 @@
 - name: "Group up facts we'll give to the host"
   tags: ["journal_ln"]
   ansible.builtin.set_fact:
-    node_host_ip: "{{ ansible_ssh_host}} {{ ansible_default_ipv4.address }}"
+    node_host_ip: "{{ ansible_ssh_host }} {{ ansible_default_ipv4.address }}"
   delegate_facts: true
   when: devconfig_enable_systemd_journal_remote|bool
 
diff --git a/playbooks/roles/fstests/tasks/main.yml b/playbooks/roles/fstests/tasks/main.yml
index 54fc5fa2..a28a9e01 100644
--- a/playbooks/roles/fstests/tasks/main.yml
+++ b/playbooks/roles/fstests/tasks/main.yml
@@ -611,8 +611,8 @@
     number: "{{ item }}"
     state: present
     part_type: "logical"
-    part_start: "{{ ((item - 5) * test_partsize ) + 1 }}GiB"
-    part_end: "{{ ((item - 4) * test_partsize ) }}GiB"
+    part_start: "{{ ((item - 5) * test_partsize) + 1 }}GiB"
+    part_end: "{{ ((item - 4) * test_partsize) }}GiB"
   loop: "{{ range(5, 17) | list }}"
   when:
     - fstests_testdev_nvme_partition_euis|bool
@@ -730,7 +730,7 @@
 - name: Set the export volname prefix
   tags: vars
   ansible.builtin.set_fact:
-    volname_prefix: "{{ ansible_host|regex_replace(kdevops_host_prefix + '-') }}-fs"
+    volname_prefix: "{{ ansible_host | regex_replace(kdevops_host_prefix + '-') }}-fs"
   when:
     - fstests_fstyp == "nfs" or fstests_fstyp == "cifs"
 
@@ -1100,7 +1100,7 @@
 
 - name: Store last kernel variable
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
 
@@ -1194,7 +1194,7 @@
     chdir: "{{ fstests_data_target }}"
   environment:
     FSTYP: "{{ fstests_fstyp }}"
-    FSTESTS_LINUX_LOCALVERSION: "{{ target_linux_localversion  | default ('') }}"
+    FSTESTS_LINUX_LOCALVERSION: "{{ target_linux_localversion | default('') }}"
     KEEP_DMESG: "yes"
   register: failed_tests_limit
   when:
@@ -1273,11 +1273,11 @@
     FSTYP: "{{ fstests_fstyp }}"
     FSTESTS_SPARSE_FILE_PATH: "{{ sparsefiles_path }}"
     FSTESTS_SETUP_SYSTEM: "{{ fstests_setup_system }}"
-    FSTESTS_LINUX_LOCALVERSION: "{{ target_linux_localversion  | default ('') }}"
+    FSTESTS_LINUX_LOCALVERSION: "{{ target_linux_localversion | default('') }}"
     FSTESTS_TESTDEV_SPARSEFILE_GENERATION: "{{ sparsefiles_generation }}"
     FSTESTS_SPARSE_FILE_SIZE: "{{ sparsefiles_size }}"
     FSTESTS_SPARSE_FILENAME_PREFIX: "{{ sparsefiles_filename_prefix }}"
-    FSTESTS_RUN_LARGE_DISK_TESTS: "{{ run_large_disk_tests | default ('') }}"
+    FSTESTS_RUN_LARGE_DISK_TESTS: "{{ run_large_disk_tests | default('') }}"
     FSTESTS_RUN_AUTO_GROUP_TESTS: "{{ run_auto_group_tests }}"
     FSTESTS_RUN_CUSTOM_GROUP_TESTS: "{{ run_custom_group_tests }}"
     FSTESTS_EXCLUDE_TEST_GROUPS: "{{ exclude_test_groups }}"
diff --git a/playbooks/roles/gen_hosts/tasks/main.yml b/playbooks/roles/gen_hosts/tasks/main.yml
index 6eefd17d..6d2e1ad7 100644
--- a/playbooks/roles/gen_hosts/tasks/main.yml
+++ b/playbooks/roles/gen_hosts/tasks/main.yml
@@ -115,7 +115,7 @@
 - name: Generate the Ansible inventory file for dedicated gitr workflow
   tags: ["hosts"]
   vars:
-    gitr_enabled_hosts: "{{ gitr_enabled_test_groups|ansible.builtin.split }}"
+    gitr_enabled_hosts: "{{ gitr_enabled_test_groups | ansible.builtin.split }}"
   ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
@@ -130,7 +130,7 @@
 - name: Generate an Ansible inventory file for a dedicated ltp workflow
   tags: ["hosts"]
   vars:
-    ltp_enabled_hosts: "{{ ltp_enabled_test_groups|ansible.builtin.split }}"
+    ltp_enabled_hosts: "{{ ltp_enabled_test_groups | ansible.builtin.split }}"
   ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
@@ -176,7 +176,7 @@
     sections_lines: "{{ sections_without_default_and_nfsd | regex_findall('^\\[(.*)', multiline=True) }}"
     clean_section_lines: "{{ sections_lines | regex_replace('\\[') | regex_replace('\\]') }}"
     clean_section_lines_without_fsname: "{{ clean_section_lines | regex_replace(fstests_fstyp + '_') }}"
-    config_sections_targets: "{{ clean_section_lines_without_fsname |  replace(\"'\", '') | split(', ') }}"
+    config_sections_targets: "{{ clean_section_lines_without_fsname | replace(\"'\", '') | split(', ') }}"
   ansible.builtin.lineinfile:
     path: "{{ topdir_path }}/.config"
     regexp: "^({{ config_val + item.upper() }})=y"
@@ -192,7 +192,7 @@
 - name: Now expand the list of enabled fstests for valid configuration sections
   tags: ["hosts"]
   ansible.builtin.set_fact:
-    fstests_enabled_test_types: "{{ fstests_enabled_test_types  + [ fstests_fstyp + '-' + item.item | regex_replace('_', '-') ] }}"
+    fstests_enabled_test_types: "{{ fstests_enabled_test_types + [fstests_fstyp + '-' + item.item | regex_replace('_', '-')] }}"
   with_items: "{{ fstests_enabled_test_types_reg.results }}"
   loop_control:
     label: "Checking for {{ item.item }} "
@@ -208,8 +208,8 @@
     sections_without_default: "{{ fs_config_data | regex_replace('\\[default\\]', multiline=True) }}"
     sections_lines: "{{ sections_without_default | regex_findall('^\\[(.*)', multiline=True) }}"
     clean_section_lines: "{{ sections_lines | regex_replace('\\[') | regex_replace('\\]') }}"
-    sections_replace_underscore: "{{ clean_section_lines |  replace('_', '-') }}"
-    sections: "{{ sections_replace_underscore |  replace(\"'\", '') | split(', ') }}"
+    sections_replace_underscore: "{{ clean_section_lines | replace('_', '-') }}"
+    sections: "{{ sections_replace_underscore | replace(\"'\", '') | split(', ') }}"
   ansible.builtin.template:
     src: "{{ kdevops_hosts_template }}"
     dest: "{{ ansible_cfg_inventory }}"
diff --git a/playbooks/roles/gen_nodes/tasks/main.yml b/playbooks/roles/gen_nodes/tasks/main.yml
index 3ca0b05c..8850e168 100644
--- a/playbooks/roles/gen_nodes/tasks/main.yml
+++ b/playbooks/roles/gen_nodes/tasks/main.yml
@@ -32,14 +32,14 @@
 - name: Set generic nodes array
   tags: vars
   ansible.builtin.set_fact:
-    generic_nodes: "{{ [ kdevops_host_prefix ] }}"
+    generic_nodes: "{{ [kdevops_host_prefix] }}"
   when:
     - not kdevops_baseline_and_dev
 
 - name: Set generic nodes array on dual baseline and dev systems
   tags: vars
   ansible.builtin.set_fact:
-    generic_nodes: "{{ [ kdevops_host_prefix ] + [ kdevops_host_prefix + '-dev' ] }}"
+    generic_nodes: "{{ [kdevops_host_prefix] + [kdevops_host_prefix + '-dev'] }}"
   when:
     - kdevops_baseline_and_dev
 
@@ -65,7 +65,7 @@
 
 - name: Set nfsd_nodes list
   ansible.builtin.set_fact:
-    nfsd_nodes: "{{ [ kdevops_host_prefix + '-nfsd' ] }}"
+    nfsd_nodes: "{{ [kdevops_host_prefix + '-nfsd'] }}"
   when:
     - kdevops_nfsd_enable|bool
 
@@ -77,7 +77,7 @@
 
 - name: Set smbd_nodes list
   ansible.builtin.set_fact:
-    smbd_nodes: "{{ [ kdevops_host_prefix + '-smbd' ] }}"
+    smbd_nodes: "{{ [kdevops_host_prefix + '-smbd'] }}"
   when:
     - kdevops_smbd_enable|bool
 
@@ -89,7 +89,7 @@
 
 - name: Set kdc_nodes list
   ansible.builtin.set_fact:
-    kdc_nodes: "{{ [ kdevops_host_prefix + '-kdc' ] }}"
+    kdc_nodes: "{{ [kdevops_host_prefix + '-kdc'] }}"
   when:
     - kdevops_krb5_enable|bool
 
@@ -239,7 +239,7 @@
     sections_lines: "{{ sections_without_default_and_nfsd | regex_findall('^\\[(.*)', multiline=True) }}"
     clean_section_lines: "{{ sections_lines | regex_replace('\\[') | regex_replace('\\]') }}"
     clean_section_lines_without_fsname: "{{ clean_section_lines | regex_replace(fstests_fstyp + '_') }}"
-    config_sections_targets: "{{ clean_section_lines_without_fsname |  replace(\"'\", '') | split(', ') }}"
+    config_sections_targets: "{{ clean_section_lines_without_fsname | replace(\"'\", '') | split(', ') }}"
   ansible.builtin.lineinfile:
     path: "{{ topdir_path }}/.config"
     regexp: "^({{ config_val + item.upper() }})=y"
@@ -258,7 +258,7 @@
     fs_test_section: "{{ fstests_fstyp + '-' + item.item | regex_replace('_', '-') }}"
     node: "{{ kdevops_host_prefix + '-' + fs_test_section }}"
   ansible.builtin.set_fact:
-    fstests_enabled_nodes: "{{ fstests_enabled_nodes + [ node ] }}"
+    fstests_enabled_nodes: "{{ fstests_enabled_nodes + [node] }}"
   with_items: "{{ fstests_enabled_test_types_reg.results }}"
   loop_control:
     label: "Checking for {{ item.item }} "
@@ -274,7 +274,7 @@
     fs_test_section: "{{ fstests_fstyp + '-' + item.item | regex_replace('_', '-') }}"
     node: "{{ kdevops_host_prefix + '-' + fs_test_section }}"
   ansible.builtin.set_fact:
-    fstests_enabled_nodes: "{{ fstests_enabled_nodes + [ node ] + [ node + '-dev' ] }}"
+    fstests_enabled_nodes: "{{ fstests_enabled_nodes + [node] + [node + '-dev'] }}"
   with_items: "{{ fstests_enabled_test_types_reg.results }}"
   loop_control:
     label: "Checking for {{ item.item }} "
@@ -316,7 +316,7 @@
   tags: ["hosts"]
   vars:
     node_template: "{{ kdevops_nodes_template | basename }}"
-    nodes: "{{ fstests_enabled_nodes |  regex_replace('\\[') | regex_replace('\\]') | replace(\"'\", '') | split(', ') }}"
+    nodes: "{{ fstests_enabled_nodes | regex_replace('\\[') | regex_replace('\\]') | replace(\"'\", '') | split(', ') }}"
     all_generic_nodes: "{{ fstests_enabled_nodes }}"
   ansible.builtin.template:
     src: "{{ node_template }}"
diff --git a/playbooks/roles/gitr/tasks/main.yml b/playbooks/roles/gitr/tasks/main.yml
index decdfce9..aa51f6a2 100644
--- a/playbooks/roles/gitr/tasks/main.yml
+++ b/playbooks/roles/gitr/tasks/main.yml
@@ -48,7 +48,7 @@
 - name: Store last kernel variable
   tags: ["copy_results"]
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   run_once: true
 
 - name: Document used target kernel version
diff --git a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
index 287b8b1c..23cda58e 100644
--- a/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
+++ b/playbooks/roles/install-menuconfig-deps/tasks/install-deps/main.yml
@@ -4,7 +4,7 @@
   ignore_errors: true
   with_first_found:
     - files:
-        - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family'] | lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/kdc/tasks/main.yml b/playbooks/roles/kdc/tasks/main.yml
index 34d3ae27..ac0fe770 100644
--- a/playbooks/roles/kdc/tasks/main.yml
+++ b/playbooks/roles/kdc/tasks/main.yml
@@ -4,8 +4,8 @@
   vars:
     params:
       files:
-        - "{{ansible_distribution}}.yml"
-        - "{{ansible_os_family}}.yml"
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
         - "vars"
diff --git a/playbooks/roles/kdevops_archive/tasks/main.yml b/playbooks/roles/kdevops_archive/tasks/main.yml
index 2cf3494c..5d11a8a0 100644
--- a/playbooks/roles/kdevops_archive/tasks/main.yml
+++ b/playbooks/roles/kdevops_archive/tasks/main.yml
@@ -89,7 +89,7 @@
     msg: |
       The output of `make ci-results` yielded no files, this likely means
       you have not setup which results we should copy for this target
-      development tree: {{ target_linux_tree}}
+      development tree: {{ target_linux_tree }}
       To set this up you need these set up:
         .ci/build-test/{{ target_linux_tree }}
         .ci/tests-test/{{ target_linux_tree }}
@@ -296,7 +296,7 @@
 
 - name: Convert to padded string
   ansible.builtin.set_fact:
-    next_number: "{{ '%04d' % (next_number_int | int)}}"
+    next_number: "{{ '%04d' % (next_number_int | int) }}"
 
 - name: Set archive test number
   ansible.builtin.set_fact:
diff --git a/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml b/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
index 941b4057..ff55d9d8 100644
--- a/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
+++ b/playbooks/roles/libvirt_pcie_passthrough/tasks/main.yml
@@ -14,7 +14,7 @@
   become_flags: "su - -c"
   become_method: sudo
   vars:
-    sysfs_override: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id}}/driver_override"
+    sysfs_override: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id }}/driver_override"
   ansible.builtin.stat:
     path: "{{ sysfs_override }}"
   with_items: "{{ pcie_passthrough_devices }}"
@@ -44,7 +44,7 @@
   become_flags: "su - -c"
   become_method: sudo
   vars:
-    sysfs_unbind: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id}}/unbind"
+    sysfs_unbind: "{{ pcie_sysfs_device_path_prefix }}/{{ item.pcie_id }}/unbind"
   ansible.builtin.stat:
     path: "{{ sysfs_unbind }}"
   with_items: "{{ pcie_passthrough_devices }}"
diff --git a/playbooks/roles/libvirt_user/tasks/install-deps/main.yml b/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
index 287b8b1c..23cda58e 100644
--- a/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
+++ b/playbooks/roles/libvirt_user/tasks/install-deps/main.yml
@@ -4,7 +4,7 @@
   ignore_errors: true
   with_first_found:
     - files:
-        - "{{ ansible_facts['os_family']|lower }}.yml"
+        - "{{ ansible_facts['os_family'] | lower }}.yml"
       skip: true
   tags: vars
 
diff --git a/playbooks/roles/ltp/tasks/main.yml b/playbooks/roles/ltp/tasks/main.yml
index d11be9e0..1101ef51 100644
--- a/playbooks/roles/ltp/tasks/main.yml
+++ b/playbooks/roles/ltp/tasks/main.yml
@@ -52,7 +52,7 @@
 - name: Store last kernel variable
   tags: ["copy_results"]
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   run_once: true
 
 - name: Document used target kernel version
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect.yml b/playbooks/roles/monitoring/tasks/monitor_collect.yml
index 05c91db2..bcff345b 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect.yml
@@ -103,10 +103,10 @@
   ansible.builtin.debug:
     msg: |
       Starting monitoring collection
-      monitor_developmental_stats: {{ monitor_developmental_stats|default(false) }}
-      monitor_folio_migration: {{ monitor_folio_migration|default(false) }}
-      enable_monitoring: {{ enable_monitoring|default(false) }}
-      kdevops_run_fstests: {{ kdevops_run_fstests|default(false) }}
+      monitor_developmental_stats: {{ monitor_developmental_stats | default(false) }}
+      monitor_folio_migration: {{ monitor_folio_migration | default(false) }}
+      enable_monitoring: {{ enable_monitoring | default(false) }}
+      kdevops_run_fstests: {{ kdevops_run_fstests | default(false) }}
 
 - name: Set monitoring results path
   ansible.builtin.set_fact:
@@ -161,7 +161,7 @@
     msg: |
       Folio migration monitoring collection complete.
       Data saved to: {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_stats.txt
-      {% if folio_migration_plot_file.stat.exists|default(false) %}
+      {% if folio_migration_plot_file.stat.exists | default(false) %}
       Plot saved to: {{ monitoring_results_path }}/{{ ansible_hostname }}_folio_migration_plot.png
       {% endif %}
   when:
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
index a61ff5e6..ef28b995 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
@@ -34,10 +34,10 @@
   ansible.builtin.debug:
     msg: |
       Collecting monitoring data (without stopping monitoring)
-      monitor_developmental_stats: {{ monitor_developmental_stats|default(false) }}
-      monitor_folio_migration: {{ monitor_folio_migration|default(false) }}
-      enable_monitoring: {{ enable_monitoring|default(false) }}
-      Data file exists: {{ folio_migration_data_file.stat.exists|default(false) }}
+      monitor_developmental_stats: {{ monitor_developmental_stats | default(false) }}
+      monitor_folio_migration: {{ monitor_folio_migration | default(false) }}
+      enable_monitoring: {{ enable_monitoring | default(false) }}
+      Data file exists: {{ folio_migration_data_file.stat.exists | default(false) }}
 
 - name: Set monitoring results path
   ansible.builtin.set_fact:
diff --git a/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml b/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
index 5df9cd6e..1ad9cc53 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/debian/main.yml
@@ -4,8 +4,8 @@
   vars:
     params:
       files:
-        - "{{ansible_distribution}}.yml"
-        - "{{ansible_os_family}}.yml"
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
         - "vars"
diff --git a/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml b/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
index 993b8c73..9143c55e 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/redhat/main.yml
@@ -4,8 +4,8 @@
   vars:
     params:
       files:
-        - "{{ansible_distribution}}.yml"
-        - "{{ansible_os_family}}.yml"
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
         - "vars"
diff --git a/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml b/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
index b8176798..be7fbd50 100644
--- a/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/nfsd/tasks/install-deps/suse/main.yml
@@ -4,8 +4,8 @@
   vars:
     params:
       files:
-        - "{{ansible_distribution}}.yml"
-        - "{{ansible_os_family}}.yml"
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
         - "vars"
diff --git a/playbooks/roles/nfstest/tasks/main.yml b/playbooks/roles/nfstest/tasks/main.yml
index b404f64e..a79c563f 100644
--- a/playbooks/roles/nfstest/tasks/main.yml
+++ b/playbooks/roles/nfstest/tasks/main.yml
@@ -166,7 +166,7 @@
 - name: Store last kernel variable
   tags: ["copy_results"]
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   run_once: true
 
 - name: Document used target kernel version
diff --git a/playbooks/roles/pynfs/tasks/main.yml b/playbooks/roles/pynfs/tasks/main.yml
index 4b7ebdc4..e582b446 100644
--- a/playbooks/roles/pynfs/tasks/main.yml
+++ b/playbooks/roles/pynfs/tasks/main.yml
@@ -169,7 +169,7 @@
 - name: Store kernel_rev variable
   tags: ["copy_results"]
   ansible.builtin.set_fact:
-    kernel_rev: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    kernel_rev: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   run_once: true
 
 - name: Document used target kernel version
@@ -185,7 +185,7 @@
   become_method: sudo
   ansible.builtin.fetch:
     src: "{{ pynfs_data }}/pynfs-{{ item }}-results.json"
-    dest: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev}}/{{ kernel_rev }}-v{{ item }}.json"
+    dest: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev }}/{{ kernel_rev }}-v{{ item }}.json"
     flat: true
   with_items:
     - 4.0
@@ -198,7 +198,7 @@
   become_method: ansible.builtin.sudo
   ansible.builtin.fetch:
     src: "{{ pynfs_data }}/pynfs-{{ item }}-results.json"
-    dest: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev}}/{{ kernel_rev }}-v{{ item }}.json"
+    dest: "{{ pynfs_results_full_path }}/last-run/{{ kernel_rev }}/{{ kernel_rev }}-v{{ item }}.json"
     flat: true
   with_items:
     - block
diff --git a/playbooks/roles/reboot-limit/tasks/main.yml b/playbooks/roles/reboot-limit/tasks/main.yml
index a4c65dea..ef33de37 100644
--- a/playbooks/roles/reboot-limit/tasks/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/main.yml
@@ -49,14 +49,14 @@
   become: true
   become_method: sudo
   ansible.builtin.set_fact:
-    reboot_limit_analyze_file: "{{ reboot_limit_data}}/{{ ansible_ssh_host }}/{{ reboot_limits_systemctl_analyze_log }}"
+    reboot_limit_analyze_file: "{{ reboot_limit_data }}/{{ ansible_ssh_host }}/{{ reboot_limits_systemctl_analyze_log }}"
   tags: ["vars"]
 
 - name: Set the file to collect the reboot count
   become: true
   become_method: sudo
   ansible.builtin.set_fact:
-    reboot_limit_count_file: "{{ reboot_limit_data}}/{{ ansible_ssh_host }}/{{ reboot_limits_count_log }}"
+    reboot_limit_count_file: "{{ reboot_limit_data }}/{{ ansible_ssh_host }}/{{ reboot_limits_count_log }}"
   tags: ["read_count", "vars"]
 
 - name: Delete old results directory files if a reset was called (single mode)
diff --git a/playbooks/roles/selftests/tasks/main.yml b/playbooks/roles/selftests/tasks/main.yml
index 02d3476c..b606e67e 100644
--- a/playbooks/roles/selftests/tasks/main.yml
+++ b/playbooks/roles/selftests/tasks/main.yml
@@ -252,7 +252,7 @@
 
 - name: Store last kernel variable
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   tags: ["selftests", "vars", "copy_results", "augment_expunge_list"]
   run_once: true
 
@@ -341,13 +341,7 @@
     - not selftest_vma|bool
   vars:
     command_to_run: >
-      {%- if selftest_xarray  -%}
-      modprobe test_xarray
-      {%- elif selftest_maple -%}
-      modprobe test_maple_tree
-      {%- else -%}
-      echo missing command
-      {%- endif -%}
+      {%- if selftest_xarray -%} modprobe test_xarray{%- elif selftest_maple -%} modprobe test_maple_tree{%- else -%} echo missing command{%- endif -%}
 
 - name: Run userspace selftests
   tags: ["selftests", "run_tests"]
@@ -363,21 +357,10 @@
     - (selftests_build_radix_tree|bool and selftest_userspace|bool and not selftest_vma|bool) or selftest_vma|bool
   vars:
     test_target_dir: >-
-      {%- if selftest_vma -%}
-      {{ target_linux_dir_path }}/tools/testing/vma
-      {%- else -%}
-      {{ target_linux_dir_path }}/tools/testing/radix-tree
-      {%- endif -%}
+      {%- if selftest_vma -%} {{ target_linux_dir_path }}/tools/testing/vma{%- else -%} {{ target_linux_dir_path }}/tools/testing/radix-tree{%- endif -%}
     command_to_run: >-
-      {%- if selftest_vma -%}
-      ./vma
-      {%- elif selftest_xarray -%}
-      ./xarray && modprobe test_xarray
-      {%- elif selftest_maple -%}
-      ./maple && modprobe test_maple_tree
-      {%- else -%}
-      echo missing command
-      {%- endif -%}
+      {%- if selftest_vma -%} ./vma{%- elif selftest_xarray -%} ./xarray && modprobe test_xarray{%- elif selftest_maple -%} ./maple && modprobe test_maple_tree{%-
+      else -%} echo missing command{%- endif -%}
 
 - name: Run kernelspace selftests
   tags: ["selftests", "run_tests"]
@@ -457,7 +440,7 @@
   become_method: sudo
   ansible.builtin.copy:
     content: "{{ selftests_out.stdout_lines|join('\n') }}"
-    dest: "{{ selftests_workdir}}/tap.log"
+    dest: "{{ selftests_workdir }}/tap.log"
   when:
     - kdevops_run_selftests|bool
     - selftest_kernelspace|bool
@@ -469,7 +452,7 @@
   become_method: sudo
   ansible.builtin.copy:
     content: "{{ selftests_userspace_out.stdout_lines|join('\n') }}"
-    dest: "{{ selftests_workdir}}/userspace.log"
+    dest: "{{ selftests_workdir }}/userspace.log"
   when:
     - selftest_userspace|bool
 
@@ -480,7 +463,7 @@
   become_method: sudo
   ansible.builtin.copy:
     content: "{{ selftests_module_out.stdout_lines|join('\n') }}"
-    dest: "{{ selftests_workdir}}/module.log"
+    dest: "{{ selftests_workdir }}/module.log"
   when:
     - selftest_userspace|bool
     - not selftest_vma|bool
diff --git a/playbooks/roles/smbd/tasks/install-deps/debian/main.yml b/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
index eb757514..0920de7d 100644
--- a/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/debian/main.yml
@@ -4,8 +4,8 @@
   vars:
     params:
       files:
-        - "{{ansible_distribution}}.yml"
-        - "{{ansible_os_family}}.yml"
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
         - "vars"
diff --git a/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml b/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
index 2bc78700..7a0785fb 100644
--- a/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/redhat/main.yml
@@ -4,8 +4,8 @@
   vars:
     params:
       files:
-        - "{{ansible_distribution}}.yml"
-        - "{{ansible_os_family}}.yml"
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
         - "vars"
diff --git a/playbooks/roles/smbd/tasks/install-deps/suse/main.yml b/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
index a6a7d077..5e345563 100644
--- a/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/smbd/tasks/install-deps/suse/main.yml
@@ -4,8 +4,8 @@
   vars:
     params:
       files:
-        - "{{ansible_distribution}}.yml"
-        - "{{ansible_os_family}}.yml"
+        - "{{ ansible_distribution }}.yml"
+        - "{{ ansible_os_family }}.yml"
         - default.yml
       paths:
         - "vars"
diff --git a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
index 481f1097..3925b76f 100644
--- a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
+++ b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
@@ -23,7 +23,7 @@
 
 - name: Determine filesystem setting used and db page size
   vars:
-    fs_type_variable: "{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '')  | regex_replace('-.+', '') }}"
+    fs_type_variable: "{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') | regex_replace('-.+', '') }}"
     fs_command_variable_simple: "sysbench_{{ ansible_host | regex_replace('^' + kdevops_host_prefix + '-', '') | regex_replace('-dev$', '') }}_cmd"
     fs_command_variable: "{{ fs_command_variable_simple | regex_replace('-', '_') | regex_replace('^sysbench_' + fs_type_variable, fs_type_variable + '_section')
       }}"
@@ -37,7 +37,7 @@
     filesystem_command_for_host: "{{ fs_cmd }}"
     sysbench_fs_sector_size: "{{ sect_size }}"
     sysbench_fstype: "{{ fs_type_variable }}"
-    sysbench_fs_opts_without_sector_size: "{{ fs_cmd | regex_replace('^[^ ]+ ', '')  }}"
+    sysbench_fs_opts_without_sector_size: "{{ fs_cmd | regex_replace('^[^ ]+ ', '') }}"
     sysbench_db_page_size: "{{ db_page_size }}"
   tags: ["vars"]
 
@@ -198,7 +198,7 @@
 
 - name: Store last kernel variable
   ansible.builtin.set_fact:
-    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\",'') }}"
+    last_kernel: "{{ uname_cmd.stdout_lines | regex_replace('\\]') | regex_replace('\\[') | replace(\"'\", '') }}"
   tags: ["db_start"]
   run_once: true
 
@@ -600,7 +600,7 @@
   become_method: sudo
   ansible.builtin.copy:
     content: "{{ sysbench_mysql_container_logs.stdout }}"
-    dest: "{{ sysbench_telemetry_path}}/docker-mysql-results-{{ ansible_date_time.iso8601 }}.log"
+    dest: "{{ sysbench_telemetry_path }}/docker-mysql-results-{{ ansible_date_time.iso8601 }}.log"
     mode: "u=rw,g=r,o=r"
   when: "sysbench_type_mysql_docker|bool"
 
diff --git a/playbooks/roles/update_etc_hosts/tasks/main.yml b/playbooks/roles/update_etc_hosts/tasks/main.yml
index 7b124d08..049411ee 100644
--- a/playbooks/roles/update_etc_hosts/tasks/main.yml
+++ b/playbooks/roles/update_etc_hosts/tasks/main.yml
@@ -64,7 +64,7 @@
   ansible.builtin.lineinfile:
     dest: /etc/hosts
     regexp: ".*{{ item }}$"
-    line: "{{ hostvars[item].ansible_all_ipv4_addresses | first }} {{item}}"
+    line: "{{ hostvars[item].ansible_all_ipv4_addresses | first }} {{ item }}"
     state: present
   with_items: "{{ ueh_hosts }}"
   when:
diff --git a/playbooks/roles/volume_group/tasks/terraform/aws.yml b/playbooks/roles/volume_group/tasks/terraform/aws.yml
index e4353802..ee7bfa06 100644
--- a/playbooks/roles/volume_group/tasks/terraform/aws.yml
+++ b/playbooks/roles/volume_group/tasks/terraform/aws.yml
@@ -34,7 +34,7 @@
     block_device_dict: "{{ terraform_output.stdout | from_json }}"
     local_map: "{{ block_device_dict[inventory_hostname] }}"
   ansible.builtin.set_fact:
-    ebs_volume_ids: "{{ ebs_volume_ids + [ 'nvme-Amazon_Elastic_Block_Store_' + item.value | regex_replace('-', '') ] }}"
+    ebs_volume_ids: "{{ ebs_volume_ids + ['nvme-Amazon_Elastic_Block_Store_' + item.value | regex_replace('-', '')] }}"
   when: item.key != "/dev/sdf"
   with_dict: "{{ local_map }}"
 

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH RFT 4/8] playbooks: ansible-lint fix key-order
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
                   ` (2 preceding siblings ...)
  2025-08-25 20:54 ` [PATCH RFT 3/8] playbooks: ansible-lint fix jinja Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 5/8] playbooks: ansible-lint fix name Daniel Gomez
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix key-order ansible-lint rule violations

Fixed key-order rule violations across 3 file(s).

Affected files:
- playbooks/roles/bootlinux/tasks/main.yml
- playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
- playbooks/roles/mmtests_compare/tasks/main.yml

Applied using the ansible-lint --fix=key-order.

Generated-by: Ansible Lint
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/roles/bootlinux/tasks/main.yml              | 14 +++++++-------
 playbooks/roles/devconfig/tasks/check-apt-mirrors.yml | 16 ++++++++--------
 playbooks/roles/mmtests_compare/tasks/main.yml        |  8 ++++----
 3 files changed, 19 insertions(+), 19 deletions(-)

diff --git a/playbooks/roles/bootlinux/tasks/main.yml b/playbooks/roles/bootlinux/tasks/main.yml
index 8029d26e..f453caf6 100644
--- a/playbooks/roles/bootlinux/tasks/main.yml
+++ b/playbooks/roles/bootlinux/tasks/main.yml
@@ -126,6 +126,11 @@
 
 - name: Debug kernel ref settings for 9P builds
   delegate_to: localhost
+  when:
+    - bootlinux_debug_ref|bool
+    - bootlinux_9p|bool
+  run_once: true
+
   block:
     - name: Print kernel ref settings for 9P debug (localhost context)
       ansible.builtin.debug:
@@ -144,12 +149,11 @@
 
     - name: End play gracefully for kernel ref debug
       ansible.builtin.meta: end_play
+- name: Debug kernel ref settings for non-9P builds
   when:
     - bootlinux_debug_ref|bool
-    - bootlinux_9p|bool
-  run_once: true
+    - not bootlinux_9p|bool
 
-- name: Debug kernel ref settings for non-9P builds
   block:
     - name: Print kernel ref settings for non-9P debug (per-node context)
       ansible.builtin.debug:
@@ -169,10 +173,6 @@
 
     - name: End play gracefully for kernel ref debug
       ansible.builtin.meta: end_play
-  when:
-    - bootlinux_debug_ref|bool
-    - not bootlinux_9p|bool
-
 - name: Create data partition
   ansible.builtin.include_role:
     name: create_data_partition
diff --git a/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml b/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
index 8b3256db..9736b72b 100644
--- a/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
+++ b/playbooks/roles/devconfig/tasks/check-apt-mirrors.yml
@@ -107,6 +107,12 @@
         - hop1_mirror_host is defined
 
     - name: Use hop1 mirror with DEB822 format for debian testing
+      when:
+        - has_hop1_mirror is defined
+        - has_hop1_mirror | bool
+        - hop1_mirror_connectivity is not failed
+        - hop1_mirror_host is defined
+
       block:
         - name: Backup current sources
           ansible.builtin.copy:
@@ -141,20 +147,14 @@
             cache_valid_time: 0
           become: true
 
-        - name: Inform user about hop1 mirror usage
-          ansible.builtin.debug:
+        - ansible.builtin.debug:
             msg: |
               Using local hop1 mirror with DEB822 format:
               Mirror: {{ hop1_mirror_host }}{{ hop1_mirror_path }}
 
               This provides faster package downloads from your local mirror.
               Sources have been converted to modern DEB822 format.
-      when:
-        - has_hop1_mirror is defined
-        - has_hop1_mirror | bool
-        - hop1_mirror_connectivity is not failed
-        - hop1_mirror_host is defined
-
+          name: Inform user about hop1 mirror usage
 - name: Fall back to official Debian mirrors if current mirror fails
   block:
     - name: Backup current sources (DEB822 format)
diff --git a/playbooks/roles/mmtests_compare/tasks/main.yml b/playbooks/roles/mmtests_compare/tasks/main.yml
index 57c11604..14bc6cc1 100644
--- a/playbooks/roles/mmtests_compare/tasks/main.yml
+++ b/playbooks/roles/mmtests_compare/tasks/main.yml
@@ -138,6 +138,7 @@
   register: patch_results
 
 - name: Get kernel versions from nodes
+  tags: ["compare"]
   block:
     - name: Get baseline kernel version
       ansible.builtin.command: uname -r
@@ -153,7 +154,6 @@
       when:
         - groups['dev'] is defined
         - groups['dev'] | length > 0
-  tags: ["compare"]
 
 - name: Set node information facts
   ansible.builtin.set_fact:
@@ -274,6 +274,9 @@
 
 - name: Generate performance graphs using gnuplot
   delegate_to: localhost
+  run_once: true
+  when: kdevops_baseline_and_dev|bool
+  tags: ["compare", "graphs"]
   block:
     - name: Check for available iterations data
       ansible.builtin.find:
@@ -305,9 +308,6 @@
       failed_when: false
       environment:
         MMTESTS_AUTO_PACKAGE_INSTALL: never
-  run_once: true
-  when: kdevops_baseline_and_dev|bool
-  tags: ["compare", "graphs"]
 
 - name: Find generated graph files
   delegate_to: localhost

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH RFT 5/8] playbooks: ansible-lint fix name
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
                   ` (3 preceding siblings ...)
  2025-08-25 20:54 ` [PATCH RFT 4/8] playbooks: ansible-lint fix key-order Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 6/8] playbooks: ansible-lint fix no-free-form Daniel Gomez
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix name ansible-lint rule violations

Fixed name rule violations across 32 file(s).

Affected files include:
- playbooks/bootlinux.yml
- playbooks/cxl.yml
- playbooks/roles/blktests/tasks/install-deps/main.yml
- playbooks/roles/blktests/tasks/install-deps/suse/main.yml
- playbooks/roles/blktests/tasks/main.yml
... and 27 more files

Applied using the ansible-lint --fix=name.

Generated-by: Ansible Lint
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/bootlinux.yml                                           | 2 +-
 playbooks/cxl.yml                                                 | 2 +-
 playbooks/roles/blktests/tasks/install-deps/main.yml              | 2 +-
 playbooks/roles/blktests/tasks/install-deps/suse/main.yml         | 2 +-
 playbooks/roles/blktests/tasks/main.yml                           | 8 ++++----
 playbooks/roles/bootlinux/tasks/build/9p.yml                      | 2 +-
 playbooks/roles/bootlinux/tasks/build/targets.yml                 | 2 +-
 playbooks/roles/btrfs_progs/tasks/install-deps/main.yml           | 2 +-
 playbooks/roles/btrfs_progs/tasks/main.yml                        | 2 +-
 playbooks/roles/build_qemu/tasks/main.yml                         | 2 +-
 playbooks/roles/common/tasks/main.yml                             | 2 +-
 playbooks/roles/compile_dbench/tasks/install-deps/main.yml        | 2 +-
 playbooks/roles/compile_dbench/tasks/main.yml                     | 2 +-
 playbooks/roles/create_partition/tasks/install-deps/main.yml      | 2 +-
 playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml                  | 8 ++++----
 playbooks/roles/cxl/tasks/install-deps/main.yml                   | 2 +-
 playbooks/roles/cxl/tasks/main.yml                                | 6 +++---
 playbooks/roles/fstests/tasks/install-deps/main.yml               | 2 +-
 playbooks/roles/fstests/tasks/install-deps/suse/main.yml          | 2 +-
 playbooks/roles/fstests/tasks/main.yml                            | 8 ++++----
 .../roles/fstests_prep_localhost/tasks/install-deps/main.yml      | 2 +-
 .../install_systemd_journal_remote/tasks/install-deps/main.yml    | 2 +-
 .../roles/install_systemd_timesyncd/tasks/install-deps/main.yml   | 2 +-
 playbooks/roles/ktls/tasks/install-deps/main.yml                  | 2 +-
 playbooks/roles/linux-mirror/tasks/main.yml                       | 2 +-
 playbooks/roles/pkg/tasks/debian.yml                              | 4 ++--
 playbooks/roles/pkg/tasks/main.yml                                | 2 +-
 playbooks/roles/pynfs/tasks/install-deps/main.yml                 | 2 +-
 playbooks/roles/reboot-limit/tasks/install-deps/main.yml          | 2 +-
 playbooks/roles/selftests/tasks/install-deps/main.yml             | 2 +-
 playbooks/roles/sysbench/tasks/install-deps/main.yml              | 2 +-
 playbooks/roles/sysbench/tasks/mysql-docker/main.yaml             | 2 +-
 32 files changed, 44 insertions(+), 44 deletions(-)

diff --git a/playbooks/bootlinux.yml b/playbooks/bootlinux.yml
index 676469d4..5477d8f1 100644
--- a/playbooks/bootlinux.yml
+++ b/playbooks/bootlinux.yml
@@ -1,5 +1,5 @@
 ---
-- name: bootlinux
+- name: Bootlinux
   hosts: all
   roles:
     - role: bootlinux
diff --git a/playbooks/cxl.yml b/playbooks/cxl.yml
index 8880ee71..641b580f 100644
--- a/playbooks/cxl.yml
+++ b/playbooks/cxl.yml
@@ -1,5 +1,5 @@
 ---
-- name: cxl
+- name: Cxl
   hosts: baseline:dev
   roles:
     - role: cxl
diff --git a/playbooks/roles/blktests/tasks/install-deps/main.yml b/playbooks/roles/blktests/tasks/install-deps/main.yml
index 6936b77d..bdc3de4c 100644
--- a/playbooks/roles/blktests/tasks/install-deps/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/main.yml
@@ -3,7 +3,7 @@
     name: pkg
 
 # tasks to install dependencies for oscheck
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/blktests/tasks/install-deps/suse/main.yml b/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
index 2d87539f..636af5a1 100644
--- a/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/blktests/tasks/install-deps/suse/main.yml
@@ -231,7 +231,7 @@
     - repos_present|bool
     - compile_nbd|bool
 
-- name: git clone nbd
+- name: Git clone nbd
   ansible.builtin.git:
     repo: "{{ nbd_git }}"
     dest: "{{ nbd_data }}"
diff --git a/playbooks/roles/blktests/tasks/main.yml b/playbooks/roles/blktests/tasks/main.yml
index c119b80d..c58bd727 100644
--- a/playbooks/roles/blktests/tasks/main.yml
+++ b/playbooks/roles/blktests/tasks/main.yml
@@ -16,7 +16,7 @@
 
 # Distro specific
 - ansible.builtin.include_tasks: install-deps/main.yml
-- name: git clone kdevops
+- name: Git clone kdevops
   environment:
     GIT_SSL_NO_VERIFY: true
   ansible.builtin.git:
@@ -53,7 +53,7 @@
     state: absent
   tags: ["git", "blktests", "blktrace"]
 
-- name: git clone blktrace
+- name: Git clone blktrace
   ansible.builtin.git:
     repo: "{{ blktrace_git }}"
     dest: "{{ blktrace_data }}"
@@ -90,7 +90,7 @@
     state: absent
   tags: ["git", "blktests"]
 
-- name: git clone blktests
+- name: Git clone blktests
   ansible.builtin.git:
     repo: "{{ blktests_git }}"
     dest: "{{ blktests_data }}"
@@ -113,7 +113,7 @@
   args:
     chdir: "{{ blktests_data }}"
 
-- name: git pull latest kdevops to ensure expunge list is up to date
+- name: Git pull latest kdevops to ensure expunge list is up to date
   environment:
     GIT_SSL_NO_VERIFY: true
   ansible.builtin.git:
diff --git a/playbooks/roles/bootlinux/tasks/build/9p.yml b/playbooks/roles/bootlinux/tasks/build/9p.yml
index 60b4dc80..7474b9d0 100644
--- a/playbooks/roles/bootlinux/tasks/build/9p.yml
+++ b/playbooks/roles/bootlinux/tasks/build/9p.yml
@@ -44,7 +44,7 @@
     - bootlinux_tree_set_by_cli|bool
     - not target_directory_stat.stat.exists
 
-- name: git clone {{ target_linux_tree }} on the control node
+- name: Git clone {{ target_linux_tree }} on the control node
   ansible.builtin.git:
     repo: "{{ target_linux_git }}"
     dest: "{{ bootlinux_9p_host_path }}"
diff --git a/playbooks/roles/bootlinux/tasks/build/targets.yml b/playbooks/roles/bootlinux/tasks/build/targets.yml
index 5dfcbd7a..6bd861cb 100644
--- a/playbooks/roles/bootlinux/tasks/build/targets.yml
+++ b/playbooks/roles/bootlinux/tasks/build/targets.yml
@@ -10,7 +10,7 @@
     - target_linux_install_b4
     - ansible_facts['os_family']|lower != 'debian'
 
-- name: git clone {{ target_linux_tree }} on the target nodes
+- name: Git clone {{ target_linux_tree }} on the target nodes
   ansible.builtin.git:
     repo: "{{ target_linux_git }}"
     dest: "{{ target_linux_dir_path }}"
diff --git a/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml b/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml
index 93238856..2bd19d15 100644
--- a/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/install-deps/main.yml
@@ -1,5 +1,5 @@
 ---
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: suse/main.yml
diff --git a/playbooks/roles/btrfs_progs/tasks/main.yml b/playbooks/roles/btrfs_progs/tasks/main.yml
index e858db15..59018370 100644
--- a/playbooks/roles/btrfs_progs/tasks/main.yml
+++ b/playbooks/roles/btrfs_progs/tasks/main.yml
@@ -43,7 +43,7 @@
   when: ansible_facts['os_family']|lower != 'debian'
   tags: vars
 
-- name: git clone btrfs_progs
+- name: Git clone btrfs_progs
   environment:
     GIT_SSL_NO_VERIFY: true
   ansible.builtin.git:
diff --git a/playbooks/roles/build_qemu/tasks/main.yml b/playbooks/roles/build_qemu/tasks/main.yml
index 36d647f0..bd9936d2 100644
--- a/playbooks/roles/build_qemu/tasks/main.yml
+++ b/playbooks/roles/build_qemu/tasks/main.yml
@@ -47,7 +47,7 @@
   when:
     - build_qemu_now|bool
 
-- name: git clone QEMU using {{ qemu_git }} on {{ qemu_data }}
+- name: Git clone QEMU using {{ qemu_git }} on {{ qemu_data }}
   environment:
     GIT_SSL_NO_VERIFY: true
   ansible.builtin.git:
diff --git a/playbooks/roles/common/tasks/main.yml b/playbooks/roles/common/tasks/main.yml
index 4c720670..3ee08018 100644
--- a/playbooks/roles/common/tasks/main.yml
+++ b/playbooks/roles/common/tasks/main.yml
@@ -12,7 +12,7 @@
 
 # Distro agnostic stuff goes below
 
-- name: git reset kdevops
+- name: Git reset kdevops
   environment:
     GIT_SSL_NO_VERIFY: true
   ansible.builtin.git:
diff --git a/playbooks/roles/compile_dbench/tasks/install-deps/main.yml b/playbooks/roles/compile_dbench/tasks/install-deps/main.yml
index 558bc9cb..6a06c26f 100644
--- a/playbooks/roles/compile_dbench/tasks/install-deps/main.yml
+++ b/playbooks/roles/compile_dbench/tasks/install-deps/main.yml
@@ -3,7 +3,7 @@
     name: pkg
 
 # tasks to install dependencies for dbench
-- name: dbench distribution ospecific setup
+- name: Dbench distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 
diff --git a/playbooks/roles/compile_dbench/tasks/main.yml b/playbooks/roles/compile_dbench/tasks/main.yml
index 45fb0324..1d5e0b7f 100644
--- a/playbooks/roles/compile_dbench/tasks/main.yml
+++ b/playbooks/roles/compile_dbench/tasks/main.yml
@@ -13,7 +13,7 @@
 # Distro specific
 - name: Install dependencies
   ansible.builtin.import_tasks: install-deps/main.yml
-- name: git clone dbench
+- name: Git clone dbench
   ansible.builtin.git:
     repo: "{{ dbench_git }}"
     dest: "{{ dbench_data }}"
diff --git a/playbooks/roles/create_partition/tasks/install-deps/main.yml b/playbooks/roles/create_partition/tasks/install-deps/main.yml
index 749708c9..53f73d20 100644
--- a/playbooks/roles/create_partition/tasks/install-deps/main.yml
+++ b/playbooks/roles/create_partition/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install base dependencies to create a partition
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml b/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
index 14a25ff2..4045e481 100644
--- a/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-mem-setup/main.yml
@@ -1,20 +1,20 @@
 ---
-- name: create a region from cxl memory
+- name: Create a region from cxl memory
   become: true
   ansible.builtin.command: "cxl create-region -m -d decoder0.0 -w 1 mem0 -s 256M"
   tags: ["cxl-mem-setup"]
 
-- name: create a namespace from cxl memory
+- name: Create a namespace from cxl memory
   become: true
   ansible.builtin.command: "ndctl create-namespace -m dax -r region0"
   tags: ["cxl-mem-setup"]
 
-- name: switch daxdevice to be used for system-ram
+- name: Switch daxdevice to be used for system-ram
   become: true
   ansible.builtin.command: "daxctl reconfigure-device --mode=system-ram --no-online dax0.0"
   tags: ["cxl-mem-setup"]
 
-- name: online newly created daxdevice
+- name: Online newly created daxdevice
   become: true
   ansible.builtin.command: "daxctl online-memory dax0.0"
   tags: ["cxl-mem-setup"]
diff --git a/playbooks/roles/cxl/tasks/install-deps/main.yml b/playbooks/roles/cxl/tasks/install-deps/main.yml
index 77eebf47..5c39717d 100644
--- a/playbooks/roles/cxl/tasks/install-deps/main.yml
+++ b/playbooks/roles/cxl/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install dependencies for oscheck
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/cxl/tasks/main.yml b/playbooks/roles/cxl/tasks/main.yml
index 95dcc3b8..a51fe1f5 100644
--- a/playbooks/roles/cxl/tasks/main.yml
+++ b/playbooks/roles/cxl/tasks/main.yml
@@ -17,7 +17,7 @@
     name: create_data_partition
   tags: ["ndctl", "data_partition"]
 
-- name: git clone ndctl
+- name: Git clone ndctl
   ansible.builtin.git:
     repo: "{{ ndctl_git }}"
     dest: "{{ ndctl_data }}"
@@ -125,7 +125,7 @@
   when:
     - kdevops_run_cxl_tests|bool
 
-- name: modprobe cxl_test
+- name: Modprobe cxl_test
   become: true
   become_flags: "su - -c"
   become_method: sudo
@@ -136,7 +136,7 @@
   when:
     - kdevops_run_cxl_tests|bool
 
-- name: modprobe -r cxl_test
+- name: Modprobe -r cxl_test
   become: true
   become_flags: "su - -c"
   become_method: sudo
diff --git a/playbooks/roles/fstests/tasks/install-deps/main.yml b/playbooks/roles/fstests/tasks/install-deps/main.yml
index c20fcc99..3d9233fd 100644
--- a/playbooks/roles/fstests/tasks/install-deps/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/main.yml
@@ -14,7 +14,7 @@
     name: pkg
 
 # tasks to install dependencies for oscheck
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/fstests/tasks/install-deps/suse/main.yml b/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
index f6f62830..3247567a 100644
--- a/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
+++ b/playbooks/roles/fstests/tasks/install-deps/suse/main.yml
@@ -182,7 +182,7 @@
   when:
     - is_sle15sp2|bool or is_sle15sp3|bool or is_sle15sp4|bool or is_sle12sp5|bool
 
-- name: add benchmark sles12sp5 openSUSE repo when needed
+- name: Add benchmark sles12sp5 openSUSE repo when needed
   become: true
   become_method: sudo
   ansible.builtin.script:
diff --git a/playbooks/roles/fstests/tasks/main.yml b/playbooks/roles/fstests/tasks/main.yml
index a28a9e01..2363fddb 100644
--- a/playbooks/roles/fstests/tasks/main.yml
+++ b/playbooks/roles/fstests/tasks/main.yml
@@ -142,7 +142,7 @@
     - fstests_xfsdump_build|bool
     - xfdump_dir.stat.exists
 
-- name: git clone xfsdump
+- name: Git clone xfsdump
   ansible.builtin.git:
     repo: "{{ fstests_xfsdump_git }}"
     dest: "{{ fstests_xfsdump_data }}"
@@ -196,7 +196,7 @@
   when:
     - fstests_testdev_sparsefile_generation|bool
 
-- name: git clone kdevops
+- name: Git clone kdevops
   environment:
     GIT_SSL_NO_VERIFY: true
   ansible.builtin.git:
@@ -251,7 +251,7 @@
     - "{{ fstests_data_target }}"
   tags: ["oscheck", "git", "fstests", "build"]
 
-- name: git clone fstests
+- name: Git clone fstests
   ansible.builtin.git:
     repo: "{{ fstests_git }}"
     dest: "{{ fstests_data }}"
@@ -308,7 +308,7 @@
     - fstests_zns_enabled == "y"
     - fstests_fstyp == "btrfs"
 
-- name: git pull latest kdevops to ensure expunge lists and scripts are up to date
+- name: Git pull latest kdevops to ensure expunge lists and scripts are up to date
   environment:
     GIT_SSL_NO_VERIFY: true
   ansible.builtin.git:
diff --git a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml
index 5c76f335..2c86a030 100644
--- a/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml
+++ b/playbooks/roles/fstests_prep_localhost/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install dependencies for oscheck
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml
index c49e0a70..88f3102b 100644
--- a/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml
+++ b/playbooks/roles/install_systemd_journal_remote/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install dependencies
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml
index c49e0a70..88f3102b 100644
--- a/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml
+++ b/playbooks/roles/install_systemd_timesyncd/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install dependencies
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/ktls/tasks/install-deps/main.yml b/playbooks/roles/ktls/tasks/install-deps/main.yml
index cb7798cf..7cec015b 100644
--- a/playbooks/roles/ktls/tasks/install-deps/main.yml
+++ b/playbooks/roles/ktls/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install dependencies for pynfs
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.include_tasks: debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.include_tasks: suse/main.yml
diff --git a/playbooks/roles/linux-mirror/tasks/main.yml b/playbooks/roles/linux-mirror/tasks/main.yml
index a07ed103..007a0411 100644
--- a/playbooks/roles/linux-mirror/tasks/main.yml
+++ b/playbooks/roles/linux-mirror/tasks/main.yml
@@ -96,7 +96,7 @@
     - not install_only_git_daemon|bool
   tags: ["mirror"]
 
-- name: load variables from yaml file
+- name: Load variables from yaml file
   ansible.builtin.include_vars:
     file: "{{ topdir_path }}/playbooks/roles/linux-mirror/linux-mirror-systemd/mirrors.yaml"
     name: mirrors
diff --git a/playbooks/roles/pkg/tasks/debian.yml b/playbooks/roles/pkg/tasks/debian.yml
index 98f6687f..362df3b1 100644
--- a/playbooks/roles/pkg/tasks/debian.yml
+++ b/playbooks/roles/pkg/tasks/debian.yml
@@ -1,11 +1,11 @@
 ---
-- name: debian_libaio rename for buster
+- name: Debian_libaio rename for buster
   ansible.builtin.set_fact:
     is_bookworm: '{{ ansible_distribution_release == "bookworm" }}'
     is_buster: '{{ ansible_distribution_release == "buster" }}'
     is_trixie: '{{ ansible_distribution_release == "trixie" }}'
 
-- name: debian_libaio rename for debian releases older than trixie
+- name: Debian_libaio rename for debian releases older than trixie
   ansible.builtin.set_fact:
     pkg_libaio: "libaio1"
   when: >
diff --git a/playbooks/roles/pkg/tasks/main.yml b/playbooks/roles/pkg/tasks/main.yml
index 602b1359..d7e34483 100644
--- a/playbooks/roles/pkg/tasks/main.yml
+++ b/playbooks/roles/pkg/tasks/main.yml
@@ -1,4 +1,4 @@
 ---
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/debian.yml
   when: ansible_facts['os_family']|lower == 'debian'
diff --git a/playbooks/roles/pynfs/tasks/install-deps/main.yml b/playbooks/roles/pynfs/tasks/install-deps/main.yml
index 00221282..806916e0 100644
--- a/playbooks/roles/pynfs/tasks/install-deps/main.yml
+++ b/playbooks/roles/pynfs/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install dependencies for pynfs
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/reboot-limit/tasks/install-deps/main.yml b/playbooks/roles/reboot-limit/tasks/install-deps/main.yml
index 651d4c9e..d8e0539f 100644
--- a/playbooks/roles/reboot-limit/tasks/install-deps/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/install-deps/main.yml
@@ -3,7 +3,7 @@
     name: pkg
 
 # tasks to install dependencies for reboot-limit
-- name: reboot-limit distribution specific setup
+- name: Reboot-limit distribution specific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/selftests/tasks/install-deps/main.yml b/playbooks/roles/selftests/tasks/install-deps/main.yml
index bb752e04..b96f76cf 100644
--- a/playbooks/roles/selftests/tasks/install-deps/main.yml
+++ b/playbooks/roles/selftests/tasks/install-deps/main.yml
@@ -1,6 +1,6 @@
 ---
 # tasks to install dependencies for selftests
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/sysbench/tasks/install-deps/main.yml b/playbooks/roles/sysbench/tasks/install-deps/main.yml
index 6936b77d..bdc3de4c 100644
--- a/playbooks/roles/sysbench/tasks/install-deps/main.yml
+++ b/playbooks/roles/sysbench/tasks/install-deps/main.yml
@@ -3,7 +3,7 @@
     name: pkg
 
 # tasks to install dependencies for oscheck
-- name: oscheck distribution ospecific setup
+- name: Oscheck distribution ospecific setup
   ansible.builtin.import_tasks: tasks/install-deps/debian/main.yml
   when: ansible_facts['os_family']|lower == 'debian'
 - ansible.builtin.import_tasks: tasks/install-deps/suse/main.yml
diff --git a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
index 3925b76f..ae53b587 100644
--- a/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
+++ b/playbooks/roles/sysbench/tasks/mysql-docker/main.yaml
@@ -177,7 +177,7 @@
   with_items:
     - "{{ sysbench_mysql_container_host_root_path }}/.mysqlsh/"
 
-- name: git clone our mysqlsh plugin for telemetry
+- name: Git clone our mysqlsh plugin for telemetry
   tags: ["setup"]
   become: true
   become_flags: "su - -c"

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH RFT 6/8] playbooks: ansible-lint fix no-free-form
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
                   ` (4 preceding siblings ...)
  2025-08-25 20:54 ` [PATCH RFT 5/8] playbooks: ansible-lint fix name Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 7/8] playbooks: ansible-lint fix command-instead-of-shell Daniel Gomez
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix no-free-form ansible-lint rule violations

Fixed no-free-form rule violations across 18 file(s).

Affected files include:
- playbooks/roles/blktests/handlers/main.yml
- playbooks/roles/blktests/tasks/main.yml
- playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
- playbooks/roles/cxl/tasks/main.yml
- playbooks/roles/devconfig/tasks/main.yml
... and 13 more files

Applied using the ansible-lint --fix=no-free-form.

Generated-by: Ansible Lint
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/roles/blktests/handlers/main.yml         |  4 +++-
 playbooks/roles/blktests/tasks/main.yml            | 15 +++++++++++----
 playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml   | 18 ++++++++++++------
 playbooks/roles/cxl/tasks/main.yml                 | 11 ++++++++---
 playbooks/roles/devconfig/tasks/main.yml           | 15 ++++++++++-----
 playbooks/roles/fstests/handlers/main.yml          |  4 +++-
 playbooks/roles/fstests/tasks/main.yml             | 22 ++++++++++++++++------
 playbooks/roles/gitr/tasks/main.yml                |  8 ++++++--
 playbooks/roles/hypervisor-tuning/tasks/main.yml   |  9 ++++++---
 playbooks/roles/ltp/tasks/main.yml                 |  8 ++++++--
 .../roles/monitoring/tasks/monitor_collect.yml     |  4 +++-
 playbooks/roles/nfstest/tasks/main.yml             |  8 ++++++--
 playbooks/roles/postfix_relay_host/tasks/main.yml  |  3 ++-
 playbooks/roles/pynfs/tasks/main.yml               | 16 ++++++++++++----
 .../roles/reboot-limit/tasks/do-reboot-compare.yml |  7 +++++--
 playbooks/roles/reboot-limit/tasks/do-reboot.yml   |  7 +++++--
 playbooks/roles/reboot-limit/tasks/main.yml        |  8 ++++++--
 playbooks/roles/selftests/tasks/main.yml           | 19 ++++++++++++++-----
 18 files changed, 134 insertions(+), 52 deletions(-)

diff --git a/playbooks/roles/blktests/handlers/main.yml b/playbooks/roles/blktests/handlers/main.yml
index 928b2f19..04c7ad7e 100644
--- a/playbooks/roles/blktests/handlers/main.yml
+++ b/playbooks/roles/blktests/handlers/main.yml
@@ -1,4 +1,6 @@
 ---
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
-  ansible.builtin.service: name="{{watchdog_service_name}}" state=restarted
+  ansible.builtin.service:
+    name: "{{watchdog_service_name}}"
+    state: restarted
diff --git a/playbooks/roles/blktests/tasks/main.yml b/playbooks/roles/blktests/tasks/main.yml
index c58bd727..92045d21 100644
--- a/playbooks/roles/blktests/tasks/main.yml
+++ b/playbooks/roles/blktests/tasks/main.yml
@@ -170,7 +170,8 @@
 
 - name: Print uname for each host
   tags: ["blktests", "run_tests"]
-  ansible.builtin.debug: var=ansible_kernel
+  ansible.builtin.debug:
+    var: ansible_kernel
 - name: Get used target kernel version
   tags: ["blktests", "copy_results", "augment_expunge_list"]
   ansible.builtin.command: "uname -r"
@@ -255,7 +256,9 @@
     - blktests_test_devs|length != 0
 
 - name: Hint to watchdog tests are about to kick off
-  ansible.builtin.file: path="{{ blktests_workflow_target }}/.begin" state=touch
+  ansible.builtin.file:
+    path: "{{ blktests_workflow_target }}/.begin"
+    state: touch
   delegate_to: localhost
   tags: ["blktests", "run_tests"]
   when:
@@ -369,7 +372,9 @@
     - kdevops_run_blktests|bool
 
 - name: Remove watchdog hint that tests have started
-  ansible.builtin.file: path="{{ blktests_workflow_target }}/.begin" state=absent
+  ansible.builtin.file:
+    path: "{{ blktests_workflow_target }}/.begin"
+    state: absent
   delegate_to: localhost
   tags: ["blktests", "run_tests"]
   when:
@@ -377,7 +382,9 @@
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ blktests_results_target }}/{{ item }}" state=absent
+  ansible.builtin.file:
+    path: "{{ blktests_results_target }}/{{ item }}"
+    state: absent
   delegate_to: localhost
   with_items:
     - "last-run"
diff --git a/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml b/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
index 4f86e4cd..afa2e497 100644
--- a/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
+++ b/playbooks/roles/cxl/tasks/cxl-dcd-setup/main.yml
@@ -7,7 +7,8 @@
   tags: ["cxl-dcd-setup"]
   delegate_to: localhost
 
-- ansible.builtin.debug: var=command_output.stdout_lines
+- ansible.builtin.debug:
+    var: command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Show DC extents added
@@ -16,7 +17,8 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- ansible.builtin.debug: var=command_output.stdout_lines
+- ansible.builtin.debug:
+    var: command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Create dax devices for DC region
@@ -26,7 +28,8 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- ansible.builtin.debug: var=command_output.stdout_lines
+- ansible.builtin.debug:
+    var: command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Show dax devices added
@@ -35,7 +38,8 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- ansible.builtin.debug: var=command_output.stdout_lines
+- ansible.builtin.debug:
+    var: command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Convert dax devices to system RAM and online
@@ -45,7 +49,8 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- ansible.builtin.debug: var=command_output.stdout_lines
+- ansible.builtin.debug:
+    var: command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
 
 - name: Show system memory with lsmem
@@ -54,5 +59,6 @@
   register: command_output
   tags: ["cxl-dcd-setup"]
 
-- ansible.builtin.debug: var=command_output.stdout_lines
+- ansible.builtin.debug:
+    var: command_output.stdout_lines
   tags: ["cxl-dcd-setup"]
diff --git a/playbooks/roles/cxl/tasks/main.yml b/playbooks/roles/cxl/tasks/main.yml
index a51fe1f5..be4e9e91 100644
--- a/playbooks/roles/cxl/tasks/main.yml
+++ b/playbooks/roles/cxl/tasks/main.yml
@@ -97,7 +97,8 @@
 
 - name: Print uname for each host
   tags: ["ndctl", "cxl-test-prep", "copy_results"]
-  ansible.builtin.debug: var=ansible_kernel
+  ansible.builtin.debug:
+    var: ansible_kernel
 - name: Clear out old meson results directory on target hosts
   become: true
   become_flags: "su - -c"
@@ -161,7 +162,9 @@
     - kdevops_run_cxl_tests|bool
 
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ cxl_results_target }}/{{ item }}" state=absent
+  ansible.builtin.file:
+    path: "{{ cxl_results_target }}/{{ item }}"
+    state: absent
   delegate_to: localhost
   with_items:
     - "last-run"
@@ -171,7 +174,9 @@
   tags: ["ndctl", "cxl-test-meson", "copy_results"]
 
 - name: Create empty last-run directory
-  ansible.builtin.file: path="{{ cxl_results_target }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ cxl_results_target }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["ndctl", "cxl-test-meson", "copy_results"]
diff --git a/playbooks/roles/devconfig/tasks/main.yml b/playbooks/roles/devconfig/tasks/main.yml
index cc4c6592..2ffa433f 100644
--- a/playbooks/roles/devconfig/tasks/main.yml
+++ b/playbooks/roles/devconfig/tasks/main.yml
@@ -143,7 +143,8 @@
   when: dev_git_config_file.stat.exists
 
 - name: Check if the system has a user vimrc file
-  ansible.builtin.stat: path=~/.vimrc
+  ansible.builtin.stat:
+    path: ~/.vimrc
   register: dev_vimrc_file
   tags: vimrc
 
@@ -158,7 +159,8 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.stat: path=~/.vimrc
+  ansible.builtin.stat:
+    path: ~/.vimrc
   register: dev_root_vimrc_file
   tags: vimrc
 
@@ -226,7 +228,8 @@
   when: dev_bash_config_file_copied_root is success
 
 - name: Check to see if system has GRUB2
-  ansible.builtin.stat: path=/etc/default/grub
+  ansible.builtin.stat:
+    path: /etc/default/grub
   register: grub2_config_file
   tags: ["console"]
 
@@ -234,7 +237,8 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.stat: path=/etc/default/grub.d/15_timeout.cfg
+  ansible.builtin.stat:
+    path: /etc/default/grub.d/15_timeout.cfg
   register: stupid_cloud_grub_timeout
   when:
     - devconfig_enable_console|bool
@@ -641,7 +645,8 @@
   when: devconfig_enable_systemd_journal_remote|bool
 
 - name: Enables systemd's watchdog
-  ansible.builtin.stat: path=/etc/systemd/system.conf
+  ansible.builtin.stat:
+    path: /etc/systemd/system.conf
   register: systemd_config_file
   tags: ["systemd_watchdog"]
 
diff --git a/playbooks/roles/fstests/handlers/main.yml b/playbooks/roles/fstests/handlers/main.yml
index 928b2f19..04c7ad7e 100644
--- a/playbooks/roles/fstests/handlers/main.yml
+++ b/playbooks/roles/fstests/handlers/main.yml
@@ -1,4 +1,6 @@
 ---
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
-  ansible.builtin.service: name="{{watchdog_service_name}}" state=restarted
+  ansible.builtin.service:
+    name: "{{watchdog_service_name}}"
+    state: restarted
diff --git a/playbooks/roles/fstests/tasks/main.yml b/playbooks/roles/fstests/tasks/main.yml
index 2363fddb..faa0da6c 100644
--- a/playbooks/roles/fstests/tasks/main.yml
+++ b/playbooks/roles/fstests/tasks/main.yml
@@ -1080,15 +1080,20 @@
 
 - name: Print uname for each host
   tags: ["oscheck", "fstests", "run_tests"]
-  ansible.builtin.debug: var=ansible_kernel
+  ansible.builtin.debug:
+    var: ansible_kernel
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ fstests_results_target }}/" state=absent
+  ansible.builtin.file:
+    path: "{{ fstests_results_target }}/"
+    state: absent
   delegate_to: localhost
   run_once: true
   tags: ["oscheck", "fstests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  ansible.builtin.file: path="{{ fstests_results_target }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ fstests_results_target }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["oscheck", "fstests", "copy_results", "clean_local_results"]
@@ -1134,7 +1139,9 @@
     - devconfig_enable_systemd_journal_remote|bool
 
 - name: Hint to watchdog tests are about to kick off
-  ansible.builtin.file: path="{{ fstests_workflow_dir }}/.begin" state=touch
+  ansible.builtin.file:
+    path: "{{ fstests_workflow_dir }}/.begin"
+    state: touch
   delegate_to: localhost
   tags: ["oscheck", "fstests", "run_tests"]
   when:
@@ -1296,7 +1303,9 @@
   tags: ["oscheck", "fstests", "run_tests", "monitoring", "monitor_collect"]
 
 - name: Remove watchdog hint that tests have started
-  ansible.builtin.file: path="{{ fstests_workflow_dir }}/.begin" state=absent
+  ansible.builtin.file:
+    path: "{{ fstests_workflow_dir }}/.begin"
+    state: absent
   delegate_to: localhost
   tags: ["oscheck", "fstests", "run_tests"]
   when:
@@ -1604,7 +1613,8 @@
   run_once: true
 
 - name: Get stat of new files not yet committed, ie, new expunge files
-  ansible.builtin.stat: path="{{ fstests_results_target }}/new_expunge_files.txt"
+  ansible.builtin.stat:
+    path: "{{ fstests_results_target }}/new_expunge_files.txt"
   delegate_to: localhost
   register: new_expunge_files_stat
   run_once: true
diff --git a/playbooks/roles/gitr/tasks/main.yml b/playbooks/roles/gitr/tasks/main.yml
index aa51f6a2..872b8eaf 100644
--- a/playbooks/roles/gitr/tasks/main.yml
+++ b/playbooks/roles/gitr/tasks/main.yml
@@ -29,13 +29,17 @@
     gitr_run_uniqifier: "{{ ansible_date_time.iso8601_basic_short }}"
 
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ gitr_results_target }}/" state=absent
+  ansible.builtin.file:
+    path: "{{ gitr_results_target }}/"
+    state: absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  ansible.builtin.file: path="{{ gitr_results_target }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ gitr_results_target }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
diff --git a/playbooks/roles/hypervisor-tuning/tasks/main.yml b/playbooks/roles/hypervisor-tuning/tasks/main.yml
index 1d057b28..24755a42 100644
--- a/playbooks/roles/hypervisor-tuning/tasks/main.yml
+++ b/playbooks/roles/hypervisor-tuning/tasks/main.yml
@@ -16,7 +16,8 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.stat: path=/sys/kernel/mm/ksm/run
+  ansible.builtin.stat:
+    path: /sys/kernel/mm/ksm/run
   register: ksm_enable_file
   tags: ["hypervisor"]
 
@@ -33,7 +34,8 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.stat: path=/sys/module/zswap/parameters/enabled
+  ansible.builtin.stat:
+    path: /sys/module/zswap/parameters/enabled
   register: zswap_enable_file
   tags: ["hypervisor"]
 
@@ -41,7 +43,8 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.stat: path=/sys/module/zswap/parameters/max_pool_percent
+  ansible.builtin.stat:
+    path: /sys/module/zswap/parameters/max_pool_percent
   register: zswap_max_pool_percent_file
   when:
     - hypervisor_tunning_zswap_enable|bool
diff --git a/playbooks/roles/ltp/tasks/main.yml b/playbooks/roles/ltp/tasks/main.yml
index 1101ef51..830ec305 100644
--- a/playbooks/roles/ltp/tasks/main.yml
+++ b/playbooks/roles/ltp/tasks/main.yml
@@ -33,13 +33,17 @@
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ ltp_results_target }}/" state=absent
+  ansible.builtin.file:
+    path: "{{ ltp_results_target }}/"
+    state: absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  ansible.builtin.file: path="{{ ltp_results_target }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ ltp_results_target }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect.yml b/playbooks/roles/monitoring/tasks/monitor_collect.yml
index bcff345b..5432fc87 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect.yml
@@ -113,7 +113,9 @@
     monitoring_results_path: "{{ monitoring_results_base_path | default(topdir_path + '/workflows/fstests/results/monitoring') }}"
 
 - name: Create local monitoring results directory
-  ansible.builtin.file: path="{{ monitoring_results_path }}" state=directory
+  ansible.builtin.file:
+    path: "{{ monitoring_results_path }}"
+    state: directory
   delegate_to: localhost
   run_once: true
   when:
diff --git a/playbooks/roles/nfstest/tasks/main.yml b/playbooks/roles/nfstest/tasks/main.yml
index a79c563f..b8a0e7d1 100644
--- a/playbooks/roles/nfstest/tasks/main.yml
+++ b/playbooks/roles/nfstest/tasks/main.yml
@@ -140,13 +140,17 @@
   tags: copy_results
 
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ nfstest_results_target }}/" state=absent
+  ansible.builtin.file:
+    path: "{{ nfstest_results_target }}/"
+    state: absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  ansible.builtin.file: path="{{ nfstest_results_target }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ nfstest_results_target }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
diff --git a/playbooks/roles/postfix_relay_host/tasks/main.yml b/playbooks/roles/postfix_relay_host/tasks/main.yml
index ab063c79..1b85939f 100644
--- a/playbooks/roles/postfix_relay_host/tasks/main.yml
+++ b/playbooks/roles/postfix_relay_host/tasks/main.yml
@@ -16,7 +16,8 @@
   become: true
   become_flags: "su - -c"
   become_method: sudo
-  ansible.builtin.stat: path=/etc/postfix/main.cf
+  ansible.builtin.stat:
+    path: /etc/postfix/main.cf
   register: postfix_config_main_file
   when:
     - postfix_relay_host_setup|bool
diff --git a/playbooks/roles/pynfs/tasks/main.yml b/playbooks/roles/pynfs/tasks/main.yml
index e582b446..1af22812 100644
--- a/playbooks/roles/pynfs/tasks/main.yml
+++ b/playbooks/roles/pynfs/tasks/main.yml
@@ -18,13 +18,17 @@
   tags: ["vars"]
 
 - name: Clean up our localhost results directory and files
-  ansible.builtin.file: path="{{ pynfs_workflow_dir }}/results/" state=absent
+  ansible.builtin.file:
+    path: "{{ pynfs_workflow_dir }}/results/"
+    state: absent
   delegate_to: localhost
   run_once: true
   tags: ["clean_local_results"]
 
 - name: Create the local results directory
-  ansible.builtin.file: path="{{ pynfs_workflow_dir }}/results/" state=directory
+  ansible.builtin.file:
+    path: "{{ pynfs_workflow_dir }}/results/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["first_run"]
@@ -132,13 +136,17 @@
   until: result.rc == 0
 
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ pynfs_results_target }}/" state=absent
+  ansible.builtin.file:
+    path: "{{ pynfs_results_target }}/"
+    state: absent
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  ansible.builtin.file: path="{{ pynfs_results_target }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ pynfs_results_target }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["run_tests", "copy_results", "clean_local_results"]
diff --git a/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml b/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
index 358f86a6..85dcd943 100644
--- a/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
+++ b/playbooks/roles/reboot-limit/tasks/do-reboot-compare.yml
@@ -2,9 +2,12 @@
 # This task performs both regular and kexec reboots sequentially for comparison
 - name: Print uname for each host
   tags: ["run_tests"]
-  ansible.builtin.debug: var=ansible_kernel
+  ansible.builtin.debug:
+    var: ansible_kernel
 - name: Hint to our watchdog our reboot-limit comparison tests are about to kick off
-  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
+  ansible.builtin.file:
+    path: "{{ reboot_limit_local_results_dir }}/.begin"
+    state: touch
   delegate_to: localhost
   tags: ["run_tests"]
   run_once: true
diff --git a/playbooks/roles/reboot-limit/tasks/do-reboot.yml b/playbooks/roles/reboot-limit/tasks/do-reboot.yml
index f8003c3c..4da0d0b5 100644
--- a/playbooks/roles/reboot-limit/tasks/do-reboot.yml
+++ b/playbooks/roles/reboot-limit/tasks/do-reboot.yml
@@ -1,9 +1,12 @@
 ---
 - name: Print uname for each host
   tags: ["run_tests"]
-  ansible.builtin.debug: var=ansible_kernel
+  ansible.builtin.debug:
+    var: ansible_kernel
 - name: Hint to our watchdog our reboot-limit tests are about to kick off
-  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/.begin" state=touch
+  ansible.builtin.file:
+    path: "{{ reboot_limit_local_results_dir }}/.begin"
+    state: touch
   delegate_to: localhost
   tags: ["run_tests"]
   run_once: true
diff --git a/playbooks/roles/reboot-limit/tasks/main.yml b/playbooks/roles/reboot-limit/tasks/main.yml
index ef33de37..1c34c80a 100644
--- a/playbooks/roles/reboot-limit/tasks/main.yml
+++ b/playbooks/roles/reboot-limit/tasks/main.yml
@@ -97,13 +97,17 @@
   tags: ["vars"]
 
 - name: Clean up our localhost results directory and files as we are on boot number {{ reboot_limit_count }}
-  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/" state=absent
+  ansible.builtin.file:
+    path: "{{ reboot_limit_local_results_dir }}/"
+    state: absent
   delegate_to: localhost
   run_once: true
   tags: ["clean_local_results", "first_run"]
 
 - name: Create the local results directory
-  ansible.builtin.file: path="{{ reboot_limit_local_results_dir }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ reboot_limit_local_results_dir }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["first_run"]
diff --git a/playbooks/roles/selftests/tasks/main.yml b/playbooks/roles/selftests/tasks/main.yml
index b606e67e..f8af3080 100644
--- a/playbooks/roles/selftests/tasks/main.yml
+++ b/playbooks/roles/selftests/tasks/main.yml
@@ -265,7 +265,8 @@
 
 - name: Print uname for each host
   tags: ["selftests", "run_tests"]
-  ansible.builtin.debug: var=ansible_kernel
+  ansible.builtin.debug:
+    var: ansible_kernel
 - name: Load configfs module
   tags: ["selftests", "run_tests", "configfs"]
   become: true
@@ -285,7 +286,9 @@
   tags: ["selftests", "run_tests", "clean_results"]
 
 - name: Hint to watchdog tests are about to kick off
-  ansible.builtin.file: path="{{ selftests_workflow_target }}/.begin" state=touch
+  ansible.builtin.file:
+    path: "{{ selftests_workflow_target }}/.begin"
+    state: touch
   delegate_to: localhost
   tags: ["selftests", "run_tests"]
   when:
@@ -388,7 +391,9 @@
     group: root
 
 - name: Remove watchdog hint that tests have started
-  ansible.builtin.file: path="{{ selftests_workflow_target }}/.begin" state=absent
+  ansible.builtin.file:
+    path: "{{ selftests_workflow_target }}/.begin"
+    state: absent
   delegate_to: localhost
   tags: ["selftests", "run_tests"]
   when:
@@ -396,7 +401,9 @@
   run_once: true
 
 - name: Clean up our localhost results/last-run directory
-  ansible.builtin.file: path="{{ selftests_results_target }}/{{ item }}" state=absent
+  ansible.builtin.file:
+    path: "{{ selftests_results_target }}/{{ item }}"
+    state: absent
   delegate_to: localhost
   with_items:
     - "last-run"
@@ -406,7 +413,9 @@
   tags: ["selftests", "copy_results", "clean_local_results"]
 
 - name: Create empty last-run directory
-  ansible.builtin.file: path="{{ selftests_results_target }}/" state=directory
+  ansible.builtin.file:
+    path: "{{ selftests_results_target }}/"
+    state: directory
   delegate_to: localhost
   run_once: true
   tags: ["selftests", "copy_results", "clean_local_results"]

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH RFT 7/8] playbooks: ansible-lint fix command-instead-of-shell
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
                   ` (5 preceding siblings ...)
  2025-08-25 20:54 ` [PATCH RFT 6/8] playbooks: ansible-lint fix no-free-form Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-25 20:54 ` [PATCH RFT 8/8] playbooks: ansible-lint fix jinja Daniel Gomez
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix command-instead-of-shell ansible-lint rule violations

Fixed command-instead-of-shell rule violations across 3 file(s).

Affected files:
- playbooks/roles/blktests/tasks/main.yml
- playbooks/roles/fstests/tasks/main.yml
- playbooks/roles/monitoring/tasks/monitor_collect_only.yml

Applied using the ansible-lint-fix-rules.py script with --fix=command-instead-of-shell.

Generated-by: Ansible Lint (ansible-lint-fix-rules.py)
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/roles/blktests/tasks/main.yml                   | 8 ++++----
 playbooks/roles/fstests/tasks/main.yml                    | 8 ++++----
 playbooks/roles/monitoring/tasks/monitor_collect_only.yml | 4 ++--
 3 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/playbooks/roles/blktests/tasks/main.yml b/playbooks/roles/blktests/tasks/main.yml
index 92045d21..69e8ef5f 100644
--- a/playbooks/roles/blktests/tasks/main.yml
+++ b/playbooks/roles/blktests/tasks/main.yml
@@ -420,13 +420,13 @@
     - last_run_results.matched > 0
 
 - name: Augment expunge list just run git diff after this to see new failures found
-  ansible.builtin.shell: ./python/workflows/blktests/augment_expunge_list.py {{ blktests_results_target }}/last-run/ {{ blktests_expunges_target }}
+  ansible.builtin.command: ./python/workflows/blktests/augment_expunge_list.py {{ blktests_results_target }}/last-run/ {{ blktests_expunges_target }}
   delegate_to: localhost
   tags: ["blktests", "copy_results", "augment_expunge_list"]
   run_once: true
 
 - name: Copy last-run files to results directory for target kernel and in place only bad and dmesg files
-  ansible.builtin.shell: ./python/workflows/blktests/gen-results-dir.py
+  ansible.builtin.command: ./python/workflows/blktests/gen-results-dir.py
   delegate_to: localhost
   tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
@@ -434,7 +434,7 @@
     - not blktests_results_all
 
 - name: Copy all last-run files to results directory for full results
-  ansible.builtin.shell: ./python/workflows/blktests/gen-results-dir.py --copy-all
+  ansible.builtin.command: ./python/workflows/blktests/gen-results-dir.py --copy-all
   delegate_to: localhost
   tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
   run_once: true
@@ -442,7 +442,7 @@
     - blktests_results_all | bool
 
 - name: Print blktests new expunge files for which are not yet committed
-  ansible.builtin.shell: ./python/workflows/blktests/get_new_expunge_files.py {{ blktests_expunges_target }}
+  ansible.builtin.command: ./python/workflows/blktests/get_new_expunge_files.py {{ blktests_expunges_target }}
   delegate_to: localhost
   register: new_expunges
   tags: ["blktests", "copy_results", "print_results", "augment_expunge_list"]
diff --git a/playbooks/roles/fstests/tasks/main.yml b/playbooks/roles/fstests/tasks/main.yml
index faa0da6c..3a57a73b 100644
--- a/playbooks/roles/fstests/tasks/main.yml
+++ b/playbooks/roles/fstests/tasks/main.yml
@@ -1575,8 +1575,8 @@
     - item.stat.exists
 
 - name: Print fstests results to xunit_results.txt on localhost if xunit xml file was found
-  ansible.builtin.shell: ./python/workflows/fstests/gen_results_summary --results_file result.xml  --print_section --output_file {{ fstests_results_target }}/{{ last_kernel
-    }}/xunit_results.txt {{ fstests_results_target }}/
+  ansible.builtin.command: ./python/workflows/fstests/gen_results_summary --results_file result.xml  --print_section --output_file {{ fstests_results_target }}/{{
+    last_kernel }}/xunit_results.txt {{ fstests_results_target }}/
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "print_results", "augment_expunge_list"]
   when:
@@ -1592,7 +1592,7 @@
   run_once: true
 
 - name: Create check.time.distribution files for {{ fstests_results_target }}/results
-  ansible.builtin.shell: ./python/workflows/fstests/fstests-checktime-distribution.py {{ fstests_results_target }}
+  ansible.builtin.command: ./python/workflows/fstests/fstests-checktime-distribution.py {{ fstests_results_target }}
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   run_once: true
@@ -1600,7 +1600,7 @@
     - checktime_files.matched > 0
 
 - name: Augment expunge list for {{ fstests_fstyp }}, just run git diff after this to see new failures found
-  ansible.builtin.shell: ./python/workflows/fstests/augment_expunge_list.py {{ fstests_fstyp }} {{ fstests_results_target }}/ {{ fstests_workflow_dir }}/expunges/
+  ansible.builtin.command: ./python/workflows/fstests/augment_expunge_list.py {{ fstests_fstyp }} {{ fstests_results_target }}/ {{ fstests_workflow_dir }}/expunges/
   delegate_to: localhost
   tags: ["oscheck", "fstests", "copy_results", "augment_expunge_list"]
   run_once: true
diff --git a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
index ef28b995..20e40a31 100644
--- a/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
+++ b/playbooks/roles/monitoring/tasks/monitor_collect_only.yml
@@ -111,7 +111,7 @@
     - localhost_matplotlib_check.rc == 0
 
 - name: Generate A/B comparison plots for each configuration
-  ansible.builtin.shell:
+  ansible.builtin.command:
   delegate_to: localhost
   with_items: "{{ all_monitoring_files.files | map(attribute='path') | map('basename') | list }}"
   register: ab_plot_generation
@@ -124,7 +124,7 @@
     - all_monitoring_files.files | length > 0
 
 - name: Generate comprehensive plot with all results
-  ansible.builtin.shell:
+  ansible.builtin.command:
   delegate_to: localhost
   register: comprehensive_plot_generation
   ignore_errors: true

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH RFT 8/8] playbooks: ansible-lint fix jinja
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
                   ` (6 preceding siblings ...)
  2025-08-25 20:54 ` [PATCH RFT 7/8] playbooks: ansible-lint fix command-instead-of-shell Daniel Gomez
@ 2025-08-25 20:54 ` Daniel Gomez
  2025-08-26 12:20 ` [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
  2025-08-26 13:30 ` Daniel Gomez
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-25 20:54 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez

From: Daniel Gomez <da.gomez@samsung.com>

Fix jinja ansible-lint rule violations

Fixed jinja rule violations across 2 file(s).

Affected files:
- playbooks/roles/blktests/handlers/main.yml
- playbooks/roles/fstests/handlers/main.yml

Applied using the ansible-lint --fix=jinja.

Generated-by: Ansible Lint
Signed-off-by: Daniel Gomez <da.gomez@samsung.com>
---
 playbooks/roles/blktests/handlers/main.yml | 2 +-
 playbooks/roles/fstests/handlers/main.yml  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/playbooks/roles/blktests/handlers/main.yml b/playbooks/roles/blktests/handlers/main.yml
index 04c7ad7e..9eb4af1e 100644
--- a/playbooks/roles/blktests/handlers/main.yml
+++ b/playbooks/roles/blktests/handlers/main.yml
@@ -2,5 +2,5 @@
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
   ansible.builtin.service:
-    name: "{{watchdog_service_name}}"
+    name: "{{ watchdog_service_name }}"
     state: restarted
diff --git a/playbooks/roles/fstests/handlers/main.yml b/playbooks/roles/fstests/handlers/main.yml
index 04c7ad7e..9eb4af1e 100644
--- a/playbooks/roles/fstests/handlers/main.yml
+++ b/playbooks/roles/fstests/handlers/main.yml
@@ -2,5 +2,5 @@
 # SPDX-License-Identifier GPL-2.0+ OR MIT
 - name: Restart watchdog daemon
   ansible.builtin.service:
-    name: "{{watchdog_service_name}}"
+    name: "{{ watchdog_service_name }}"
     state: restarted

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
                   ` (7 preceding siblings ...)
  2025-08-25 20:54 ` [PATCH RFT 8/8] playbooks: ansible-lint fix jinja Daniel Gomez
@ 2025-08-26 12:20 ` Daniel Gomez
  2025-08-26 13:30 ` Daniel Gomez
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-26 12:20 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever; +Cc: kdevops, Daniel Gomez



On 25/08/2025 22.54, Daniel Gomez wrote:
> Run the Ansible linter on playbooks and split changes by individual
> autofix linter rules to keep them bisectable in case of regressions.
> Use the autogenerated Claude Code wrapper script to apply and commit the
> changes automatically [1].
> 
> Link: https://github.com/dkruces/kdevops/tree/ansible-lint-wrapper [1]
> 
> List of commands executed:
>   ansible-lint --fix=command-instead-of-shell playbooks/
>   ansible-lint --fix=deprecated-local-action playbooks/
>   ansible-lint --fix=fqcn playbooks/
>   ansible-lint --fix=jinja playbooks/
>   ansible-lint --fix=key-order playbooks/
>   ansible-lint --fix=name playbooks/
>   ansible-lint --fix=no-free-form playbooks/
>   ansible-lint --fix=no-jinja-when playbooks/
>   ansible-lint --fix=no-log-password playbooks/
>   ansible-lint --fix=partial-become playbooks/
>   ansible-lint --fix=yaml playbooks
> 
> Summary of pending rules:
> 
> Rule Violation Summary
> 
>   1 syntax-check profile:min tags:core,unskippable
>  18 command-instead-of-module profile:min tags:command-shell,idiom
>   2 deprecated-local-action profile:min tags:deprecations
>   2 inline-env-var profile:min tags:command-shell,idiom
>   8 jinja profile:min tags:formatting
>   7 jinja profile:min tags:formatting
>   1 schema profile:min tags:core
> 660 schema profile:min tags:core
>  71 name profile:min tags:idiom
>   4 name profile:min tags:idiom
> 470 var-naming profile:min tags:idiom
>  32 yaml profile:min tags:formatting,yaml
>   1 yaml profile:min tags:formatting,yaml
>  81 name profile:min tags:idiom
>   3 latest profile:min tags:idempotency
>   1 package-latest profile:min tags:idempotency
> 136 risky-file-permissions profile:min tags:unpredictability
>   9 risky-shell-pipe profile:min tags:command-shell
>  65 ignore-errors profile:min tags:unpredictability
> 246 no-changed-when profile:min tags:command-shell,idempotency
>   4 args profile:min tags:syntax,experimental
> 
> Failed: 1811 failure(s), 11 warning(s) on 585 files.
> <sys>:0: DeprecationWarning: builtin type swigvarlink has no __module__
> attribute
> 
> RFC:
> https://lore.kernel.org/kdevops/20250801-ansible-lint-v1-0-5a56a95ed8d5@samsung.com/
> 
> Related:
> https://lore.kernel.org/kdevops/f12b23e0-8f9c-432e-9e7f-eca522665085@kernel.org/
> 
> Signed-off-by: Daniel Gomez <da.gomez@samsung.com>

Tested workflows:
* CI: fstests (xfs)
* selftests (modules)
* nfstests
* pynfs

Luis, I'm adding your reviewed tag [3] back. I forgot to include it here. There
are no changes other that rebasing and split changes in multiple commits.

I'm planning to merge this later today. If anyone finds something down the road,
please let me know.

Link: https://lore.kernel.org/kdevops/aI5H1juQenrpgphW@bombadil.infradead.org/ [3]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes
  2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
                   ` (8 preceding siblings ...)
  2025-08-26 12:20 ` [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
@ 2025-08-26 13:30 ` Daniel Gomez
  9 siblings, 0 replies; 11+ messages in thread
From: Daniel Gomez @ 2025-08-26 13:30 UTC (permalink / raw)
  To: Luis Chamberlain, Chuck Lever, Daniel Gomez; +Cc: kdevops


On Mon, 25 Aug 2025 22:54:23 +0200, Daniel Gomez wrote:
> Run the Ansible linter on playbooks and split changes by individual
> autofix linter rules to keep them bisectable in case of regressions.
> Use the autogenerated Claude Code wrapper script to apply and commit the
> changes automatically [1].
> 
> Link: https://github.com/dkruces/kdevops/tree/ansible-lint-wrapper [1]
> 
> [...]

Applied, thanks!

[1/8] playbooks: ansible-lint fix deprecated-local-action
      commit: 48d73d66bd4a3d78cb958cc97095fca13be374bf
[2/8] playbooks: ansible-lint fix fqcn
      commit: 700b4026a8b592f4096e9a24eeedc06e4e18748e
[3/8] playbooks: ansible-lint fix jinja
      commit: abf5c4043ce43cdcd9c81506e91a7358de050a0c
[4/8] playbooks: ansible-lint fix key-order
      commit: 066b6d3545b5c4de36912dfc56c5f1a8cf5991e1
[5/8] playbooks: ansible-lint fix name
      commit: fba6a39b96c5eb91e028f5f784f5ebbe50d08e39
[6/8] playbooks: ansible-lint fix no-free-form
      commit: 89a34ee3c0390fe12285b832e4884535595c99e0
[7/8] playbooks: ansible-lint fix command-instead-of-shell
      commit: 447a6814502d3404bdec5a31a225857793e1dcbb
[8/8] playbooks: ansible-lint fix jinja
      commit: abf5c4043ce43cdcd9c81506e91a7358de050a0c

Best regards,
-- 
Daniel Gomez <da.gomez@samsung.com>


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2025-08-26 13:30 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-25 20:54 [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 1/8] playbooks: ansible-lint fix deprecated-local-action Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 2/8] playbooks: ansible-lint fix fqcn Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 3/8] playbooks: ansible-lint fix jinja Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 4/8] playbooks: ansible-lint fix key-order Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 5/8] playbooks: ansible-lint fix name Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 6/8] playbooks: ansible-lint fix no-free-form Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 7/8] playbooks: ansible-lint fix command-instead-of-shell Daniel Gomez
2025-08-25 20:54 ` [PATCH RFT 8/8] playbooks: ansible-lint fix jinja Daniel Gomez
2025-08-26 12:20 ` [PATCH RFT 0/8] Bisectable Ansible-Lint Fixes Daniel Gomez
2025-08-26 13:30 ` Daniel Gomez

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).