From 2d45a9b60a008581672af7a901258f488d3cde16 Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Mon, 11 Aug 2025 00:32:07 +0200 Subject: Refactor: move the timezone into its own role --- roles/settings/defaults/main.yml | 3 --- roles/settings/tasks/main.yml | 13 ------------- roles/timezone/README.md | 7 +++++++ roles/timezone/defaults/main.yml | 3 +++ roles/timezone/meta/argument_specs.yml | 8 ++++++++ roles/timezone/meta/main.yml | 19 +++++++++++++++++++ roles/timezone/tasks/main.yml | 18 ++++++++++++++++++ 7 files changed, 55 insertions(+), 16 deletions(-) create mode 100644 roles/timezone/README.md create mode 100644 roles/timezone/defaults/main.yml create mode 100644 roles/timezone/meta/argument_specs.yml create mode 100644 roles/timezone/meta/main.yml create mode 100644 roles/timezone/tasks/main.yml (limited to 'roles') diff --git a/roles/settings/defaults/main.yml b/roles/settings/defaults/main.yml index 683eeb55..a7001ab0 100644 --- a/roles/settings/defaults/main.yml +++ b/roles/settings/defaults/main.yml @@ -1,7 +1,4 @@ --- -# Timezone -settings_timezone: "CET" - # Password policy # https://linux.die.net/man/8/pam_pwquality settings_pw_policy_enabled: true diff --git a/roles/settings/tasks/main.yml b/roles/settings/tasks/main.yml index 1c545d41..32fe9178 100644 --- a/roles/settings/tasks/main.yml +++ b/roles/settings/tasks/main.yml @@ -9,19 +9,6 @@ state: "present" with_items: - "{{ settings_pw_quality }}" - - "tzdata" - -- name: "Link localtime" - become: true - ansible.builtin.file: - src: "/usr/share/zoneinfo/{{ settings_timezone }}" - dest: "/etc/localtime" - state: "link" - -- name: "Update timezone" - become: true - community.general.timezone: - name: "{{ settings_timezone }}" - name: "Configure archlinux password policy" become: true diff --git a/roles/timezone/README.md b/roles/timezone/README.md new file mode 100644 index 00000000..4ca57c9e --- /dev/null +++ b/roles/timezone/README.md @@ -0,0 +1,7 @@ +# Ansible Role: timezone + +This role configure the machine timezone + +## Role Variables + +- `timezone` the timezone default `CET` diff --git a/roles/timezone/defaults/main.yml b/roles/timezone/defaults/main.yml new file mode 100644 index 00000000..5d77e712 --- /dev/null +++ b/roles/timezone/defaults/main.yml @@ -0,0 +1,3 @@ +--- +# noqa var-naming[no-role-prefix] +timezone: "CET" diff --git a/roles/timezone/meta/argument_specs.yml b/roles/timezone/meta/argument_specs.yml new file mode 100644 index 00000000..c4be9397 --- /dev/null +++ b/roles/timezone/meta/argument_specs.yml @@ -0,0 +1,8 @@ +--- +argument_specs: + main: + options: + timezone: + type: "str" + description: "timezone configuration to use" + default: "CET" diff --git a/roles/timezone/meta/main.yml b/roles/timezone/meta/main.yml new file mode 100644 index 00000000..e8012679 --- /dev/null +++ b/roles/timezone/meta/main.yml @@ -0,0 +1,19 @@ +--- +dependencies: [] +galaxy_info: + role_name: timezone + author: a14m + description: "Configure the linux distro timezone" + company: "kartoffeln.work GmbH." + license: "license MIT" + min_ansible_version: "2.18" + platforms: + - name: ArchLinux + versions: + - all + - name: Ubuntu + versions: + - noble + - name: Debian + versions: + - bookworm diff --git a/roles/timezone/tasks/main.yml b/roles/timezone/tasks/main.yml new file mode 100644 index 00000000..4be677cf --- /dev/null +++ b/roles/timezone/tasks/main.yml @@ -0,0 +1,18 @@ +--- +- name: "Ensure timezone package is installed" + become: true + ansible.builtin.package: + name: "tzdata" + state: "present" + +- name: "Link localtime" + become: true + ansible.builtin.file: + src: "/usr/share/zoneinfo/{{ timezone }}" + dest: "/etc/localtime" + state: "link" + +- name: "Update timezone" + become: true + community.general.timezone: + name: "{{ timezone }}" -- cgit v1.2.3