1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
# $DATE is host time, which we force set on the target machine. # Allows downloading stuff without TLS errors - name: Pacman keyring + Python installation delegate_to: localhost ansible.builtin.shell: | DATE=$(date "+%F %T") expect <<EOD set timeout 600 spawn sshpass -p alarm ssh \ -o UserKnownHostsFile=/dev/null \ -o StrictHostKeyChecking=no \ -o PubkeyAuthentication=false \ alarm@{{ ansible_host }} expect "$ " send "su\r" expect "Password: " send "root\r" expect "alarm alarm]# " send -- "date --set=\"$DATE\"\; " send -- "pacman-key --init\; " send -- "pacman-key --populate archlinuxarm\; " send -- "pacman -q --noconfirm -Sy python\r" expect "alarm alarm]# " interact EOD register: cmd_reg - debug: msg="{{ cmd_reg.stdout }}"