mirror of
https://github.com/freeipa/ansible-freeipa.git
synced 2026-08-05 14:24:48 +00:00
Merge pull request #635 from rjeffman/ipaconfig_tests
ipaconfig: Prevent configuration issues due to test failure.
This commit is contained in:
@@ -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 @@
|
|||||||
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 @@
|
|||||||
- 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,27 +333,27 @@
|
|||||||
|
|
||||||
- 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) }}'
|
||||||
pac_type: '{{previousconfig.config.pac_type | default(omit)}}'
|
pac_type: '{{ previousconfig.config.pac_type | default(omit) }}'
|
||||||
user_auth_type: '{{previousconfig.config.user_auth_type | default(omit)}}'
|
user_auth_type: '{{ previousconfig.config.user_auth_type | default(omit) }}'
|
||||||
domain_resolution_order: '{{previousconfig.config.domain_resolution_order | default(omit)}}'
|
domain_resolution_order: '{{ previousconfig.config.domain_resolution_order | default(omit) }}'
|
||||||
ca_renewal_master_server: '{{previousconfig.config.ca_renewal_master_server | default(omit)}}'
|
ca_renewal_master_server: '{{ previousconfig.config.ca_renewal_master_server | default(omit) }}'
|
||||||
register: result
|
register: result
|
||||||
failed_when: not result.changed or result.failed
|
failed_when: not result.changed or result.failed
|
||||||
|
|
||||||
@@ -360,32 +361,32 @@
|
|||||||
block:
|
block:
|
||||||
- ipaconfig:
|
- ipaconfig:
|
||||||
ipaadmin_password: SomeADMINpassword
|
ipaadmin_password: SomeADMINpassword
|
||||||
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', '>=')
|
||||||
|
|
||||||
- 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) }}'
|
||||||
pac_type: '{{previousconfig.config.pac_type | default(omit)}}'
|
pac_type: '{{ previousconfig.config.pac_type | default(omit) }}'
|
||||||
user_auth_type: '{{previousconfig.config.user_auth_type | default(omit)}}'
|
user_auth_type: '{{ previousconfig.config.user_auth_type | default(omit) }}'
|
||||||
domain_resolution_order: '{{previousconfig.config.domain_resolution_order | default(omit)}}'
|
domain_resolution_order: '{{ previousconfig.config.domain_resolution_order | default(omit) }}'
|
||||||
ca_renewal_master_server: '{{previousconfig.config.ca_renewal_master_server | default(omit)}}'
|
ca_renewal_master_server: '{{ previousconfig.config.ca_renewal_master_server | default(omit) }}'
|
||||||
register: result
|
register: result
|
||||||
failed_when: result.changed or result.failed
|
failed_when: result.changed or result.failed
|
||||||
|
|
||||||
@@ -393,13 +394,42 @@
|
|||||||
block:
|
block:
|
||||||
- ipaconfig:
|
- ipaconfig:
|
||||||
ipaadmin_password: SomeADMINpassword
|
ipaadmin_password: SomeADMINpassword
|
||||||
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
|
||||||
|
|||||||
Reference in New Issue
Block a user