Merge pull request #309 from t-woerner/fix_membermanager_unknown_user_issue

ipa[host]group: Fix membermanager unknow user issue
This commit is contained in:
Rafael Guterres Jeffman
2020-06-29 10:50:12 -03:00
committed by GitHub
4 changed files with 36 additions and 18 deletions

View File

@@ -507,16 +507,15 @@ def main():
# All "already a member" and "not a member" failures in the # All "already a member" and "not a member" failures in the
# result are ignored. All others are reported. # result are ignored. All others are reported.
errors = [] errors = []
if "failed" in result and len(result["failed"]) > 0: for failed_item in result.get("failed", []):
for item in result["failed"]: failed = result["failed"][failed_item]
failed_item = result["failed"][item] for member_type in failed:
for member_type in failed_item: for member, failure in failed[member_type]:
for member, failure in failed_item[member_type]: if "already a member" in failure \
if "already a member" in failure \ or "not a member" in failure:
or "not a member" in failure: continue
continue errors.append("%s: %s %s: %s" % (
errors.append("%s: %s %s: %s" % ( command, member_type, member, failure))
command, member_type, member, failure))
if len(errors) > 0: if len(errors) > 0:
ansible_module.fail_json(msg=", ".join(errors)) ansible_module.fail_json(msg=", ".join(errors))

View File

@@ -423,14 +423,15 @@ def main():
# All "already a member" and "not a member" failures in the # All "already a member" and "not a member" failures in the
# result are ignored. All others are reported. # result are ignored. All others are reported.
errors = [] errors = []
if "failed" in result and "member" in result["failed"]: for failed_item in result.get("failed", []):
failed = result["failed"]["member"] failed = result["failed"][failed_item]
for member_type in failed: for member_type in failed:
for member, failure in failed[member_type]: for member, failure in failed[member_type]:
if "already a member" not in failure \ if "already a member" in failure \
and "not a member" not in failure: or "not a member" in failure:
errors.append("%s: %s %s: %s" % ( continue
command, member_type, member, failure)) errors.append("%s: %s %s: %s" % (
command, member_type, member, failure))
if len(errors) > 0: if len(errors) > 0:
ansible_module.fail_json(msg=", ".join(errors)) ansible_module.fail_json(msg=", ".join(errors))

View File

@@ -8,7 +8,7 @@
- name: Ensure user manangeruser1 and manageruser2 is absent - name: Ensure user manangeruser1 and manageruser2 is absent
ipauser: ipauser:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword
name: manageruser1,manageruser2 name: manageruser1,manageruser2,unknown_user
state: absent state: absent
- name: Ensure group testgroup, managergroup1 and managergroup2 are absent - name: Ensure group testgroup, managergroup1 and managergroup2 are absent
@@ -185,6 +185,15 @@
register: result register: result
failed_when: not result.changed failed_when: not result.changed
- name: Ensure unknown membermanager_user member failure
ipagroup:
ipaadmin_password: SomeADMINpassword
name: testgroup
membermanager_user: unknown_user
action: member
register: result
failed_when: result.changed or "no such entry" not in result.msg
- name: Ensure group testgroup, managergroup1 and managergroup2 are absent - name: Ensure group testgroup, managergroup1 and managergroup2 are absent
ipagroup: ipagroup:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword

View File

@@ -15,7 +15,7 @@
- name: Ensure user manangeruser1 and manageruser2 is absent - name: Ensure user manangeruser1 and manageruser2 is absent
ipauser: ipauser:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword
name: manageruser1,manageruser2 name: manageruser1,manageruser2,unknown_user
state: absent state: absent
- name: Ensure group managergroup1 and managergroup2 are absent - name: Ensure group managergroup1 and managergroup2 are absent
@@ -200,6 +200,15 @@
register: result register: result
failed_when: not result.changed failed_when: not result.changed
- name: Ensure unknown membermanager_user member failure
ipahostgroup:
ipaadmin_password: SomeADMINpassword
name: testhostgroup
membermanager_user: unknown_user
action: member
register: result
failed_when: result.changed or "no such entry" not in result.msg
- name: Ensure host-group testhostgroup is absent - name: Ensure host-group testhostgroup is absent
ipahostgroup: ipahostgroup:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword