diff options
author | Jan Cholasta <jcholast@redhat.com> | 2016-11-02 06:30:38 +0100 |
---|---|---|
committer | Jan Cholasta <jcholast@redhat.com> | 2016-11-11 12:17:25 +0100 |
commit | 08a446a6bc516936497c1e0f278a699148f6330c (patch) | |
tree | a4577ee3a3c1cda187e9a57fab6c47758243fcef /ipaserver/install | |
parent | 269ca6c4547fc017bb3a88e994ca770047122b3e (diff) | |
download | freeipa-08a446a6bc516936497c1e0f278a699148f6330c.tar.gz freeipa-08a446a6bc516936497c1e0f278a699148f6330c.tar.xz freeipa-08a446a6bc516936497c1e0f278a699148f6330c.zip |
install: fix subclassing of knob groups
Add new @group decorator to declare an installer class as a knob group
instead of subclassing Group, so that subclassing the installer does not
create duplicates of the original group.
https://fedorahosted.org/freeipa/ticket/6392
Reviewed-By: Martin Basti <mbasti@redhat.com>
Diffstat (limited to 'ipaserver/install')
-rw-r--r-- | ipaserver/install/server/common.py | 8 | ||||
-rw-r--r-- | ipaserver/install/server/install.py | 10 |
2 files changed, 5 insertions, 13 deletions
diff --git a/ipaserver/install/server/common.py b/ipaserver/install/server/common.py index ad3282af8..4ee83f15e 100644 --- a/ipaserver/install/server/common.py +++ b/ipaserver/install/server/common.py @@ -12,7 +12,7 @@ import six from ipapython.dn import DN from ipapython.ipautil import CheckedIPAddress from ipapython.install import common, core -from ipapython.install.core import Knob +from ipapython.install.core import Knob, group from ipalib.util import validate_domain_name from ipaserver.install import bindinstance from ipapython.dnsutil import check_zone_overlap @@ -29,7 +29,8 @@ VALID_SUBJECT_ATTRS = ['st', 'o', 'ou', 'dnqualifier', 'c', 'incorporationcountry', 'businesscategory'] -class BaseServerCA(common.Installable, core.Group, core.Composite): +@group +class BaseServerCA(common.Installable, core.Composite): description = "certificate system" external_ca = Knob( @@ -160,7 +161,8 @@ class BaseServerCA(common.Installable, core.Group, core.Composite): ) -class BaseServerDNS(common.Installable, core.Group, core.Composite): +@group +class BaseServerDNS(common.Installable, core.Composite): description = "DNS" forwarders = Knob( diff --git a/ipaserver/install/server/install.py b/ipaserver/install/server/install.py index 48ce315c4..22e0cd3d7 100644 --- a/ipaserver/install/server/install.py +++ b/ipaserver/install/server/install.py @@ -1138,10 +1138,6 @@ def uninstall(installer): class ServerCA(BaseServerCA): - - # FIXME: Following Knobs are inherited because framework is not able to - # help groups correctly. - external_ca = Knob(BaseServerCA.external_ca) external_ca_type = Knob(BaseServerCA.external_ca_type) external_cert_files = Knob(BaseServerCA.external_cert_files) @@ -1176,12 +1172,6 @@ class ServerCA(BaseServerCA): cli_aliases=['pkinit_pin'], ) - dirsrv_cert_name = Knob(BaseServerCA.dirsrv_cert_name) - http_cert_name = Knob(BaseServerCA.http_cert_name) - pkinit_cert_name = Knob(BaseServerCA.pkinit_cert_name) - ca_cert_files = Knob(BaseServerCA.ca_cert_files) - subject = Knob(BaseServerCA.subject) - ca_signing_algorithm = Knob(BaseServerCA.ca_signing_algorithm) skip_schema_check = None |