Hi,

* Hide topology and domainlevel commands in the CLI
* Hide topology and domainlevel in the WebUI
* Set maximum allowed domain level to 0
* Do not configure and enable the topology plugin

https://fedorahosted.org/freeipa/ticket/5097
From 8cdc723d334540258fdc408933b3f47ccebf5b53 Mon Sep 17 00:00:00 2001
From: Tomas Babej <tba...@redhat.com>
Date: Tue, 7 Jul 2015 09:36:32 +0200
Subject: [PATCH] Hide topology and domainlevel features

* Hide topology and domainlevel commands in the CLI
* Hide topology and domainlevel in the WebUI
* Set maximum allowed domain level to 0
* Do not configure and enable the topology plugin

https://fedorahosted.org/freeipa/ticket/5097
---
 install/ui/src/freeipa/app.js                  |  3 ++-
 install/ui/src/freeipa/navigation/menu_spec.js |  4 ++--
 ipalib/constants.py                            |  2 +-
 ipalib/plugins/domainlevel.py                  |  2 ++
 ipalib/plugins/topology.py                     | 11 +++++++++++
 ipaserver/install/dsinstance.py                |  3 ++-
 6 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/install/ui/src/freeipa/app.js b/install/ui/src/freeipa/app.js
index f05e8213c0b17e21515fdfce5ab496516a02692e..92613b4a4cec1487a6bde1bdc0049b16d3321418 100644
--- a/install/ui/src/freeipa/app.js
+++ b/install/ui/src/freeipa/app.js
@@ -48,7 +48,8 @@ define([
     './service',
     './sudo',
     './trust',
-    './topology',
+    // Hide topology for now
+    // './topology',
     './user',
     './stageuser',
     'dojo/domReady!'
diff --git a/install/ui/src/freeipa/navigation/menu_spec.js b/install/ui/src/freeipa/navigation/menu_spec.js
index 120cba37dca7aa355bdb94b1ef16615b95afeb28..4265e98710cdaff0d2ea77ab1e62be1071b19c33 100644
--- a/install/ui/src/freeipa/navigation/menu_spec.js
+++ b/install/ui/src/freeipa/navigation/menu_spec.js
@@ -184,7 +184,7 @@ var nav = {};
                         { entity: 'trustconfig' }
                     ]
                 },
-                {
+/*              {
                     entity: 'topologysuffix',
                     label: '@i18n:tabs.topology',
                     facet: 'search',
@@ -205,7 +205,7 @@ var nav = {};
                             hidden: true
                         }
                     ]
-                },
+                },*/
                 {
                     name: 'apibrowser',
                     label: 'API browser',
diff --git a/ipalib/constants.py b/ipalib/constants.py
index a062505c349436332d430af4fd29c76d20c85343..fac937b5dc4900b5988c1b1d937c0061430c5e1d 100644
--- a/ipalib/constants.py
+++ b/ipalib/constants.py
@@ -234,4 +234,4 @@ IPA_ANCHOR_PREFIX = ':IPA:'
 SID_ANCHOR_PREFIX = ':SID:'
 
 MIN_DOMAIN_LEVEL = 0
-MAX_DOMAIN_LEVEL = 1
+MAX_DOMAIN_LEVEL = 0
diff --git a/ipalib/plugins/domainlevel.py b/ipalib/plugins/domainlevel.py
index 64e383006722fb2f32f5300d627b18b6daf051d4..9012a3203323f381c2b927f76371d2b1df4b32a0 100644
--- a/ipalib/plugins/domainlevel.py
+++ b/ipalib/plugins/domainlevel.py
@@ -74,6 +74,7 @@ def get_master_entries(ldap, api):
 @register()
 class domainlevel_get(Command):
     __doc__ = _('Query current Domain Level.')
+    NO_CLI = True
 
     has_output = domainlevel_output
 
@@ -90,6 +91,7 @@ class domainlevel_get(Command):
 @register()
 class domainlevel_set(Command):
     __doc__ = _('Change current Domain Level.')
+    NO_CLI = True
 
     has_output = domainlevel_output
 
diff --git a/ipalib/plugins/topology.py b/ipalib/plugins/topology.py
index de5ceb97583c9a40b4fe3783ec0fa40e6c325d0f..574e0d7ed42386f62a805272b6ec106bb946116c 100644
--- a/ipalib/plugins/topology.py
+++ b/ipalib/plugins/topology.py
@@ -41,6 +41,7 @@ class topologysegment(LDAPObject):
     """
     Topology segment.
     """
+    NO_CLI = True
     parent_object = 'topologysuffix'
     container_dn = api.env.container_topology
     object_name = _('segment')
@@ -195,6 +196,7 @@ class topologysegment(LDAPObject):
 class topologysegment_find(LDAPSearch):
     __doc__ = _('Search for topology segments.')
 
+    NO_CLI = True
     msg_summary = ngettext(
         '%(count)d segment matched',
         '%(count)d segments matched', 0
@@ -205,6 +207,7 @@ class topologysegment_find(LDAPSearch):
 class topologysegment_add(LDAPCreate):
     __doc__ = _('Add a new segment.')
 
+    NO_CLI = True
     msg_summary = _('Added segment "%(value)s"')
 
     def pre_callback(self, ldap, dn, entry_attrs, attrs_list, *keys, **options):
@@ -218,6 +221,7 @@ class topologysegment_add(LDAPCreate):
 class topologysegment_del(LDAPDelete):
     __doc__ = _('Delete a segment.')
 
+    NO_CLI = True
     msg_summary = _('Deleted segment "%(value)s"')
 
     def pre_callback(self, ldap, dn, *keys, **options):
@@ -230,6 +234,7 @@ class topologysegment_del(LDAPDelete):
 class topologysegment_mod(LDAPUpdate):
     __doc__ = _('Modify a segment.')
 
+    NO_CLI = True
     msg_summary = _('Modified segment "%(value)s"')
 
     def pre_callback(self, ldap, dn, entry_attrs, attrs_list, *keys, **options):
@@ -244,6 +249,7 @@ class topologysegment_reinitialize(LDAPQuery):
     __doc__ = _('Request a full re-initialization of the node '
                 'retrieving data from the other node.')
 
+    NO_CLI = True
     has_output = output.standard_value
     msg_summary = _('%(value)s')
 
@@ -315,6 +321,7 @@ class topologysegment_reinitialize(LDAPQuery):
 @register()
 class topologysegment_show(LDAPRetrieve):
     __doc__ = _('Display a segment.')
+    NO_CLI = True
 
 
 @register()
@@ -322,6 +329,7 @@ class topologysuffix(LDAPObject):
     """
     Suffix managed by the topology plugin.
     """
+    NO_CLI = True
     container_dn = api.env.container_topology
     object_name = _('suffix')
     object_name_plural = _('suffices')
@@ -352,6 +360,7 @@ class topologysuffix(LDAPObject):
 class topologysuffix_find(LDAPSearch):
     __doc__ = _('Search for topology suffices.')
 
+    NO_CLI = True
     msg_summary = ngettext(
         '%(count)d topology suffix matched',
         '%(count)d topology suffices matched', 0
@@ -403,6 +412,7 @@ class topologysuffix_mod(LDAPUpdate):
 @register()
 class topologysuffix_show(LDAPRetrieve):
     __doc__ = _('Show managed suffix.')
+    NO_CLI = True
 
 
 @register()
@@ -416,6 +426,7 @@ Checks done:
   2. check if servers don't have more than the recommended number of
      replication agreements
 ''')
+    NO_CLI = True
 
     def execute(self, *keys, **options):
 
diff --git a/ipaserver/install/dsinstance.py b/ipaserver/install/dsinstance.py
index 9f24189b6e442e0c55d5de41d15a03f89ecc9578..2e54bf94bf4bf73ffb1a56e8baa91cfbec7254fd 100644
--- a/ipaserver/install/dsinstance.py
+++ b/ipaserver/install/dsinstance.py
@@ -243,7 +243,8 @@ class DsInstance(service.Service):
         self.step("configuring DNS plugin", self.__config_dns_module)
         self.step("enabling entryUSN plugin", self.__enable_entryusn)
         self.step("configuring lockout plugin", self.__config_lockout_module)
-        self.step("configuring topology plugin", self.__config_topology_module)
+        # For now, do not configure topology plugin
+        #self.step("configuring topology plugin", self.__config_topology_module)
         self.step("creating indices", self.__create_indices)
         self.step("enabling referential integrity plugin", self.__add_referint_module)
         if enable_ssl:
-- 
2.1.0

-- 
Manage your subscription for the Freeipa-devel mailing list:
https://www.redhat.com/mailman/listinfo/freeipa-devel
Contribute to FreeIPA: http://www.freeipa.org/page/Contribute/Code

Reply via email to