--- # Copyright (c) Ansible Project # GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt) # SPDX-License-Identifier: GPL-3.0-or-later - name: install passlib ansible.builtin.pip: name: passlib notify: remove passlib - name: add bob (check mode) community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob password: c00lbob check_mode: true register: add_bob_check - name: add bob community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob password: c00lbob register: add_bob - name: add bob (idempotency) community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob password: c00lbob register: add_bob_idempot - name: add bob new password community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob password: SUPERsecret register: add_bob_newpw - name: add bob new password (idempotency) community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob password: SUPERsecret register: add_bob_newpw_idempot - name: test add bob assertions ansible.builtin.assert: that: - add_bob_check is changed - add_bob is changed - add_bob_idempot is not changed - add_bob_newpw is changed - add_bob_newpw_idempot is not changed - name: remove bob (check mode) community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob state: absent check_mode: true register: del_bob_check - name: remove bob community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob state: absent register: del_bob - name: remove bob (idempotency) community.general.htpasswd: path: "{{ htpasswd_path }}" name: bob state: absent register: del_bob_idempot - name: test remove bob assertions ansible.builtin.assert: that: - del_bob_check is changed - del_bob is changed - del_bob_idempot is not changed