ipagroup: Fix changed flag, new test cases

The changed flag returned by ipagroup calls have not been correct. This
change fixes this. Addtitionally new test cases have been added to make
sure that the changed flag is correct.
This commit is contained in:
Thomas Woerner
2019-10-30 16:22:27 +01:00
parent 6e6e193ab2
commit ff9ce6b86a
2 changed files with 179 additions and 1 deletions

View File

@@ -378,7 +378,10 @@ def main():
try:
result = api_command(ansible_module, command, to_text(name),
args)
if "completed" in result and result["completed"] > 0:
if "completed" in result:
if result["completed"] > 0:
changed = True
else:
changed = True
except Exception as e:
ansible_module.fail_json(msg="%s: %s: %s" % (command, name,

175
tests/group/test_group.yml Normal file
View File

@@ -0,0 +1,175 @@
---
- name: Tests
hosts: ipaserver
become: true
gather_facts: false
tasks:
- name: Ensure users user1, user2 and user3 are absent
ipauser:
ipaadmin_password: MyPassword123
name: user1,user2,user3
state: absent
- name: Ensure group group3, group2 and group1 are absent
ipagroup:
ipaadmin_password: MyPassword123
name: group3,group2,group1
state: absent
- name: Ensure users user1..user3 are present
ipauser:
ipaadmin_password: MyPassword123
users:
- name: user1
first: user1
last: Last
- name: user2
first: user2
last: Last
- name: user3
first: user3
last: Last
register: result
failed_when: not result.changed
- name: Ensure group1 is present
ipagroup:
ipaadmin_password: MyPassword123
name: group1
register: result
failed_when: not result.changed
- name: Ensure group1 is present again
ipagroup:
ipaadmin_password: MyPassword123
name: group1
register: result
failed_when: result.changed
- name: Ensure group2 is present
ipagroup:
ipaadmin_password: MyPassword123
name: group2
register: result
failed_when: not result.changed
- name: Ensure group2 is present again
ipagroup:
ipaadmin_password: MyPassword123
name: group2
register: result
failed_when: result.changed
- name: Ensure group3 is present
ipagroup:
ipaadmin_password: MyPassword123
name: group3
register: result
failed_when: not result.changed
- name: Ensure group3 is present again
ipagroup:
ipaadmin_password: MyPassword123
name: group3
register: result
failed_when: result.changed
- name: Ensure groups group2 and group3 are present in group group1
ipagroup:
ipaadmin_password: MyPassword123
name: group1
group:
- group2
- group3
action: member
register: result
failed_when: not result.changed
- name: Ensure groups group2 and group3 are present in group group1 again
ipagroup:
ipaadmin_password: MyPassword123
name: group1
group:
- group2
- group3
action: member
register: result
failed_when: result.changed
- name: Ensure group3 ia present in group group1
ipagroup:
ipaadmin_password: MyPassword123
name: group1
group:
- group3
action: member
register: result
failed_when: result.changed
- name: Ensure users user1, user2 and user3 are present in group group1
ipagroup:
ipaadmin_password: MyPassword123
name: group1
user:
- user1
- user2
- user3
action: member
register: result
failed_when: not result.changed
- name: Ensure users user1, user2 and user3 are present in group group1 again
ipagroup:
ipaadmin_password: MyPassword123
name: group1
user:
- user1
- user2
- user3
action: member
register: result
failed_when: result.changed
#- ipagroup:
# ipaadmin_password: MyPassword123
# name: group1
# user:
# - user7
# action: member
- name: Ensure user user7 is absent in group group1
ipagroup:
ipaadmin_password: MyPassword123
name: group1
user:
- user7
action: member
state: absent
register: result
failed_when: result.changed
- name: Ensure group group4 is absent
ipagroup:
ipaadmin_password: MyPassword123
name: group4
state: absent
register: result
failed_when: result.changed
- name: Ensure group group3, group2 and group1 are absent
ipagroup:
ipaadmin_password: MyPassword123
name: group3,group2,group1
state: absent
register: result
failed_when: not result.changed
- name: Ensure users user1, user2 and user3 are absent
ipauser:
ipaadmin_password: MyPassword123
name: user1,user2,user3
state: absent
register: result
failed_when: not result.changed