ipaservice: Updated and new tests for certificates and multi service handling

The tests test_services_absent.yml, test_services_present.yml and
test_services_present_slice.yml have been updated to use in memory data
for testing instead of loading json files. This made is simpler to use
variables from the playbook for example for fqdn host names.

New tests for certificates with and without trailing new lines have been
added for single service and multiple service handling.
This commit is contained in:
Thomas Woerner
2023-06-06 13:00:26 +02:00
parent 872c9e4cb2
commit 09250cb2c5
10 changed files with 735 additions and 156 deletions

View File

@@ -1,46 +1,91 @@
---
- name: Include create_services_json.yml
ansible.builtin.import_playbook: create_services_json.yml
- name: Test services present slice
hosts: ipaserver
become: true
gather_facts: false
gather_facts: true
vars:
slice_size: 500
slice_size: 100
tasks:
- name: Include services.json
ansible.builtin.include_vars:
file: services.json # noqa 505
- name: Include hosts.json
ansible.builtin.include_vars:
file: hosts.json # noqa 505
- name: Size of services slice.
- name: Include generate_test_data.yml
ansible.builtin.include_tasks: generate_test_data.yml
- name: Size of slice
ansible.builtin.debug:
msg: "{{ slice_size }}"
- name: Size of services list
ansible.builtin.debug:
msg: "{{ service_list | length }}"
- name: Size of hosts slice.
- name: Size of hosts list
ansible.builtin.debug:
msg: "{{ host_list | length }}"
- name: Hosts present
ipahost:
ipaadmin_password: SomeADMINpassword
hosts: "{{ host_list[item : item + slice_size] }}"
loop: "{{ range(0, service_list | length, slice_size) | list }}"
loop: "{{ range(0, host_list | length, slice_size) | list }}"
register: result
failed_when: not result.changed or result.failed
- name: Hosts present, again
ipahost:
ipaadmin_password: SomeADMINpassword
hosts: "{{ host_list[item : item + slice_size] }}"
loop: "{{ range(0, host_list | length, slice_size) | list }}"
register: result
failed_when: result.changed or result.failed
- name: Services present
ipaservice:
ipaadmin_password: SomeADMINpassword
services: "{{ service_list[item : item + slice_size] }}"
loop: "{{ range(0, service_list | length, slice_size) | list }}"
register: result
failed_when: not result.changed or result.failed
- name: Remove services.json
hosts: localhost
tasks:
- name: Remove services.json
ansible.builtin.file:
- name: Services present, again
ipaservice:
ipaadmin_password: SomeADMINpassword
services: "{{ service_list[item : item + slice_size] }}"
loop: "{{ range(0, service_list | length, slice_size) | list }}"
register: result
failed_when: result.changed or result.failed
- name: Services absent
ipaservice:
ipaadmin_password: SomeADMINpassword
services: "{{ service_absent_list[item : item + slice_size] }}"
state: absent
path: services.json
- name: Remove hosts.json
ansible.builtin.file:
loop: "{{ range(0, service_absent_list | length, slice_size) | list }}"
register: result
failed_when: not result.changed or result.failed
- name: Services absent, again
ipaservice:
ipaadmin_password: SomeADMINpassword
services: "{{ service_absent_list[item : item + slice_size] }}"
state: absent
path: hosts.json
loop: "{{ range(0, service_absent_list | length, slice_size) | list }}"
register: result
failed_when: result.changed or result.failed
- name: Hosts absent
ipahost:
ipaadmin_password: SomeADMINpassword
hosts: "{{ host_absent_list[item : item + slice_size] }}"
state: absent
loop: "{{ range(0, host_absent_list | length, slice_size) | list }}"
register: result
failed_when: not result.changed or result.failed
- name: Hosts absent, again
ipahost:
ipaadmin_password: SomeADMINpassword
hosts: "{{ host_absent_list[item : item + slice_size] }}"
state: absent
loop: "{{ range(0, host_absent_list | length, slice_size) | list }}"
register: result
failed_when: result.changed or result.failed