Я пытаюсь разработать playbook, который позволяет root легко перезагружать пароль, запустив playbook в любое время. Но он небрежно пропускает pretask, который выполняет валидацию.Почему Ansible pre-task всегда пропускает?
---
- hosts: localhost
remote_user: root
become: yes
become_method: sudo
vars_prompt:
- name: "root_password"
prompt: "Enter your new root password"
private: no
when: root_password is not defined
pre_tasks:
- name: fail the play if the user missed out root_password
fail: msg="root password should not be empty"
when: root_password is not defined
tasks:
- name: Change root password
user: name=root update_password=always password={{ root_password }}
ThankYou @techraf Вы всегда был спасителем! –
Но я узнал, что он никогда не сбрасывает пароль –
@user_dev Если вы работаете в системе, отличной от macOS, вам сначала нужно зашифровать пароль. См. [Руководство] (http://docs.ansible.com/ansible/user_module.html). – techraf