diff --git a/plugins/modules/ipaservice.py b/plugins/modules/ipaservice.py index b0d253553c4388addb2efeea82e1bbaa823876bb..8bc390d1ecab26754a98d963a1c10dd6ca9b5f13 100644 --- a/plugins/modules/ipaservice.py +++ b/plugins/modules/ipaservice.py @@ -460,7 +460,7 @@ def main(): allow_retrieve_keytab_group = module_params_get( ansible_module, "allow_retrieve_keytab_group") allow_retrieve_keytab_host = module_params_get( - ansible_module, "allow_create_keytab_host") + ansible_module, "allow_retrieve_keytab_host") allow_retrieve_keytab_hostgroup = module_params_get( ansible_module, "allow_retrieve_keytab_hostgroup") delete_continue = module_params_get(ansible_module, "delete_continue") @@ -727,7 +727,7 @@ def main(): # Allow retrieve keytab if len(allow_retrieve_keytab_user_add) > 0 or \ len(allow_retrieve_keytab_group_add) > 0 or \ - len(allow_retrieve_keytab_hostgroup_add) > 0 or \ + len(allow_retrieve_keytab_host_add) > 0 or \ len(allow_retrieve_keytab_hostgroup_add) > 0: commands.append( [name, "service_allow_retrieve_keytab", diff --git a/tests/service/env_cleanup.yml b/tests/service/env_cleanup.yml new file mode 100644 index 0000000000000000000000000000000000000000..f96a75b9c38f31db1960941b7ec6a4f275e6cceb --- /dev/null +++ b/tests/service/env_cleanup.yml @@ -0,0 +1,68 @@ +--- +# Cleanup tasks for the service module tests. +- name: Ensure services are absent. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: + - "HTTP/{{ svc_fqdn }}" + - "HTTP/{{ nohost_fqdn }}" + - HTTP/svc.ihavenodns.info + - HTTP/no.idontexist.local + - "cifs/{{ host1_fqdn }}" + state: absent + +- name: Ensure host "{{ svc_fqdn }}" is absent + ipahost: + ipaadmin_password: SomeADMINpassword + name: "{{ svc_fqdn }}" + update_dns: yes + state: absent + +- name: Ensure host is absent + ipahost: + ipaadmin_password: SomeADMINpassword + name: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + - "{{ nohost_fqdn }}" + - svc.ihavenodns.info + update_dns: no + state: absent + +- name: Ensure testing users are absent. + ipauser: + ipaadmin_password: SomeADMINpassword + name: + - user01 + - user02 + state: absent + +- name: Ensure testing groups are absent. + ipagroup: + ipaadmin_password: SomeADMINpassword + name: + - group01 + - group02 + state: absent + +- name: Ensure testing hostgroup hostgroup01 is absent. + ipagroup: + ipaadmin_password: SomeADMINpassword + name: + - hostgroup01 + state: absent + +- name: Ensure testing hostgroup hostgroup02 is absent. + ipagroup: + ipaadmin_password: SomeADMINpassword + name: + - hostgroup02 + state: absent + +- name: Remove IP address for "nohost" host. + ipadnsrecord: + ipaadmin_password: SomeADMINpassword + zone_name: "{{ test_domain }}." + name: nohost + del_all: yes + state: absent diff --git a/tests/service/env_setup.yml b/tests/service/env_setup.yml new file mode 100644 index 0000000000000000000000000000000000000000..309cfc03c7bda68de7c930415d26d5533d3e50ca --- /dev/null +++ b/tests/service/env_setup.yml @@ -0,0 +1,73 @@ +# Setup environment for service module tests. +--- +- name: Setup variables and facts. + include_tasks: env_vars.yml + +# Cleanup before setup. +- name: Cleanup test environment. + include_tasks: env_cleanup.yml + +- name: Add IP address for "nohost" host. + ipadnsrecord: + ipaadmin_password: SomeADMINpassword + zone_name: "{{ test_domain }}." + name: nohost + a_ip_address: "{{ ipv4_prefix + '.100' }}" + +- name: Add hosts for tests. + ipahost: + ipaadmin_password: SomeADMINpassword + hosts: + - name: "{{ host1_fqdn }}" + ip_address: "{{ ipv4_prefix + '.101' }}" + - name: "{{ host2_fqdn }}" + ip_address: "{{ ipv4_prefix + '.102' }}" + - name: "{{ svc_fqdn }}" + ip_address: "{{ ipv4_prefix + '.201' }}" + - name: svc.ihavenodns.info + force: yes + update_dns: yes + +- name: Ensure testing user user01 is present. + ipauser: + ipaadmin_password: SomeADMINpassword + name: user01 + first: user01 + last: last + +- name: Ensure testing user user02 is present. + ipauser: + ipaadmin_password: SomeADMINpassword + name: user02 + first: user02 + last: last + +- name: Ensure testing group group01 is present. + ipagroup: + ipaadmin_password: SomeADMINpassword + name: group01 + +- name: Ensure testing group group02 is present. + ipagroup: + ipaadmin_password: SomeADMINpassword + name: group02 + +- name: Ensure testing hostgroup hostgroup01 is present. + ipahostgroup: + ipaadmin_password: SomeADMINpassword + name: hostgroup01 + +- name: Ensure testing hostgroup hostgroup02 is present. + ipahostgroup: + ipaadmin_password: SomeADMINpassword + name: hostgroup02 + +- name: Ensure services are absent. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: + - "HTTP/{{ svc_fqdn }}" + - "HTTP/{{ nohost_fqdn }}" + - HTTP/svc.ihavenodns.info + - HTTP/no.idontexist.info + state: absent diff --git a/tests/service/env_vars.yml b/tests/service/env_vars.yml new file mode 100644 index 0000000000000000000000000000000000000000..eb53c7a07f3b523a775a8d7ec2182bfdd70c597d --- /dev/null +++ b/tests/service/env_vars.yml @@ -0,0 +1,15 @@ +--- + - name: Get Domain from server name + set_fact: + test_domain: "{{ ansible_fqdn.split('.')[1:] | join('.') }}" + + - name: Set host1, host2 and svc hosts fqdn + set_fact: + host1_fqdn: "{{ 'host1.' + test_domain }}" + host2_fqdn: "{{ 'host2.' + test_domain }}" + svc_fqdn: "{{ 'svc.' + test_domain }}" + nohost_fqdn: "{{ 'nohost.' + test_domain }}" + + - name: Get IPv4 address prefix from server node + set_fact: + ipv4_prefix: "{{ ansible_default_ipv4.address.split('.')[:-1] | join('.') }}" diff --git a/tests/service/test_service.yml b/tests/service/test_service.yml index 26f509efa619ff23053dd66b77adf78b9e2a14f1..7035bb9e7b793ca6591d2592ef4480be6e541340 100644 --- a/tests/service/test_service.yml +++ b/tests/service/test_service.yml @@ -17,109 +17,8 @@ tasks: # setup - - name: Get Domain from server name - set_fact: - ipaserver_domain: "{{ ansible_fqdn.split('.')[1:] | join ('.') }}" - when: ipaserver_domain is not defined - - - name: Set host1, host2 and svc hosts fqdn - set_fact: - host1_fqdn: "{{ 'host1.' + ipaserver_domain }}" - host2_fqdn: "{{ 'host2.' + ipaserver_domain }}" - svc_fqdn: "{{ 'svc.' + ipaserver_domain }}" - nohost_fqdn: "{{ 'nohost.' + ipaserver_domain }}" - - - name: Remove IP address for "nohost" host. - ipadnsrecord: - ipaadmin_password: SomeADMINpassword - zone_name: "{{ ipaserver_domain }}" - name: nohost - del_all: yes - state: absent - - - name: Host absent - ipahost: - ipaadmin_password: SomeADMINpassword - name: - - "{{ nohost_fqdn }}" - - no.idontexist.info - - svc.ihavenodns.info - - "{{ host1_fqdn }}" - - "{{ host2_fqdn }}" - - "{{ svc_fqdn }}" - update_dns: no - state: absent - - - name: Get IPv4 address prefix from server node - set_fact: - ipv4_prefix: "{{ ansible_default_ipv4.address.split('.')[:-1] | - join('.') }}" - - - name: Add IP address for "nohost" host. - ipadnsrecord: - ipaadmin_password: SomeADMINpassword - zone_name: "{{ ipaserver_domain }}" - name: nohost - a_ip_address: "{{ ipv4_prefix + '.100' }}" - - - name: Add hosts for tests. - ipahost: - ipaadmin_password: SomeADMINpassword - hosts: - - name: "{{ host1_fqdn }}" - ip_address: "{{ ipv4_prefix + '.101' }}" - - name: "{{ host2_fqdn }}" - ip_address: "{{ ipv4_prefix + '.102' }}" - force: yes - - name: "{{ svc_fqdn }}" - ip_address: "{{ ipv4_prefix + '.201' }}" - - name: svc.ihavenodns.info - force: yes - update_dns: yes - - - name: Ensure testing user user01 is present. - ipauser: - ipaadmin_password: SomeADMINpassword - name: user01 - first: user01 - last: last - - - name: Ensure testing user user02 is present. - ipauser: - ipaadmin_password: SomeADMINpassword - name: user02 - first: user02 - last: last - - - name: Ensure testing group group01 is present. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: group01 - - - name: Ensure testing group group02 is present. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: group02 - - - name: Ensure testing hostgroup hostgroup01 is present. - ipahostgroup: - ipaadmin_password: SomeADMINpassword - name: hostgroup01 - - - name: Ensure testing hostgroup hostgroup02 is present. - ipahostgroup: - ipaadmin_password: SomeADMINpassword - name: hostgroup02 - - - name: Ensure services are absent. - ipaservice: - ipaadmin_password: SomeADMINpassword - name: - - "HTTP/{{ svc_fqdn }}" - - "HTTP/{{ nohost_fqdn }}" - - HTTP/svc.ihavenodns.info - - HTTP/no.idontexist.info - state: absent + - name: Setup test environment + include_tasks: env_setup.yml # tests - name: Ensure service is present @@ -476,7 +375,6 @@ register: result failed_when: result.changed - # - name: Ensure service is absent ipaservice: ipaadmin_password: SomeADMINpassword @@ -594,70 +492,5 @@ failed_when: result.changed # cleanup - - - name: Ensure services are absent. - ipaservice: - ipaadmin_password: SomeADMINpassword - name: - - "HTTP/{{ svc_fqdn }}" - - "HTTP/{{ nohost_fqdn }}" - - HTTP/svc.ihavenodns.info - - HTTP/no.idontexist.local - - "cifs/{{ host1_fqdn }}" - state: absent - - - name: Ensure host "{{ svc_fqdn }}" is absent - ipahost: - ipaadmin_password: SomeADMINpassword - name: "{{ svc_fqdn }}" - update_dns: yes - state: absent - - - name: Ensure host is absent - ipahost: - ipaadmin_password: SomeADMINpassword - name: - - "{{ host1_fqdn }}" - - "{{ host2_fqdn }}" - - "{{ nohost_fqdn }}" - - svc.ihavenodns.info - update_dns: no - state: absent - - - name: Ensure testing users are absent. - ipauser: - ipaadmin_password: SomeADMINpassword - name: - - user01 - - user02 - state: absent - - - name: Ensure testing groups are absent. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: - - group01 - - group02 - state: absent - - - name: Ensure testing hostgroup hostgroup01 is absent. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: - - hostgroup01 - state: absent - - - name: Ensure testing hostgroup hostgroup02 is absent. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: - - hostgroup02 - state: absent - - - name: Remove IP address for "nohost" host. - ipadnsrecord: - ipaadmin_password: SomeADMINpassword - zone_name: "{{ ipaserver_domain }}" - name: nohost - del_all: yes - state: absent + - name: Cleanup test environment + include_tasks: env_cleanup.yml diff --git a/tests/service/test_service_keytab.yml b/tests/service/test_service_keytab.yml new file mode 100644 index 0000000000000000000000000000000000000000..0918802952463c398b086868fd038018826e07fe --- /dev/null +++ b/tests/service/test_service_keytab.yml @@ -0,0 +1,397 @@ +--- +- name: Test service + hosts: ipaserver + become: yes + + tasks: + # setup + - name: Setup test envirnoment. + include_tasks: env_setup.yml + + # Add service to test keytab create/retrieve attributes. + - name: Ensure test service is present + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + pac_type: + - MS-PAC + - PAD + auth_ind: otp + force: yes + requires_pre_auth: yes + ok_as_delegate: no + ok_to_auth_as_delegate: no + + # tests + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for users. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_user: + - user01 + - user02 + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for users, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_user: + - user01 + - user02 + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for users. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_user: + - user01 + - user02 + action: member + state: absent + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for users, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_user: + - user01 + - user02 + action: member + state: absent + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for group. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_group: + - group01 + - group02 + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for group, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_group: + - group01 + - group02 + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for group. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_group: + - group01 + - group02 + action: member + state: absent + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for group, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_group: + - group01 + - group02 + action: member + state: absent + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for host. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for host, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for host. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + state: absent + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for host, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + state: absent + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for hostgroup. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab present for hostgroup, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for hostgroup. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + state: absent + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_create_keytab absent for hostgroup, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_create_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + action: member + state: absent + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for users. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_user: + - user01 + - user02 + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for users, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_user: + - user01 + - user02 + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for users. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_user: + - user01 + - user02 + action: member + state: absent + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for users, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_user: + - user01 + - user02 + action: member + state: absent + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for group. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_group: + - group01 + - group02 + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for group, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_group: + - group01 + - group02 + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for group. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_group: + - group01 + - group02 + action: member + state: absent + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for group, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_group: + - group01 + - group02 + action: member + state: absent + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for host. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for host, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for host. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + state: absent + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for host, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_host: + - "{{ host1_fqdn }}" + - "{{ host2_fqdn }}" + action: member + state: absent + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for hostgroup. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + action: member + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab present for hostgroup, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + action: member + register: result + failed_when: result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for hostgroup. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + action: member + state: absent + register: result + failed_when: not result.changed + + - name: Service "HTTP/{{ svc_fqdn }}" members allow_retrieve_keytab absent for hostgroup, again. + ipaservice: + ipaadmin_password: SomeADMINpassword + name: "HTTP/{{ svc_fqdn }}" + allow_retrieve_keytab_hostgroup: + - hostgroup01 + - hostgroup02 + action: member + state: absent + register: result + failed_when: result.changed + + # cleanup + - name: Clean-up envirnoment. + include_tasks: env_cleanup.yml diff --git a/tests/service/test_service_without_skip_host_check.yml b/tests/service/test_service_without_skip_host_check.yml index ce703e9a0d39e1faf7a486b2495e188a38d9380b..0f89cc7247de62f29295e1fb453f8c1a5e745b40 100644 --- a/tests/service/test_service_without_skip_host_check.yml +++ b/tests/service/test_service_without_skip_host_check.yml @@ -5,91 +5,8 @@ tasks: # setup - - name: Get Domain from server name - set_fact: - ipaserver_domain: "{{ ansible_fqdn.split('.')[1:] | join ('.') }}" - when: ipaserver_domain is not defined - - - name: Set host1, host2 and svc hosts fqdn - set_fact: - host1_fqdn: "{{ 'host1.' + ipaserver_domain }}" - host2_fqdn: "{{ 'host2.' + ipaserver_domain }}" - svc_fqdn: "{{ 'svc.' + ipaserver_domain }}" - - - name: Host absent - ipahost: - ipaadmin_password: SomeADMINpassword - name: - - svc.ihavenodns.info - - "{{ host1_fqdn }}" - - "{{ host2_fqdn }}" - - "{{ svc_fqdn }}" - update_dns: yes - state: absent - - - name: Get IPv4 address prefix from server node - set_fact: - ipv4_prefix: "{{ ansible_default_ipv4.address.split('.')[:-1] | - join('.') }}" - - - name: Add hosts for tests. - ipahost: - ipaadmin_password: SomeADMINpassword - hosts: - - name: "{{ host1_fqdn }}" - ip_address: "{{ ipv4_prefix + '.201' }}" - update_dns: yes - - name: "{{ host2_fqdn }}" - ip_address: "{{ ipv4_prefix + '.202' }}" - update_dns: yes - - name: "{{ svc_fqdn }}" - ip_address: "{{ ipv4_prefix + '.203' }}" - update_dns: yes - - name: svc.ihavenodns.info - update_dns: no - force: yes - - - name: Ensure testing user user01 is present. - ipauser: - ipaadmin_password: SomeADMINpassword - name: user01 - first: user01 - last: last - - - name: Ensure testing user user02 is present. - ipauser: - ipaadmin_password: SomeADMINpassword - name: user02 - first: user02 - last: last - - - name: Ensure testing group group01 is present. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: group01 - - - name: Ensure testing group group02 is present. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: group02 - - - name: Ensure testing hostgroup hostgroup01 is present. - ipahostgroup: - ipaadmin_password: SomeADMINpassword - name: hostgroup01 - - - name: Ensure testing hostgroup hostgroup02 is present. - ipahostgroup: - ipaadmin_password: SomeADMINpassword - name: hostgroup02 - - - name: Ensure services are absent. - ipaservice: - ipaadmin_password: SomeADMINpassword - name: - - "HTTP/{{ svc_fqdn }}" - - HTTP/svc.ihavenodns.info - state: absent + - name: Setup test environment + include_tasks: env_setup.yml # tests - name: Ensure service is present @@ -426,51 +343,5 @@ failed_when: result.changed # cleanup - - - name: Ensure services are absent. - ipaservice: - ipaadmin_password: SomeADMINpassword - name: - - "HTTP/{{ svc_fqdn }}" - - HTTP/svc.ihavenodns.info - state: absent - - - name: Ensure host is absent - ipahost: - ipaadmin_password: SomeADMINpassword - name: - - "{{ svc_fqdn }}" - - "{{ host1_fqdn }}" - - "{{ host2_fqdn }}" - - svc.ihavenodns.info - state: absent - - - name: Ensure testing users are absent. - ipauser: - ipaadmin_password: SomeADMINpassword - name: - - user01 - - user02 - state: absent - - - name: Ensure testing groups are absent. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: - - group01 - - group02 - state: absent - - - name: Ensure testing hostgroup hostgroup01 is absent. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: - - hostgroup01 - state: absent - - - name: Ensure testing hostgroup hostgroup02 is absent. - ipagroup: - ipaadmin_password: SomeADMINpassword - name: - - hostgroup02 - state: absent + - name: Cleanup test environment + include_tasks: env_cleanup.yml