Consolidate container_masters queries

Replace manual queries of container_masters with new APIs get_masters()
and is_service_enabled().

Signed-off-by: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
This commit is contained in:
Christian Heimes
2019-03-27 11:30:40 +01:00
parent d76dccc0b6
commit e9fd8adf59
7 changed files with 70 additions and 92 deletions

View File

@@ -34,6 +34,7 @@ from .service import normalize_principal, validate_realm
from ipalib import _, ngettext
from ipapython import kerberos
from ipapython.dn import DN
from ipaserver.masters import is_service_enabled
if api.env.in_server:
import pki.account
@@ -1225,14 +1226,5 @@ class kra_is_enabled(Command):
has_output = output.standard_value
def execute(self, *args, **options):
base_dn = DN(('cn', 'masters'), ('cn', 'ipa'), ('cn', 'etc'),
self.api.env.basedn)
filter = '(&(objectClass=ipaConfigObject)(cn=KRA))'
try:
self.api.Backend.ldap2.find_entries(
base_dn=base_dn, filter=filter, attrs_list=[])
except errors.NotFound:
result = False
else:
result = True
result = is_service_enabled('KRA', conn=self.api.Backend.ldap2)
return dict(result=result, value=pkey_to_value(None, options))