--- # Wird per ansible-pull auf jedem Laptop lokal ausgefuehrt (via schul-pull.sh). # Aenderungen hier verteilen sich beim naechsten Timer-Lauf auf alle Laptops. - name: Schul-Laptop konfigurieren hosts: localhost connection: local become: true tasks: - name: APT-Cache aktualisieren apt: update_cache: yes cache_valid_time: 3600 - name: System-Updates installieren (safe upgrade) apt: upgrade: safe - name: Standard-Software installieren apt: name: "{{ schul_pakete }}" state: present # --- Selbstverwaltung: haelt die Pull-Mechanik auf allen Laptops aktuell --- - name: Pull-Script installieren copy: src: files/schul-pull.sh dest: /usr/local/bin/schul-pull.sh mode: "0755" - name: systemd-Units fuer ansible-pull installieren copy: src: "files/{{ item }}" dest: "/etc/systemd/system/{{ item }}" mode: "0644" loop: - ansible-pull.service - ansible-pull.timer register: units - name: systemd neu laden, falls Units geaendert systemd: daemon_reload: yes when: units.changed - name: ansible-pull.timer aktivieren systemd: name: ansible-pull.timer enabled: yes state: started # --- Status melden --- - name: Pruefen ob ein Neustart noetig ist stat: path: /var/run/reboot-required register: reboot_required - name: Neustart-Hinweis ins Log schreiben debug: msg: "ACHTUNG: Neustart erforderlich (wird nicht automatisch ausgefuehrt)." when: reboot_required.stat.exists