mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
service installers: clean up the inheritance
Instead of delegating handling of some parameters like fstore to the parent class, the *Instance installers had the logic copy-pasted in their constructors. Some other members were also moved to the Service class and the parent class constructors in children were fixed to modern standards of initializing parent class in Python. https://fedorahosted.org/freeipa/ticket/6392 Reviewed-By: Stanislav Laznicka <slaznick@redhat.com>
This commit is contained in:
parent
1e6366bc9f
commit
15f282cf2c
@ -38,7 +38,6 @@ from ipaserver.install.replication import wait_for_task
|
||||
from ipalib import errors, api
|
||||
from ipalib.util import normalize_zone
|
||||
from ipapython.dn import DN
|
||||
from ipapython import sysrestore
|
||||
from ipapython import ipautil
|
||||
from ipapython.ipa_log_manager import root_logger
|
||||
import ipapython.errors
|
||||
@ -135,14 +134,9 @@ class ADTRUSTInstance(service.Service):
|
||||
|
||||
self.fqdn = None
|
||||
self.host_netbios_name = None
|
||||
self.realm = None
|
||||
|
||||
service.Service.__init__(self, "smb", service_desc="CIFS")
|
||||
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
super(ADTRUSTInstance, self).__init__(
|
||||
"smb", service_desc="CIFS", fstore=fstore)
|
||||
|
||||
self.__setup_default_attributes()
|
||||
|
||||
|
@ -39,7 +39,7 @@ from ipaserver.dns_data_management import (
|
||||
from ipaserver.install import installutils
|
||||
from ipaserver.install import service
|
||||
from ipaserver.install import sysupgrade
|
||||
from ipapython import sysrestore, ipautil, ipaldap
|
||||
from ipapython import ipautil, ipaldap
|
||||
from ipapython import dnsutil
|
||||
from ipapython.dnsutil import DNSName
|
||||
from ipapython.ipa_log_manager import root_logger
|
||||
@ -615,27 +615,22 @@ class DnsBackup(object):
|
||||
|
||||
class BindInstance(service.Service):
|
||||
def __init__(self, fstore=None, api=api):
|
||||
service.Service.__init__(
|
||||
self, "named",
|
||||
service_desc="DNS"
|
||||
super(BindInstance, self).__init__(
|
||||
"named",
|
||||
service_desc="DNS",
|
||||
fstore=fstore,
|
||||
api=api
|
||||
)
|
||||
self.dns_backup = DnsBackup(self)
|
||||
self.named_user = None
|
||||
self.domain = None
|
||||
self.host = None
|
||||
self.ip_addresses = []
|
||||
self.realm = None
|
||||
self.forwarders = None
|
||||
self.sub_dict = None
|
||||
self.reverse_zones = []
|
||||
self.api = api
|
||||
self.named_regular = services.service('named-regular')
|
||||
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
|
||||
suffix = ipautil.dn_attribute_property('_suffix')
|
||||
|
||||
def setup(self, fqdn, ip_addresses, realm_name, domain_name, forwarders,
|
||||
|
@ -20,7 +20,7 @@ from ipaserver.install import installutils
|
||||
from ipapython.ipa_log_manager import root_logger
|
||||
from ipapython.dn import DN
|
||||
from ipapython import ipaldap
|
||||
from ipapython import sysrestore, ipautil
|
||||
from ipapython import ipautil
|
||||
from ipaplatform.constants import constants
|
||||
from ipaplatform.paths import paths
|
||||
from ipalib import errors, api
|
||||
@ -61,9 +61,10 @@ def remove_replica_public_keys(hostname):
|
||||
|
||||
class DNSKeySyncInstance(service.Service):
|
||||
def __init__(self, fstore=None, logger=root_logger):
|
||||
service.Service.__init__(
|
||||
self, "ipa-dnskeysyncd",
|
||||
super(DNSKeySyncInstance, self).__init__(
|
||||
"ipa-dnskeysyncd",
|
||||
service_desc="DNS key synchronization service",
|
||||
fstore=fstore
|
||||
)
|
||||
self.logger = logger
|
||||
self.extra_config = [u'dnssecVersion 1', ] # DNSSEC enabled
|
||||
@ -71,10 +72,6 @@ class DNSKeySyncInstance(service.Service):
|
||||
self.named_gid = None
|
||||
self.ods_uid = None
|
||||
self.ods_gid = None
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
|
||||
suffix = ipautil.dn_attribute_property('_suffix')
|
||||
|
||||
|
@ -113,10 +113,10 @@ class DogtagInstance(service.Service):
|
||||
|
||||
super(DogtagInstance, self).__init__(
|
||||
'pki-tomcatd',
|
||||
service_desc=service_desc
|
||||
service_desc=service_desc,
|
||||
realm_name=realm
|
||||
)
|
||||
|
||||
self.realm = realm
|
||||
self.admin_password = None
|
||||
self.fqdn = host_name
|
||||
self.pkcs12_info = None
|
||||
|
@ -32,7 +32,7 @@ import fnmatch
|
||||
import ldap
|
||||
|
||||
from ipapython.ipa_log_manager import root_logger
|
||||
from ipapython import ipautil, sysrestore, ipaldap
|
||||
from ipapython import ipautil, ipaldap
|
||||
from ipapython import dogtag
|
||||
from ipaserver.install import service
|
||||
from ipaserver.install import installutils
|
||||
@ -223,10 +223,13 @@ info: IPA V2.0
|
||||
class DsInstance(service.Service):
|
||||
def __init__(self, realm_name=None, domain_name=None, fstore=None,
|
||||
domainlevel=None, config_ldif=None):
|
||||
service.Service.__init__(self, "dirsrv",
|
||||
service_desc="directory server")
|
||||
super(DsInstance, self).__init__(
|
||||
"dirsrv",
|
||||
service_desc="directory server",
|
||||
fstore=fstore,
|
||||
realm_name=realm_name
|
||||
)
|
||||
self.nickname = 'Server-Cert'
|
||||
self.realm = realm_name
|
||||
self.sub_dict = None
|
||||
self.domain = domain_name
|
||||
self.serverid = None
|
||||
@ -248,12 +251,6 @@ class DsInstance(service.Service):
|
||||
else:
|
||||
self.suffix = DN()
|
||||
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
|
||||
|
||||
subject_base = ipautil.dn_attribute_property('_subject_base')
|
||||
|
||||
def __common_setup(self, enable_ssl=False):
|
||||
|
@ -34,7 +34,6 @@ import six
|
||||
from ipaserver.install import service
|
||||
from ipaserver.install import certs
|
||||
from ipaserver.install import installutils
|
||||
from ipapython import sysrestore
|
||||
from ipapython import certmonger
|
||||
from ipapython import dogtag
|
||||
from ipapython import ipautil
|
||||
@ -121,11 +120,10 @@ class WebGuiInstance(service.SimpleServiceInstance):
|
||||
|
||||
class HTTPInstance(service.Service):
|
||||
def __init__(self, fstore=None, cert_nickname='Server-Cert'):
|
||||
service.Service.__init__(self, "httpd", service_desc="the web interface")
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
super(HTTPInstance, self).__init__(
|
||||
"httpd",
|
||||
service_desc="the web interface",
|
||||
fstore=fstore)
|
||||
|
||||
self.cert_nickname = cert_nickname
|
||||
self.ca_is_configured = True
|
||||
|
@ -28,7 +28,6 @@ import dns.name
|
||||
|
||||
from ipaserver.install import service
|
||||
from ipaserver.install import installutils
|
||||
from ipapython import sysrestore
|
||||
from ipapython import ipautil
|
||||
from ipapython import kernel_keyring
|
||||
from ipalib.constants import CACERT
|
||||
@ -50,7 +49,11 @@ class KpasswdInstance(service.SimpleServiceInstance):
|
||||
|
||||
class KrbInstance(service.Service):
|
||||
def __init__(self, fstore=None):
|
||||
service.Service.__init__(self, "krb5kdc", service_desc="Kerberos KDC")
|
||||
super(KrbInstance, self).__init__(
|
||||
"krb5kdc",
|
||||
service_desc="Kerberos KDC",
|
||||
fstore=fstore
|
||||
)
|
||||
self.fqdn = None
|
||||
self.realm = None
|
||||
self.domain = None
|
||||
@ -63,11 +66,6 @@ class KrbInstance(service.Service):
|
||||
self.sub_dict = None
|
||||
self.pkcs12_info = None
|
||||
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
|
||||
suffix = ipautil.dn_attribute_property('_suffix')
|
||||
subject_base = ipautil.dn_attribute_property('_subject_base')
|
||||
|
||||
|
@ -20,7 +20,6 @@
|
||||
|
||||
from ipaserver.install import service
|
||||
from ipaserver.install import sysupgrade
|
||||
from ipapython import sysrestore
|
||||
from ipapython import ipautil
|
||||
from ipaplatform.constants import constants
|
||||
from ipaplatform.paths import paths
|
||||
@ -49,13 +48,12 @@ def ntp_ldap_enable(fqdn, base_dn, realm):
|
||||
|
||||
class NTPInstance(service.Service):
|
||||
def __init__(self, realm=None, fstore=None):
|
||||
service.Service.__init__(self, "ntpd", service_desc="NTP daemon")
|
||||
self.realm = realm
|
||||
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
super(NTPInstance, self).__init__(
|
||||
"ntpd",
|
||||
service_desc="NTP daemon",
|
||||
realm_name=realm,
|
||||
fstore=fstore
|
||||
)
|
||||
|
||||
def __write_config(self):
|
||||
|
||||
|
@ -12,7 +12,7 @@ from ipaserver.install import service
|
||||
from ipaserver.install import installutils
|
||||
from ipapython.ipa_log_manager import root_logger
|
||||
from ipapython.dn import DN
|
||||
from ipapython import sysrestore, ipautil
|
||||
from ipapython import ipautil
|
||||
from ipaplatform.constants import constants
|
||||
from ipaplatform.paths import paths
|
||||
from ipaplatform import services
|
||||
@ -21,19 +21,15 @@ from ipalib import errors, api
|
||||
|
||||
class ODSExporterInstance(service.Service):
|
||||
def __init__(self, fstore=None):
|
||||
service.Service.__init__(
|
||||
self, "ipa-ods-exporter",
|
||||
service_desc="IPA OpenDNSSEC exporter daemon"
|
||||
super(ODSExporterInstance, self).__init__(
|
||||
"ipa-ods-exporter",
|
||||
service_desc="IPA OpenDNSSEC exporter daemon",
|
||||
fstore=fstore
|
||||
)
|
||||
self.ods_uid = None
|
||||
self.ods_gid = None
|
||||
self.enable_if_exists = False
|
||||
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
|
||||
suffix = ipautil.dn_attribute_property('_suffix')
|
||||
|
||||
def create_instance(self, fqdn, realm_name):
|
||||
|
@ -130,7 +130,8 @@ def find_providing_server(svcname, conn, host_name=None, api=api):
|
||||
|
||||
|
||||
class Service(object):
|
||||
def __init__(self, service_name, service_desc=None, sstore=None):
|
||||
def __init__(self, service_name, service_desc=None, sstore=None,
|
||||
fstore=None, api=api, realm_name=None):
|
||||
self.service_name = service_name
|
||||
self.service_desc = service_desc
|
||||
self.service = services.service(service_name)
|
||||
@ -144,10 +145,16 @@ class Service(object):
|
||||
else:
|
||||
self.sstore = sysrestore.StateFile(paths.SYSRESTORE)
|
||||
|
||||
self.realm = None
|
||||
if fstore:
|
||||
self.fstore = fstore
|
||||
else:
|
||||
self.fstore = sysrestore.FileStore(paths.SYSRESTORE)
|
||||
|
||||
self.realm = realm_name
|
||||
self.suffix = DN()
|
||||
self.principal = None
|
||||
self.dercert = None
|
||||
self.api = api
|
||||
|
||||
@property
|
||||
def admin_conn(self):
|
||||
|
@ -81,7 +81,7 @@ class IPAUpgrade(service.Service):
|
||||
for _i in range(8):
|
||||
h = "%02x" % rand.randint(0,255)
|
||||
ext += h
|
||||
service.Service.__init__(self, "dirsrv")
|
||||
super(IPAUpgrade, self).__init__("dirsrv", realm_name=realm_name)
|
||||
serverid = installutils.realm_to_serverid(realm_name)
|
||||
self.filename = '%s/%s' % (paths.ETC_DIRSRV_SLAPD_INSTANCE_TEMPLATE % serverid, DSE)
|
||||
self.savefilename = '%s/%s.ipa.%s' % (paths.ETC_DIRSRV_SLAPD_INSTANCE_TEMPLATE % serverid, DSE, ext)
|
||||
@ -89,7 +89,6 @@ class IPAUpgrade(service.Service):
|
||||
self.modified = False
|
||||
self.serverid = serverid
|
||||
self.schema_files = schema_files
|
||||
self.realm = realm_name
|
||||
|
||||
def __start(self):
|
||||
services.service(self.service_name).start(self.serverid, ldapi=True)
|
||||
|
Loading…
Reference in New Issue
Block a user