mirror of
https://github.com/freeipa/ansible-freeipa.git
synced 2026-06-23 09:14:43 +00:00
ipaserver: Add support for pki_config_override
The addtion is not oly adding the config setting, but also fixing the deployment without the setting as functions and methods have been changed for pki_config_override. There is a new setting for the ipaserver role: ipaserver_pki_config_override
This commit is contained in:
@@ -129,6 +129,9 @@ Variables
|
|||||||
**ipaserver_no_host_dns** - Do not use DNS for hostname lookup during installation.
|
**ipaserver_no_host_dns** - Do not use DNS for hostname lookup during installation.
|
||||||
(bool, optional)
|
(bool, optional)
|
||||||
|
|
||||||
|
**ipaserver_pki_config_override** - Path to ini file with config overrides.
|
||||||
|
(string, optional)
|
||||||
|
|
||||||
**ipaserver_no_dnssec_validation** - Disable DNSSEC validation on this server.
|
**ipaserver_no_dnssec_validation** - Disable DNSSEC validation on this server.
|
||||||
(bool, optional)
|
(bool, optional)
|
||||||
|
|
||||||
|
|||||||
@@ -91,6 +91,7 @@ def main():
|
|||||||
realm=dict(required=True),
|
realm=dict(required=True),
|
||||||
hostname=dict(required=False),
|
hostname=dict(required=False),
|
||||||
no_host_dns=dict(required=False, type='bool', default=False),
|
no_host_dns=dict(required=False, type='bool', default=False),
|
||||||
|
pki_config_override=dict(required=False),
|
||||||
### server ###
|
### server ###
|
||||||
setup_adtrust=dict(required=False, type='bool', default=False),
|
setup_adtrust=dict(required=False, type='bool', default=False),
|
||||||
setup_kra=dict(required=False, type='bool', default=False),
|
setup_kra=dict(required=False, type='bool', default=False),
|
||||||
@@ -136,6 +137,8 @@ def main():
|
|||||||
options.realm_name = ansible_module.params.get('realm')
|
options.realm_name = ansible_module.params.get('realm')
|
||||||
options.host_name = ansible_module.params.get('hostname')
|
options.host_name = ansible_module.params.get('hostname')
|
||||||
options.no_host_dns = ansible_module.params.get('no_host_dns')
|
options.no_host_dns = ansible_module.params.get('no_host_dns')
|
||||||
|
options.pki_config_override = ansible_module.params.get(
|
||||||
|
'pki_config_override')
|
||||||
### server ###
|
### server ###
|
||||||
options.setup_adtrust = ansible_module.params.get('setup_adtrust')
|
options.setup_adtrust = ansible_module.params.get('setup_adtrust')
|
||||||
options.setup_kra = ansible_module.params.get('setup_kra')
|
options.setup_kra = ansible_module.params.get('setup_kra')
|
||||||
|
|||||||
@@ -58,6 +58,7 @@ def main():
|
|||||||
setup_ca=dict(required=True, type='bool'),
|
setup_ca=dict(required=True, type='bool'),
|
||||||
setup_kra=dict(required=True, type='bool'),
|
setup_kra=dict(required=True, type='bool'),
|
||||||
realm=dict(required=True),
|
realm=dict(required=True),
|
||||||
|
pki_config_override=dict(required=False),
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -71,6 +72,8 @@ def main():
|
|||||||
options.setup_ca = ansible_module.params.get('setup_ca')
|
options.setup_ca = ansible_module.params.get('setup_ca')
|
||||||
options.setup_kra = ansible_module.params.get('setup_kra')
|
options.setup_kra = ansible_module.params.get('setup_kra')
|
||||||
options.realm_name = ansible_module.params.get('realm')
|
options.realm_name = ansible_module.params.get('realm')
|
||||||
|
options.pki_config_override = ansible_module.params.get(
|
||||||
|
'pki_config_override')
|
||||||
options.promote = False # first master, no promotion
|
options.promote = False # first master, no promotion
|
||||||
|
|
||||||
# init ##########################################################
|
# init ##########################################################
|
||||||
|
|||||||
@@ -66,6 +66,7 @@ def main():
|
|||||||
hostname=dict(required=False),
|
hostname=dict(required=False),
|
||||||
ca_cert_files=dict(required=False, type='list', default=[]),
|
ca_cert_files=dict(required=False, type='list', default=[]),
|
||||||
no_host_dns=dict(required=False, type='bool', default=False),
|
no_host_dns=dict(required=False, type='bool', default=False),
|
||||||
|
pki_config_override=dict(required=False),
|
||||||
### server ###
|
### server ###
|
||||||
setup_adtrust=dict(required=False, type='bool', default=False),
|
setup_adtrust=dict(required=False, type='bool', default=False),
|
||||||
setup_kra=dict(required=False, type='bool', default=False),
|
setup_kra=dict(required=False, type='bool', default=False),
|
||||||
@@ -134,13 +135,13 @@ def main():
|
|||||||
options.dm_password = ansible_module.params.get('dm_password')
|
options.dm_password = ansible_module.params.get('dm_password')
|
||||||
options.admin_password = ansible_module.params.get('password')
|
options.admin_password = ansible_module.params.get('password')
|
||||||
options.master_password = ansible_module.params.get('master_password')
|
options.master_password = ansible_module.params.get('master_password')
|
||||||
options.ip_addresses = ansible_module_get_parsed_ip_addresses(
|
|
||||||
ansible_module)
|
|
||||||
options.domain_name = ansible_module.params.get('domain')
|
options.domain_name = ansible_module.params.get('domain')
|
||||||
options.realm_name = ansible_module.params.get('realm')
|
options.realm_name = ansible_module.params.get('realm')
|
||||||
options.host_name = ansible_module.params.get('hostname')
|
options.host_name = ansible_module.params.get('hostname')
|
||||||
options.ca_cert_files = ansible_module.params.get('ca_cert_files')
|
options.ca_cert_files = ansible_module.params.get('ca_cert_files')
|
||||||
options.no_host_dns = ansible_module.params.get('no_host_dns')
|
options.no_host_dns = ansible_module.params.get('no_host_dns')
|
||||||
|
options.pki_config_override = ansible_module.params.get(
|
||||||
|
'pki_config_override')
|
||||||
### server ###
|
### server ###
|
||||||
options.setup_adtrust = ansible_module.params.get('setup_adtrust')
|
options.setup_adtrust = ansible_module.params.get('setup_adtrust')
|
||||||
options.setup_dns = ansible_module.params.get('setup_dns')
|
options.setup_dns = ansible_module.params.get('setup_dns')
|
||||||
@@ -213,6 +214,19 @@ def main():
|
|||||||
# options.setup_kra = False
|
# options.setup_kra = False
|
||||||
# ansible_module.warn(msg="kra is not supported, disabling")
|
# ansible_module.warn(msg="kra is not supported, disabling")
|
||||||
|
|
||||||
|
if options.pki_config_override is not None:
|
||||||
|
if PKIIniLoader is None:
|
||||||
|
ansible_module.warn("The use of pki_config_override is not "
|
||||||
|
"supported for this IPA version")
|
||||||
|
else:
|
||||||
|
# From DogtagInstallInterface @pki_config_override.validator
|
||||||
|
try:
|
||||||
|
PKIIniLoader.verify_pki_config_override(
|
||||||
|
options.pki_config_override)
|
||||||
|
except ValueError as e:
|
||||||
|
ansible_module.fail_json(
|
||||||
|
msg="pki_config_override: %s" % str(e))
|
||||||
|
|
||||||
# validation #############################################################
|
# validation #############################################################
|
||||||
|
|
||||||
if options.dm_password is None:
|
if options.dm_password is None:
|
||||||
|
|||||||
@@ -101,6 +101,10 @@ if NUM_VERSION >= 40500:
|
|||||||
from ipaserver.install.server.install import (
|
from ipaserver.install.server.install import (
|
||||||
check_dirsrv, validate_admin_password, validate_dm_password,
|
check_dirsrv, validate_admin_password, validate_dm_password,
|
||||||
write_cache)
|
write_cache)
|
||||||
|
try:
|
||||||
|
from ipaserver.install.dogtaginstance import PKIIniLoader
|
||||||
|
except ImportError:
|
||||||
|
PKIIniLoader = None
|
||||||
try:
|
try:
|
||||||
from ipaserver.install.installutils import default_subject_base
|
from ipaserver.install.installutils import default_subject_base
|
||||||
except ImportError:
|
except ImportError:
|
||||||
|
|||||||
@@ -39,6 +39,7 @@
|
|||||||
hostname: "{{ ipaserver_hostname | default(ansible_fqdn) }}"
|
hostname: "{{ ipaserver_hostname | default(ansible_fqdn) }}"
|
||||||
ca_cert_files: "{{ ipaserver_ca_cert_files | default(omit) }}"
|
ca_cert_files: "{{ ipaserver_ca_cert_files | default(omit) }}"
|
||||||
no_host_dns: "{{ ipaserver_no_host_dns }}"
|
no_host_dns: "{{ ipaserver_no_host_dns }}"
|
||||||
|
pki_config_override: "{{ ipaserver_pki_config_override | default(omit) }}"
|
||||||
### server ###
|
### server ###
|
||||||
setup_adtrust: "{{ ipaserver_setup_adtrust }}"
|
setup_adtrust: "{{ ipaserver_setup_adtrust }}"
|
||||||
setup_kra: "{{ ipaserver_setup_kra }}"
|
setup_kra: "{{ ipaserver_setup_kra }}"
|
||||||
@@ -228,6 +229,8 @@
|
|||||||
realm: "{{ result_ipaserver_test.realm }}"
|
realm: "{{ result_ipaserver_test.realm }}"
|
||||||
hostname: "{{ result_ipaserver_test.hostname }}"
|
hostname: "{{ result_ipaserver_test.hostname }}"
|
||||||
no_host_dns: "{{ result_ipaserver_test.no_host_dns }}"
|
no_host_dns: "{{ result_ipaserver_test.no_host_dns }}"
|
||||||
|
pki_config_override: "{{ ipaserver_pki_config_override |
|
||||||
|
default(omit) }}"
|
||||||
setup_adtrust: "{{ result_ipaserver_test.setup_adtrust }}"
|
setup_adtrust: "{{ result_ipaserver_test.setup_adtrust }}"
|
||||||
setup_kra: "{{ result_ipaserver_test.setup_kra }}"
|
setup_kra: "{{ result_ipaserver_test.setup_kra }}"
|
||||||
setup_dns: "{{ ipaserver_setup_dns }}"
|
setup_dns: "{{ ipaserver_setup_dns }}"
|
||||||
@@ -294,6 +297,8 @@
|
|||||||
dm_password: "{{ ipadm_password }}"
|
dm_password: "{{ ipadm_password }}"
|
||||||
setup_kra: "{{ result_ipaserver_test.setup_kra }}"
|
setup_kra: "{{ result_ipaserver_test.setup_kra }}"
|
||||||
realm: "{{ result_ipaserver_test.realm }}"
|
realm: "{{ result_ipaserver_test.realm }}"
|
||||||
|
pki_config_override: "{{ ipaserver_pki_config_override |
|
||||||
|
default(omit) }}"
|
||||||
when: result_ipaserver_test.setup_kra | bool
|
when: result_ipaserver_test.setup_kra | bool
|
||||||
|
|
||||||
- name: Install - Setup DNS
|
- name: Install - Setup DNS
|
||||||
|
|||||||
Reference in New Issue
Block a user