update state

This commit is contained in:
DerLinkman
2026-02-20 22:19:57 +01:00
parent 0ef603638c
commit ffc1a6a8a5
8 changed files with 63 additions and 9 deletions
View File
@@ -0,0 +1,15 @@
---
- name: Create admin user
user:
name: admin
groups: sudo
shell: /bin/bash
createhome: yes
state: present
- name: Set sudo privileges for admin user
lineinfile:
path: /etc/sudoers.d/10-admin
line: "admin ALL=(ALL) NOPASSWD:ALL"
validate: 'visudo -cf %s'
state: present
+6
View File
@@ -0,0 +1,6 @@
---
- name: Install sudo
apt:
name: sudo
state: present
become: yes
+2 -2
View File
@@ -3,7 +3,7 @@ os_update_auto_upgrade: true
os_also_update_mirror: false
os_update_mirrors:
# Role needs two mirros to use for the sources.list.j2 Template
- "http://mirror.tinc.gmbh/debian" # Enter a main mirror here (not security)
- "http://mirror.tinc.gmbh/debian-security" # Enter a security mirror here
- "http://deb.debian.org/debian" # Enter a main mirror here (not security)
- "http://security.debian.org/debian-security" # Enter a security mirror here
os_update_major_version: false # Can either be true or false | To toggle if systems need to be upgraded to newer codename
os_update_version_codename: "{{ ansible_distribution_release }}" # KEEP UNTOUCHED!! | Used for jinja2 Template fill in as it determines the current codename of system where ansible is run on
@@ -13,13 +13,23 @@
vars:
os_update_version_codename: "{{ new_version_codename }}" # Variable gets passed by main.yml task
- name: Update additional repositories in /etc/apt/sources.list.d
- name: Update additional repositories in /etc/apt/sources.list.d (deb822 format)
replace:
path: "{{ item }}"
regexp: '^(Suites:.*\s)({{ os_update_version_codename }})(\s|$)'
replace: '\1{{ new_version_codename }}\3'
loop: "{{ lookup('ansible.builtin.fileglob', '/etc/apt/sources.list.d/*.sources') }}"
when: item | file
ignore_errors: true
- name: Update additional repositories in /etc/apt/sources.list.d (old format fallback)
lineinfile:
path: "{{ item }}"
regexp: '^(deb .* )({{ os_update_version_codename }})'
line: '\1{{ new_version_codename }}'
replace: '\1{{ new_version_codename }}'
loop: "{{ lookup('ansible.builtin.fileglob', '/etc/apt/sources.list.d/*.list') }}"
when: item | file
ignore_errors: true
- name: Update apt cache
apt:
@@ -5,6 +5,10 @@
remote_src: yes
force: yes
- name: Remove existing debian.sources file from LXC image
file:
path: /etc/apt/sources.list.d/debian.sources
state: absent
- name: Update sources.list with new mirrors
template:
+5 -1
View File
@@ -9,6 +9,7 @@
shell: |
dpkg -l | grep -E '^ii' | grep 'linux-image-[0-9]' | awk '{print $2}' | sort | tail -n 1
register: latest_kernel
when: ansible_virtualization_type != 'lxc'
- name: Check if running kernel matches the latest installed kernel
shell: |
@@ -16,8 +17,11 @@
register: kernel_match
changed_when: false
ignore_errors: true
when: ansible_virtualization_type != 'lxc'
- name: Mark reboot required if a new kernel is installed
set_fact:
reboot_required: "yes"
when: kernel_match.stdout == "0"
when:
- ansible_virtualization_type != 'lxc'
- kernel_match.stdout == "0"
+19 -4
View File
@@ -1,5 +1,20 @@
# {{ ansible_managed }}
deb {{ os_update_mirrors[0] }} {{ os_update_version_codename }} main contrib non-free non-free-firmware
deb {{ os_update_mirrors[0] }} {{ os_update_version_codename }}-updates main contrib non-free non-free-firmware
deb {{ os_update_mirrors[0] }} {{ os_update_version_codename }}-backports main contrib non-free non-free-firmware
deb {{ os_update_mirrors[1] }} {{ os_update_version_codename }}-security main contrib non-free non-free-firmware
Types: deb
URIs: {{ os_update_mirrors[0] }}
Suites: {{ os_update_version_codename }}
Components: main contrib non-free non-free-firmware
Types: deb
URIs: {{ os_update_mirrors[0] }}
Suites: {{ os_update_version_codename }}-updates
Components: main contrib non-free non-free-firmware
Types: deb
URIs: {{ os_update_mirrors[0] }}
Suites: {{ os_update_version_codename }}-backports
Components: main contrib non-free non-free-firmware
Types: deb
URIs: {{ os_update_mirrors[1] }}
Suites: {{ os_update_version_codename }}-security
Components: main contrib non-free non-free-firmware