From 79d360b2bc814bbcf177b6a91f1750848fed8a9a Mon Sep 17 00:00:00 2001 From: Christoph Date: Mon, 13 Jul 2026 17:07:30 +0200 Subject: [PATCH] Refactor apt-migrate-to-trixie.yml: clean up comments, improve task definitions, and ensure proper permissions for backup files --- apt-migrate-to-trixie.yml | 28 ++++++++++++++++------------ 1 file changed, 16 insertions(+), 12 deletions(-) diff --git a/apt-migrate-to-trixie.yml b/apt-migrate-to-trixie.yml index 5e44bf4..52e3a8f 100644 --- a/apt-migrate-to-trixie.yml +++ b/apt-migrate-to-trixie.yml @@ -1,5 +1,4 @@ --- - # --- # deb822 ist das neue Konfigurationsformats für APT-Quellen (Repositories). # Es basiert auf der Debian Control Syntax nach RFC 822 – daher der Name @@ -15,33 +14,32 @@ debian_mirror: "http://deb.debian.org/debian" security_mirror: "http://security.debian.org/debian-security" components: "main contrib non-free non-free-firmware" - enable_backports: true # auf false setzen, wenn du keine Backports willst - pin_backports_low: true # Backports nur auf Anfrage + enable_backports: true # auf false setzen, wenn du keine Backports willst + pin_backports_low: true # Backports nur auf Anfrage # Nur manuelle Installation/Upgrade aus Backports: # backports_pin_priority: 100 # # Automatische Updates für bereits installierte Backports-Pakete. # backports_pin_priority: 500 (>= 500) # - backports_pin_priority: 100 # 100 = nie automatisch bevorzugen + backports_pin_priority: 100 # 100 = nie automatisch bevorzugen apt_cache_valid_time: 3600 - # Für offizielle Debian-Repos brauchst es kein Signed-By, weil debian-archive-keyring + # Für offizielle Debian-Repos brauchst es kein Signed-By, weil debian-archive-keyring # ohnehin systemweit vertrauenswürdig ist. # - use_signed_by: true # oder false, wenn du Option A willst - # Wenn Signed-By explizit gesetzt werden soll, dann nutze den Keyring-Pfad und stelle sicher, + use_signed_by: true # oder false, wenn du Option A willst + # Wenn Signed-By explizit gesetzt werden soll, dann nutze den Keyring-Pfad und stelle sicher, # dass das Paket installiert ist. signed_by_keyring: "/usr/share/keyrings/debian-archive-keyring.gpg" pre_tasks: - name: Sicherstellen, dass wir Debian sind - assert: + ansible.builtin.assert: that: - ansible_facts['os_family'] == "Debian" fail_msg: "Dieses Playbook ist nur für Debian geeignet." tasks: - - name: Keyring für Debian-Archive sicherstellen (falls Signed-By genutzt) ansible.builtin.apt: name: debian-archive-keyring @@ -54,7 +52,13 @@ dest: /etc/apt/sources.list.before-trixie remote_src: true force: false - ignore_errors: true + owner: root + group: root + mode: "0644" + failed_when: + - backup_result.failed + - "'No such file or directory' not in backup_result.msg" + register: backup_result - name: Alte /etc/apt/sources.list deaktivieren (leere Kommentar-Datei) ansible.builtin.copy: @@ -90,6 +94,7 @@ group: root mode: "0644" when: enable_backports + - name: Backports-Repo entfernen wenn deaktiviert ansible.builtin.file: path: /etc/apt/sources.list.d/backports.sources @@ -107,7 +112,7 @@ - name: APT-Cache aktualisieren ansible.builtin.apt: - update_cache: yes + update_cache: true cache_valid_time: "{{ apt_cache_valid_time }}" - name: Verifikation - zeigen, ob Suites auf trixie stehen @@ -118,4 +123,3 @@ - name: Ausgabe anzeigen (nur Info) ansible.builtin.debug: msg: "{{ apt_policy.stdout.split('\n') | select('search', 'trixie') | list | join('\n') }}" -