mirror of
https://github.com/freeipa/ansible-freeipa.git
synced 2026-05-13 13:02:00 +00:00
Add FreeIPA version as Ansible facts for testing.
Some attributes are not present in all supported versions of FreeIPA, and this might cause tests to fail due to unsupported versions. This patch add the means to test if a test can be executed based on the target host FreeIPA version.
This commit is contained in:
@@ -5,215 +5,220 @@
|
||||
gather_facts: false
|
||||
|
||||
tasks:
|
||||
- name: Ensure host-group testhostgroup is absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- testhostgroup
|
||||
state: absent
|
||||
- include_tasks: ../env_freeipa_facts.yml
|
||||
|
||||
- name: Ensure user manangeruser1 and manageruser2 is absent
|
||||
ipauser:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: manageruser1,manageruser2,unknown_user
|
||||
state: absent
|
||||
- name: Tests requiring IPA version 4.8.4+
|
||||
block:
|
||||
- name: Ensure host-group testhostgroup is absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- testhostgroup
|
||||
state: absent
|
||||
|
||||
- name: Ensure group managergroup1 and managergroup2 are absent
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup1,managergroup2
|
||||
state: absent
|
||||
- name: Ensure user manangeruser1 and manageruser2 is absent
|
||||
ipauser:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: manageruser1,manageruser2,unknown_user
|
||||
state: absent
|
||||
|
||||
- name: Ensure host-group testhostgroup is present
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- testhostgroup
|
||||
- name: Ensure group managergroup1 and managergroup2 are absent
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup1,managergroup2
|
||||
state: absent
|
||||
|
||||
- name: Ensure user manageruser1 and manageruser2 are present
|
||||
ipauser:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
users:
|
||||
- name: manageruser1
|
||||
first: manageruser1
|
||||
last: Last1
|
||||
- name: manageruser2
|
||||
first: manageruser2
|
||||
last: Last2
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure host-group testhostgroup is present
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- testhostgroup
|
||||
|
||||
- name: Ensure managergroup1 is present
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup1
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure user manageruser1 and manageruser2 are present
|
||||
ipauser:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
users:
|
||||
- name: manageruser1
|
||||
first: manageruser1
|
||||
last: Last1
|
||||
- name: manageruser2
|
||||
first: manageruser2
|
||||
last: Last2
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure managergroup2 is present
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup2
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure managergroup1 is present
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup1
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager user1 is present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure managergroup2 is present
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup2
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager user1 is present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Ensure membermanager user1 is present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager group1 is present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_group: managergroup1
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure membermanager user1 is present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Ensure membermanager group1 is present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_group: managergroup1
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Ensure membermanager group1 is present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_group: managergroup1
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager user2 and group2 members are present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser2
|
||||
membermanager_group: managergroup2
|
||||
action: member
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure membermanager group1 is present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_group: managergroup1
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Ensure membermanager user2 and group2 members are present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser2
|
||||
membermanager_group: managergroup2
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Ensure membermanager user2 and group2 members are present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser2
|
||||
membermanager_group: managergroup2
|
||||
action: member
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager user and group members are present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1,manageruser2
|
||||
membermanager_group: managergroup1,managergroup2
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Ensure membermanager user2 and group2 members are present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser2
|
||||
membermanager_group: managergroup2
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Ensure membermanager user1 and group1 members are absent for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure membermanager user and group members are present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1,manageruser2
|
||||
membermanager_group: managergroup1,managergroup2
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Ensure membermanager user1 and group1 members are absent for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Ensure membermanager user1 and group1 members are absent for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager user1 and group1 members are absent for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
|
||||
- name: Ensure membermanager user1 and group1 members are present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure membermanager user1 and group1 members are present for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager user1 and group1 members are present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Ensure membermanager user1 and group1 members are present for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1
|
||||
membermanager_group: managergroup1
|
||||
action: member
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Ensure membermanager user and group members are absent for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1,manageruser2
|
||||
membermanager_group: managergroup1,managergroup2
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure membermanager user and group members are absent for testhostgroup
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1,manageruser2
|
||||
membermanager_group: managergroup1,managergroup2
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure membermanager user and group members are absent for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1,manageruser2
|
||||
membermanager_group: managergroup1,managergroup2
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Ensure membermanager user and group members are absent for testhostgroup again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: testhostgroup
|
||||
membermanager_user: manageruser1,manageruser2
|
||||
membermanager_group: managergroup1,managergroup2
|
||||
action: member
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Ensure user manangeruser1 and manageruser2 is absent
|
||||
ipauser:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: manageruser1,manageruser2
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure user manangeruser1 and manageruser2 is absent
|
||||
ipauser:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: manageruser1,manageruser2
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure group managergroup1 and managergroup2 are absent
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup1,managergroup2
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure group managergroup1 and managergroup2 are absent
|
||||
ipagroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: managergroup1,managergroup2
|
||||
state: absent
|
||||
register: result
|
||||
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 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
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- testhostgroup
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure host-group testhostgroup is absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- testhostgroup
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
when: ipa_version is version('4.8.4', '>=')
|
||||
|
||||
@@ -5,101 +5,107 @@
|
||||
gather_facts: false
|
||||
|
||||
tasks:
|
||||
- name: Ensure testing host-group are absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- databases
|
||||
- datalake
|
||||
- inexistenthostgroup
|
||||
state: absent
|
||||
- include_tasks: ../env_freeipa_facts.yml
|
||||
|
||||
- name: Ensure host-group databases is present
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
state: present
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Tests requiring IPA version 4.8.7+
|
||||
block:
|
||||
- name: Ensure testing host-group are absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- databases
|
||||
- datalake
|
||||
- inexistenthostgroup
|
||||
state: absent
|
||||
|
||||
- name: Rename host-group from `databases` to `datalake`
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
- name: Ensure host-group databases is present
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
state: present
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Ensure host-group database was already absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: database
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Rename host-group from `databases` to `datalake`
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: not result.changed
|
||||
|
||||
- name: Rename host-group from `databases` to `datalake`, again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: result.changed or result.failed
|
||||
- name: Ensure host-group database was already absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: database
|
||||
state: absent
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Rename host-group with same name.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: datalake
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
- name: Rename host-group from `databases` to `datalake`, again
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: result.changed or result.failed
|
||||
|
||||
- name: Ensure testing hostgroups do not exist.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: inexistenthostgroup,alsoinexistent
|
||||
state: absent
|
||||
- name: Rename host-group with same name.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: datalake
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: result.changed
|
||||
|
||||
- name: Rename inexistent host-group to an existing one.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: inexistenthostgroup
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: result.changed or result.failed
|
||||
- name: Ensure testing hostgroups do not exist.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: inexistenthostgroup,alsoinexistent
|
||||
state: absent
|
||||
|
||||
- name: Rename inexistent host-group to a non-existing one.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: inexistenthostgroup
|
||||
rename: alsoinexistent
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: not result.failed or "Attribute `rename` can not be used, unless hostgroup exists." not in result.msg
|
||||
- name: Rename inexistent host-group to an existing one.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: inexistenthostgroup
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: result.changed or result.failed
|
||||
|
||||
- name: Ensure host-group databases is present
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
state: present
|
||||
- name: Rename inexistent host-group to a non-existing one.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: inexistenthostgroup
|
||||
rename: alsoinexistent
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: not result.failed or "Attribute `rename` can not be used, unless hostgroup exists." not in result.msg
|
||||
|
||||
- name: Rename host-group to an existing one.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: not result.failed or "This entry already exists" not in result.msg
|
||||
- name: Ensure host-group databases is present
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
state: present
|
||||
|
||||
- name: Ensure host-group databases and datalake are absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- databases
|
||||
- datalake
|
||||
state: absent
|
||||
- name: Rename host-group to an existing one.
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name: databases
|
||||
rename: datalake
|
||||
state: renamed
|
||||
register: result
|
||||
failed_when: not result.failed or "This entry already exists" not in result.msg
|
||||
|
||||
- name: Ensure host-group databases and datalake are absent
|
||||
ipahostgroup:
|
||||
ipaadmin_password: SomeADMINpassword
|
||||
name:
|
||||
- databases
|
||||
- datalake
|
||||
state: absent
|
||||
|
||||
when: ipa_version is version('4.8.7', '>=')
|
||||
|
||||
Reference in New Issue
Block a user