--- - name: Set hostname on newly provisioned machine hosts: all become: true gather_facts: false tasks: - name: Set the hostname ansible.builtin.hostname: name: "{{ new_hostname }}" - name: Update /etc/hosts with new hostname ansible.builtin.lineinfile: path: /etc/hosts regexp: '^127\.0\.1\.1' line: "127.0.1.1 {{ new_hostname }}" state: present - name: Restart systemd-hostnamed to apply changes ansible.builtin.systemd: name: systemd-hostnamed state: restarted ignore_errors: true - name: Display new hostname ansible.builtin.debug: msg: "Hostname set to {{ new_hostname }}"