--- - name: Prepare cluster test environment hosts: all become: true gather_facts: false tasks: - name: Wait for systemd to start ansible.builtin.command: systemctl is-system-running register: systemd_running until: systemd_running.stdout in ['running', 'degraded'] retries: 20 delay: 3 changed_when: false failed_when: false - name: Install Python3 ansible.builtin.raw: apt-get update && apt-get install -y python3 changed_when: true - name: Create k3s directories ansible.builtin.file: path: "{{ item }}" state: directory mode: "0755" loop: - /etc/kubernetes/k3s - /var/lib/kubernetes/k3s/server - /var/lib/kubernetes/k3s/agent - name: Mock k3s binary (simulates pre-installed K3s) ansible.builtin.copy: content: "#!/bin/bash\necho 'k3s mock'; exit 0\n" dest: /usr/local/bin/k3s mode: "0755" - name: Mock k3s node-token (masters only) ansible.builtin.copy: content: "K10::server:molecule-test-node-token\n" dest: /var/lib/kubernetes/k3s/server/node-token mode: "0600" when: inventory_hostname in groups['k3s_master']