feat: decom os support checks

This commit is contained in:
Simon Cornet 2025-07-11 19:07:24 +02:00
commit 8f396d90b6
2 changed files with 22 additions and 121 deletions

View file

@ -1,44 +1,13 @@
---
# import ossupport and load variables
- name: "import ossupport and load variables"
tags:
- "apt"
- "apt-cleanup"
- "cron"
- "environment-file"
- "hostname"
- "firewall"
- "journald"
- "locale"
- "lldp"
- "lxd"
- "motd"
- "ntp"
- "telemetry"
- "snap"
- "sshd"
- "sysctl"
- "systemctl"
- "syslog"
- "timezone"
- "usermanagement"
block:
# check os support
- name: "check for os support"
ansible.builtin.import_tasks: "ossupport.yaml"
# load os variables
- name: "include os specific vars"
# load os variables
- name: "include os specific vars"
ansible.builtin.include_vars: "{{ ansible_os_family }}.yaml"
when: "os_support"
tags: "always"
# set hostname
- name: "set hostname"
ansible.builtin.import_tasks: "hostname.yaml"
when: "os_support"
tags: "hostname"
# flush handler
@ -48,7 +17,6 @@
# set locale
- name: "set locale"
ansible.builtin.import_tasks: "locale.yaml"
when: "os_support"
tags: "locale"
# flush handler
@ -58,7 +26,6 @@
# environment
- name: "environment"
ansible.builtin.import_tasks: "environment.yaml"
when: "os_support"
tags: "environment-file"
# flush handler
@ -68,13 +35,11 @@
# motd
- name: "motd"
ansible.builtin.import_tasks: "motd.yaml"
when: "os_support"
tags: "motd"
# cron jobs
- name: "cron jobs"
ansible.builtin.import_tasks: "cron.yaml"
when: "os_support"
tags: "cron"
# flush handler
@ -84,15 +49,12 @@
# swap
- name: "swap"
ansible.builtin.import_tasks: "swap.yaml"
when:
- "os_support"
- 'type == "vm"'
when: 'type == "vm"'
tags: "swap"
# apt
- name: "apt"
ansible.builtin.import_tasks: "apt/sources.yaml"
when: "os_support"
tags: "apt"
# flush handler
@ -101,23 +63,19 @@
- name: "apt - packages"
ansible.builtin.import_tasks: "apt/packages.yaml"
when: "os_support"
tags: "apt"
- name: "apt - config"
ansible.builtin.import_tasks: "apt/config.yaml"
when: "os_support"
tags: "apt"
- name: "apt - cleanup"
ansible.builtin.import_tasks: "apt/cleanup.yaml"
when: "os_support"
tags: "apt-cleanup"
# telemetry
- name: "telemetry"
ansible.builtin.import_tasks: "telemetry.yaml"
when: "os_support"
tags: "telemetry"
# service
@ -126,9 +84,7 @@
loop: "{{ service }}"
loop_control:
loop_var: "__service"
when:
- "os_support"
- "service is defined"
when: "service is defined"
# flush handler
- name: "flush handlers"
@ -137,9 +93,7 @@
# chrony
- name: "ntp"
ansible.builtin.import_tasks: "ntp.yaml"
when:
- "os_support"
- 'type == "vm" or type == "hw"'
when: 'type == "vm" or type == "hw"'
tags: "ntp"
# flush handler
@ -149,22 +103,17 @@
# snap
- name: "snap - daemon"
ansible.builtin.import_tasks: "snap/snap_daemon.yaml"
when: "os_support"
tags: "snap"
- name: "snap - package"
ansible.builtin.import_tasks: "snap/snap_package.yaml"
when:
- "os_support"
- "snap_package is defined"
when: "snap_package is defined"
tags: "snap"
# llpd
- name: "lldpd"
ansible.builtin.import_tasks: "lldpd.yaml"
when:
- "os_support"
- 'type == "vm" or type == "hw"'
when: 'type == "vm" or type == "hw"'
tags: "lldp"
# flush handler
@ -174,9 +123,7 @@
# lxd
- name: "lxd"
ansible.builtin.import_tasks: "lxd.yaml"
when:
- "os_support"
- 'type == "vm"'
when: 'type == "vm"'
tags: "lxd"
# flush handler
@ -189,9 +136,7 @@
loop: "{{ sysctl }}"
loop_control:
loop_var: "__sysctl"
when:
- "os_support"
- 'type == "vm" or type == "hw"'
when: 'type == "vm" or type == "hw"'
tags: "sysctl"
# systemctl
@ -200,24 +145,18 @@
loop: "{{ systemctl }}"
loop_control:
loop_var: "__systemctl"
when:
- "os_support"
- 'type == "vm"'
when: 'type == "vm"'
tags: "systemctl"
# syslog
- name: "syslog - install"
ansible.builtin.import_tasks: "syslog/install.yaml"
when:
- "os_support"
- "syslog_enable"
when: "syslog_enable"
tags: "syslog"
- name: "syslog - config"
ansible.builtin.import_tasks: "syslog/config.yaml"
when:
- "os_support"
- "syslog_enable"
when: "syslog_enable"
tags: "syslog"
# flush handler
@ -227,7 +166,6 @@
# journald
- name: "journald"
ansible.builtin.import_tasks: "journald.yaml"
when: "os_support"
tags: "journald"
# flush handler
@ -237,13 +175,11 @@
# timezone
- name: "timezone"
ansible.builtin.import_tasks: "timezone.yaml"
when: "os_support"
tags: "timezone"
# sshd
- name: "sshd"
ansible.builtin.import_tasks: "sshd.yaml"
when: "os_support"
tags: "sshd"
# flush handler
@ -256,15 +192,12 @@
loop: "{{ user }}"
loop_control:
loop_var: "__user"
when: "os_support"
tags: "usermanagement"
# firewall
- name: "firewall"
ansible.builtin.import_tasks: "firewall/firewall-general.yaml"
when:
- "os_support"
- "firewall_enabled"
when: "firewall_enabled"
tags: "firewall"
# firewall common rules
@ -274,8 +207,8 @@
loop_control:
loop_var: "__rule"
when:
- "os_support"
- "firewall_rules_common is defined and firewall_enabled"
- "firewall_rules_common is defined"
- "firewall_enabled"
tags: "firewall"
# firewall routed rules
@ -285,8 +218,8 @@
loop_control:
loop_var: "__rule"
when:
- "os_support"
- "firewall_rules_routed is defined and firewall_enabled"
- "firewall_rules_routed is defined"
- "firewall_enabled"
tags: "firewall"
# firewall host rules
@ -296,6 +229,6 @@
loop_control:
loop_var: "__rule"
when:
- "os_support"
- "firewall_rules is defined and firewall_enabled"
- "firewall_rules is defined"
- "firewall_enabled"
tags: "firewall"

View file

@ -1,32 +0,0 @@
---
# support debian 12
- name: "check for os support"
ansible.builtin.set_fact:
os_support: true
when:
- 'ansible_distribution == "Debian"'
- 'ansible_distribution_major_version == "12"'
# support ubuntu 22
- name: "check for os support"
ansible.builtin.set_fact:
os_support: true
when:
- 'ansible_distribution == "Ubuntu"'
- 'ansible_distribution_major_version == "22"'
# support ubuntu 24
- name: "check for os support"
ansible.builtin.set_fact:
os_support: true
when:
- 'ansible_distribution == "Ubuntu"'
- 'ansible_distribution_major_version == "24"'
# fail role when not supported
- name: "unsupported role"
ansible.builtin.fail:
msg: "This role not supported on this Operating System."
when:
- "os_support is not defined"