diff options
author | Christian Heimes <cheimes@redhat.com> | 2016-11-18 15:42:23 +0100 |
---|---|---|
committer | Martin Basti <mbasti@redhat.com> | 2016-11-24 16:30:32 +0100 |
commit | 6409abf1a60f3548203e6607a2b157ff72af2c89 (patch) | |
tree | 2d1c06b3fc85d91f9d4bea67162a1ab9dcdca07e /ipaserver/install | |
parent | 2cbaf156045769b54150e4d4c3c1071f164a16fb (diff) | |
download | freeipa-6409abf1a60f3548203e6607a2b157ff72af2c89.tar.gz freeipa-6409abf1a60f3548203e6607a2b157ff72af2c89.tar.xz freeipa-6409abf1a60f3548203e6607a2b157ff72af2c89.zip |
Break ipaplatform / ipalib import cycle of hell
Here is an attempt to break the import cycle of hell between ipaplatform
and ipalib. All services now pass an ipalib.api object to
services.service(). RedHatServices.__init__() still needs to do a local
import because it initializes its wellknown service dict with service
instances.
Signed-off-by: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Martin Basti <mbasti@redhat.com>
Diffstat (limited to 'ipaserver/install')
-rw-r--r-- | ipaserver/install/adtrustinstance.py | 6 | ||||
-rw-r--r-- | ipaserver/install/bindinstance.py | 2 | ||||
-rw-r--r-- | ipaserver/install/dns.py | 2 | ||||
-rw-r--r-- | ipaserver/install/httpinstance.py | 4 | ||||
-rw-r--r-- | ipaserver/install/installutils.py | 2 | ||||
-rw-r--r-- | ipaserver/install/ipa_restore.py | 2 | ||||
-rw-r--r-- | ipaserver/install/opendnssecinstance.py | 2 | ||||
-rw-r--r-- | ipaserver/install/server/replicainstall.py | 2 | ||||
-rw-r--r-- | ipaserver/install/server/upgrade.py | 10 | ||||
-rw-r--r-- | ipaserver/install/service.py | 2 | ||||
-rw-r--r-- | ipaserver/install/upgradeinstance.py | 3 |
11 files changed, 19 insertions, 18 deletions
diff --git a/ipaserver/install/adtrustinstance.py b/ipaserver/install/adtrustinstance.py index 632052ab4..22a4a1d57 100644 --- a/ipaserver/install/adtrustinstance.py +++ b/ipaserver/install/adtrustinstance.py @@ -700,14 +700,14 @@ class ADTRUSTInstance(service.Service): def __start(self): try: self.start() - services.service('winbind').start() + services.service('winbind', api).start() except Exception: root_logger.critical("CIFS services failed to start") def __stop(self): self.backup_state("running", self.is_running()) try: - services.service('winbind').stop() + services.service('winbind', api).stop() self.stop() except Exception: pass @@ -859,7 +859,7 @@ class ADTRUSTInstance(service.Service): self.restore_state("running") self.restore_state("enabled") - winbind = services.service("winbind") + winbind = services.service("winbind", api) # Always try to stop and disable smb service, since we do not leave # working configuration after uninstall try: diff --git a/ipaserver/install/bindinstance.py b/ipaserver/install/bindinstance.py index f2ece576a..a944be2bb 100644 --- a/ipaserver/install/bindinstance.py +++ b/ipaserver/install/bindinstance.py @@ -617,7 +617,7 @@ class BindInstance(service.Service): self.forwarders = None self.sub_dict = None self.reverse_zones = [] - self.named_regular = services.service('named-regular') + self.named_regular = services.service('named-regular', api) suffix = ipautil.dn_attribute_property('_suffix') diff --git a/ipaserver/install/dns.py b/ipaserver/install/dns.py index 5b40c03c3..dd4ab7b7e 100644 --- a/ipaserver/install/dns.py +++ b/ipaserver/install/dns.py @@ -219,7 +219,7 @@ def install_check(standalone, api, replica, options, hostname): "Only one DNSSEC key master is supported in current version.") if options.kasp_db_file: - dnskeysyncd = services.service('ipa-dnskeysyncd') + dnskeysyncd = services.service('ipa-dnskeysyncd', api) if not dnskeysyncd.is_installed(): raise RuntimeError("ipa-dnskeysyncd is not configured on this " diff --git a/ipaserver/install/httpinstance.py b/ipaserver/install/httpinstance.py index cd1674362..0fdffca7b 100644 --- a/ipaserver/install/httpinstance.py +++ b/ipaserver/install/httpinstance.py @@ -464,7 +464,7 @@ class HTTPInstance(service.Service): os.chmod(target_fname, 0o644) def enable_and_start_oddjobd(self): - oddjobd = services.service('oddjobd') + oddjobd = services.service('oddjobd', api) self.sstore.backup_state('oddjobd', 'running', oddjobd.is_running()) self.sstore.backup_state('oddjobd', 'enabled', oddjobd.is_enabled()) @@ -485,7 +485,7 @@ class HTTPInstance(service.Service): enabled = self.restore_state("enabled") # Restore oddjobd to its original state - oddjobd = services.service('oddjobd') + oddjobd = services.service('oddjobd', api) if not self.sstore.restore_state('oddjobd', 'running'): try: diff --git a/ipaserver/install/installutils.py b/ipaserver/install/installutils.py index 9e509e461..214d42c56 100644 --- a/ipaserver/install/installutils.py +++ b/ipaserver/install/installutils.py @@ -984,7 +984,7 @@ def stopped_service(service, instance_name=""): 'the next set of commands is being executed.', service, log_instance_name) - service_obj = services.service(service) + service_obj = services.service(service, api) # Figure out if the service is running, if not, yield if not service_obj.is_running(instance_name): diff --git a/ipaserver/install/ipa_restore.py b/ipaserver/install/ipa_restore.py index 21403afcf..3dc65229d 100644 --- a/ipaserver/install/ipa_restore.py +++ b/ipaserver/install/ipa_restore.py @@ -410,7 +410,7 @@ class Restore(admintool.AdminTool): self.log.info('Starting IPA services') run(['ipactl', 'start']) self.log.info('Restarting SSSD') - sssd = services.service('sssd') + sssd = services.service('sssd', api) sssd.restart() http.remove_httpd_ccache() finally: diff --git a/ipaserver/install/opendnssecinstance.py b/ipaserver/install/opendnssecinstance.py index ea6cb51d4..39b81b6b4 100644 --- a/ipaserver/install/opendnssecinstance.py +++ b/ipaserver/install/opendnssecinstance.py @@ -317,7 +317,7 @@ class OpenDNSSECInstance(service.Service): except Exception: pass - ods_exporter = services.service('ipa-ods-exporter') + ods_exporter = services.service('ipa-ods-exporter', api) try: ods_exporter.stop() except Exception: diff --git a/ipaserver/install/server/replicainstall.py b/ipaserver/install/server/replicainstall.py index ee1147d3c..1889bb084 100644 --- a/ipaserver/install/server/replicainstall.py +++ b/ipaserver/install/server/replicainstall.py @@ -451,7 +451,7 @@ def promote_sssd(host_name): sssdconfig.save_domain(domain) sssdconfig.write() - sssd = services.service('sssd') + sssd = services.service('sssd', api) try: sssd.restart() except CalledProcessError: diff --git a/ipaserver/install/server/upgrade.py b/ipaserver/install/server/upgrade.py index 64810fbbf..ea38f7067 100644 --- a/ipaserver/install/server/upgrade.py +++ b/ipaserver/install/server/upgrade.py @@ -1229,21 +1229,21 @@ def uninstall_dogtag_9(ds, http): dsdb.untrack_server_cert("Server-Cert") try: - services.service('pki-cad').disable('pki-ca') + services.service('pki-cad', api).disable('pki-ca') except Exception as e: root_logger.warning("Failed to disable pki-cad: %s", e) try: - services.service('pki-cad').stop('pki-ca') + services.service('pki-cad', api).stop('pki-ca') except Exception as e: root_logger.warning("Failed to stop pki-cad: %s", e) if serverid is not None: try: - services.service('dirsrv').disable(serverid) + services.service('dirsrv', api).disable(serverid) except Exception as e: root_logger.warning("Failed to disable dirsrv: %s", e) try: - services.service('dirsrv').stop(serverid) + services.service('dirsrv', api).stop(serverid) except Exception as e: root_logger.warning("Failed to stop dirsrv: %s", e) @@ -1260,7 +1260,7 @@ def mask_named_regular(): if bindinstance.named_conf_exists(): root_logger.info('[Masking named]') - named = services.service('named-regular') + named = services.service('named-regular', api) try: named.stop() except Exception as e: diff --git a/ipaserver/install/service.py b/ipaserver/install/service.py index bdb8e56e4..89d6b907a 100644 --- a/ipaserver/install/service.py +++ b/ipaserver/install/service.py @@ -143,7 +143,7 @@ class Service(object): keytab=None): self.service_name = service_name self.service_desc = service_desc - self.service = services.service(service_name) + self.service = services.service(service_name, api) self.steps = [] self.output_fd = sys.stdout diff --git a/ipaserver/install/upgradeinstance.py b/ipaserver/install/upgradeinstance.py index b22f15a0b..8e2843686 100644 --- a/ipaserver/install/upgradeinstance.py +++ b/ipaserver/install/upgradeinstance.py @@ -91,7 +91,8 @@ class IPAUpgrade(service.Service): self.schema_files = schema_files def __start(self): - services.service(self.service_name).start(self.serverid, ldapi=True) + srv = services.service(self.service_name, api) + srv.start(self.serverid, ldapi=True) api.Backend.ldap2.connect() def __stop_instance(self): |