diff options
author | Martin Basti <mbasti@redhat.com> | 2014-11-18 19:49:15 +0100 |
---|---|---|
committer | Jan Cholasta <jcholast@redhat.com> | 2014-12-10 16:59:56 +0000 |
commit | 337faf506462a01c6dbcd00f2039ed5627691864 (patch) | |
tree | c8996b70536e5f6d28a7951d7d244ad502d6e42f /ipaplatform/redhat | |
parent | 6d3403edacbf547c31085acb0d542ec7f56c6e90 (diff) | |
download | freeipa-337faf506462a01c6dbcd00f2039ed5627691864.tar.gz freeipa-337faf506462a01c6dbcd00f2039ed5627691864.tar.xz freeipa-337faf506462a01c6dbcd00f2039ed5627691864.zip |
Using wget to get status of CA
This is just workaround
Ticket: https://fedorahosted.org/freeipa/ticket/4676
Reviewed-By: Jan Cholasta <jcholast@redhat.com>
Diffstat (limited to 'ipaplatform/redhat')
-rw-r--r-- | ipaplatform/redhat/services.py | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/ipaplatform/redhat/services.py b/ipaplatform/redhat/services.py index 58ffebc48..20d0adec4 100644 --- a/ipaplatform/redhat/services.py +++ b/ipaplatform/redhat/services.py @@ -24,6 +24,7 @@ Contains Red Hat OS family-specific service class implementations. import os import time +import xml.dom.minidom from ipaplatform.tasks import tasks from ipaplatform.base import services as base_services @@ -185,7 +186,31 @@ class RedHatCAService(RedHatService): op_timeout = time.time() + timeout while time.time() < op_timeout: try: - status = dogtag.ca_status(use_proxy=use_proxy) + # FIXME https://fedorahosted.org/freeipa/ticket/4716 + # workaround + # + # status = dogtag.ca_status(use_proxy=use_proxy) + # + port = 8443 + if use_proxy: + port = 443 + + url = "https://%(host_port)s%(path)s" % { + "host_port": ipautil.format_netloc(api.env.ca_host, port), + "path": "/ca/admin/ca/getStatus" + } + + args = [ + paths.BIN_WGET, + '-S', '-O', '-', + '--timeout=30', + url + ] + + stdout, stderr, returncode = ipautil.run(args) + + status = dogtag._parse_ca_status(stdout) + # end of workaround except Exception: status = 'check interrupted' root_logger.debug('The CA status is: %s' % status) |