From 3e6af238bb695572e462ff49a3096ab0e2e85bc5 Mon Sep 17 00:00:00 2001 From: Martin Babinsky Date: Sun, 12 Jun 2016 17:03:10 +0200 Subject: [PATCH] Introduce "NTP server" role This makes IPA servers that publish their NTP services in LDAP searchable by `server-role-find` and `server-find` command. The list of active IPA NTP servers will be displayed in to output of `ipa config-show` command. https://fedorahosted.org/freeipa/ticket/5815 Reviewed-By: Petr Spacek Reviewed-By: Martin Basti --- ipaserver/plugins/config.py | 14 +++++++++----- ipaserver/servroles.py | 5 +++++ 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/ipaserver/plugins/config.py b/ipaserver/plugins/config.py index 94a48a27d..a9e811ecd 100644 --- a/ipaserver/plugins/config.py +++ b/ipaserver/plugins/config.py @@ -239,6 +239,12 @@ class config(LDAPObject): doc=_('IPA servers configured as certificate authority'), flags={'virtual_attribute', 'no_create', 'no_update'} ), + Str( + 'ntp_server_server*', + label=_('IPA NTP servers'), + doc=_('IPA servers with enabled NTP'), + flags={'virtual_attribute', 'no_create', 'no_update'} + ), Str( 'ca_renewal_master_server?', label=_('IPA CA renewal master'), @@ -256,11 +262,9 @@ class config(LDAPObject): backend = self.api.Backend.serverroles - ca_config = backend.config_retrieve("CA server") - master_config = backend.config_retrieve("IPA master") - - entry_attrs.update(ca_config) - entry_attrs.update(master_config) + for role in ("CA server", "IPA master", "NTP server"): + config = backend.config_retrieve(role) + entry_attrs.update(config) @register() diff --git a/ipaserver/servroles.py b/ipaserver/servroles.py index 8628cd625..cf4599995 100644 --- a/ipaserver/servroles.py +++ b/ipaserver/servroles.py @@ -566,6 +566,11 @@ role_instances = ( u"KRA server", component_services=['KRA'] ), + ServiceBasedRole( + u"ntp_server_server", + u"NTP server", + component_services=['NTP'] + ) ) attribute_instances = (