Skip to content
Snippets Groups Projects
Unverified Commit 11639860 authored by Thomas Woerner's avatar Thomas Woerner Committed by GitHub
Browse files

Merge pull request #635 from rjeffman/ipaconfig_tests

ipaconfig: Prevent configuration issues due to test failure.
parents bc37d499 a5fa3d86
No related branches found
No related tags found
No related merge requests found
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
tasks: tasks:
- include_tasks: ../env_freeipa_facts.yml - include_tasks: ../env_freeipa_facts.yml
- block:
# Retrieve current configuration. # Retrieve current configuration.
- name: return current values of the global configuration options - name: return current values of the global configuration options
ipaconfig: ipaconfig:
...@@ -14,12 +15,12 @@ ...@@ -14,12 +15,12 @@
register: previousconfig register: previousconfig
- debug: - debug:
msg: "{{previousconfig}}" var: previousconfig
# setup environment. # setup environment.
- name: create test group - name: create test group
ipagroup: ipagroup:
ipaadmin_password: 'SomeADMINpassword' ipaadmin_password: SomeADMINpassword
name: somedefaultgroup name: somedefaultgroup
- name: Ensure the default e-mail domain is ipa.test. - name: Ensure the default e-mail domain is ipa.test.
...@@ -249,14 +250,14 @@ ...@@ -249,14 +250,14 @@
- name: change enable_migration - name: change enable_migration
ipaconfig: ipaconfig:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword
enable_migration: '{{ not previousconfig.config.enable_migration }}' enable_migration: '{{ not (previousconfig.config.enable_migration | bool) }}'
register: result register: result
failed_when: not result.changed or result.failed failed_when: not result.changed or result.failed
- name: change enable_migration, again - name: change enable_migration, again
ipaconfig: ipaconfig:
ipaadmin_password: SomeADMINpassword ipaadmin_password: SomeADMINpassword
enable_migration: '{{ not previousconfig.config.enable_migration }}' enable_migration: '{{ not (previousconfig.config.enable_migration | bool) }}'
register: result register: result
failed_when: result.changed or result.failed failed_when: result.changed or result.failed
...@@ -332,20 +333,20 @@ ...@@ -332,20 +333,20 @@
- name: reset changed fields - name: reset changed fields
ipaconfig: ipaconfig:
ipaadmin_password: 'SomeADMINpassword' ipaadmin_password: SomeADMINpassword
maxusername: '{{previousconfig.config.maxusername | default(omit)}}' maxusername: '{{ previousconfig.config.maxusername | default(32) | int }}'
homedirectory: '{{ previousconfig.config.homedirectory | default(omit) }}' homedirectory: '{{ previousconfig.config.homedirectory | default(omit) }}'
defaultshell: '{{ previousconfig.config.defaultshell | default(omit) }}' defaultshell: '{{ previousconfig.config.defaultshell | default(omit) }}'
defaultgroup: '{{ previousconfig.config.defaultgroup | default(omit) }}' defaultgroup: '{{ previousconfig.config.defaultgroup | default(omit) }}'
emaildomain: '{{ previousconfig.config.emaildomain | default(omit) }}' emaildomain: '{{ previousconfig.config.emaildomain | default(omit) }}'
searchtimelimit: '{{previousconfig.config.searchtimelimit | default(omit)}}' searchtimelimit: '{{ previousconfig.config.searchtimelimit | default(2) | int }}'
searchrecordslimit: '{{previousconfig.config.searchrecordslimit | default(omit)}}' searchrecordslimit: '{{ previousconfig.config.searchrecordslimit | default(100) | int }}'
usersearch: '{{ previousconfig.config.usersearch | default(omit) }}' usersearch: '{{ previousconfig.config.usersearch | default(omit) }}'
groupsearch: '{{ previousconfig.config.groupsearch | default(omit) }}' groupsearch: '{{ previousconfig.config.groupsearch | default(omit) }}'
enable_migration: '{{previousconfig.config.enable_migration | default(omit)}}' enable_migration: '{{ previousconfig.config.enable_migration | default(False) | bool }}'
groupobjectclasses: '{{ previousconfig.config.groupobjectclasses | default(omit) }}' groupobjectclasses: '{{ previousconfig.config.groupobjectclasses | default(omit) }}'
userobjectclasses: '{{ previousconfig.config.userobjectclasses | default(omit) }}' userobjectclasses: '{{ previousconfig.config.userobjectclasses | default(omit) }}'
pwdexpnotify: '{{previousconfig.config.pwdexpnotify | default(omit)}}' pwdexpnotify: '{{ previousconfig.config.pwdexpnotify | default(4) | int }}'
configstring: '{{ previousconfig.config.configstring | default(omit) }}' configstring: '{{ previousconfig.config.configstring | default(omit) }}'
selinuxusermapdefault: '{{ previousconfig.config.selinuxusermapdefault | default(omit) }}' selinuxusermapdefault: '{{ previousconfig.config.selinuxusermapdefault | default(omit) }}'
selinuxusermaporder: '{{ previousconfig.config.selinuxusermaporder | default(omit) }}' selinuxusermaporder: '{{ previousconfig.config.selinuxusermaporder | default(omit) }}'
...@@ -365,20 +366,20 @@ ...@@ -365,20 +366,20 @@
- name: reset changed fields, again - name: reset changed fields, again
ipaconfig: ipaconfig:
ipaadmin_password: 'SomeADMINpassword' ipaadmin_password: SomeADMINpassword
maxusername: '{{previousconfig.config.maxusername | default(omit)}}' maxusername: '{{ previousconfig.config.maxusername | default(omit) | int }}'
homedirectory: '{{ previousconfig.config.homedirectory | default(omit) }}' homedirectory: '{{ previousconfig.config.homedirectory | default(omit) }}'
defaultshell: '{{ previousconfig.config.defaultshell | default(omit) }}' defaultshell: '{{ previousconfig.config.defaultshell | default(omit) }}'
defaultgroup: '{{ previousconfig.config.defaultgroup | default(omit) }}' defaultgroup: '{{ previousconfig.config.defaultgroup | default(omit) }}'
emaildomain: '{{ previousconfig.config.emaildomain | default(omit) }}' emaildomain: '{{ previousconfig.config.emaildomain | default(omit) }}'
searchtimelimit: '{{previousconfig.config.searchtimelimit | default(omit)}}' searchtimelimit: '{{ previousconfig.config.searchtimelimit | default(omit) | int }}'
searchrecordslimit: '{{previousconfig.config.searchrecordslimit | default(omit)}}' searchrecordslimit: '{{ previousconfig.config.searchrecordslimit | default(omit) | int }}'
usersearch: '{{ previousconfig.config.usersearch | default(omit) }}' usersearch: '{{ previousconfig.config.usersearch | default(omit) }}'
groupsearch: '{{ previousconfig.config.groupsearch | default(omit) }}' groupsearch: '{{ previousconfig.config.groupsearch | default(omit) }}'
enable_migration: '{{previousconfig.config.enable_migration | default(omit)}}' enable_migration: '{{ previousconfig.config.enable_migration | default(omit) | bool }}'
groupobjectclasses: '{{ previousconfig.config.groupobjectclasses | default(omit) }}' groupobjectclasses: '{{ previousconfig.config.groupobjectclasses | default(omit) }}'
userobjectclasses: '{{ previousconfig.config.userobjectclasses | default(omit) }}' userobjectclasses: '{{ previousconfig.config.userobjectclasses | default(omit) }}'
pwdexpnotify: '{{previousconfig.config.pwdexpnotify | default(omit)}}' pwdexpnotify: '{{ previousconfig.config.pwdexpnotify | default(omit) | int }}'
configstring: '{{ previousconfig.config.configstring | default(omit) }}' configstring: '{{ previousconfig.config.configstring | default(omit) }}'
selinuxusermapdefault: '{{ previousconfig.config.selinuxusermapdefault | default(omit) }}' selinuxusermapdefault: '{{ previousconfig.config.selinuxusermapdefault | default(omit) }}'
selinuxusermaporder: '{{ previousconfig.config.selinuxusermaporder | default(omit) }}' selinuxusermaporder: '{{ previousconfig.config.selinuxusermaporder | default(omit) }}'
...@@ -396,10 +397,39 @@ ...@@ -396,10 +397,39 @@
maxhostname: '{{ previousconfig.config.maxhostname | default(omit) }}' maxhostname: '{{ previousconfig.config.maxhostname | default(omit) }}'
when: ipa_version is version('4.8.0', '>=') when: ipa_version is version('4.8.0', '>=')
# cleanup rescue:
- name: Set fields to IPA default, due to error
ipaconfig:
ipaadmin_password: SomeADMINpassword
maxusername: '{{ previousconfig.config.maxusername | default(omit) | int }}'
homedirectory: '{{ previousconfig.config.homedirectory | default(omit) }}'
defaultshell: '{{ previousconfig.config.defaultshell | default(omit) }}'
defaultgroup: '{{ previousconfig.config.defaultgroup | default(omit) }}'
emaildomain: '{{ previousconfig.config.emaildomain | default(omit) }}'
searchtimelimit: '{{ previousconfig.config.searchtimelimit | default(omit) | int }}'
searchrecordslimit: '{{ previousconfig.config.searchrecordslimit | default(omit) | int }}'
usersearch: '{{ previousconfig.config.usersearch | default(omit) }}'
groupsearch: '{{ previousconfig.config.groupsearch | default(omit) }}'
enable_migration: '{{ previousconfig.config.enable_migration | default(omit) | bool }}'
groupobjectclasses: '{{ previousconfig.config.groupobjectclasses | default(omit) }}'
userobjectclasses: '{{ previousconfig.config.userobjectclasses | default(omit) }}'
pwdexpnotify: '{{ previousconfig.config.pwdexpnotify | default(omit) | int }}'
configstring: '{{ previousconfig.config.configstring | default(omit) }}'
selinuxusermapdefault: '{{ previousconfig.config.selinuxusermapdefault | default(omit) }}'
selinuxusermaporder: '{{ previousconfig.config.selinuxusermaporder | default(omit) }}'
pac_type: '{{ previousconfig.config.pac_type | default(omit) }}'
user_auth_type: '{{ previousconfig.config.user_auth_type | default(omit) }}'
domain_resolution_order: '{{ previousconfig.config.domain_resolution_order | default(omit) }}'
ca_renewal_master_server: '{{ previousconfig.config.ca_renewal_master_server | default(omit) }}'
register: result
- debug:
msg: "Due to a test failure, IPA CA-Renewal Server might not be correctly be set. Check your configuration."
always:
# cleanup
- name: cleanup test group - name: cleanup test group
ipagroup: ipagroup:
ipaadmin_password: 'SomeADMINpassword' ipaadmin_password: SomeADMINpassword
name: somedefaultgroup name: somedefaultgroup
state: absent state: absent
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment