Bug 50599

Summary: Add plugin to umcm-diagnostic to check if memberOf is activated
Product: UCS Reporter: Felix Botner <botner>
Component: GeneralAssignee: Felix Botner <botner>
Status: CLOSED FIXED QA Contact: Erik Damrose <damrose>
Severity: normal    
Priority: P5 CC: best, damrose
Version: UCS 4.4   
Target Milestone: UCS 4.4-3-errata   
Hardware: Other   
OS: Linux   
What kind of report is it?: Development Internal What type of bug is this?: ---
Who will be affected by this bug?: --- How will those affected feel about the bug?: ---
User Pain: Enterprise Customer affected?:
School Customer affected?: ISV affected?:
Waiting Support: Flags outvoted (downgraded) after PO Review:
Ticket number: Bug group (optional):
Max CVSS v3 score:

Description Felix Botner univentionstaff 2019-12-05 09:44:17 CET
Abnahmekriterium: Ein System-Check in der UMC erkennt, wenn das memberOf overlay deaktiviert ist und verlinkt auf den SDB-Artikel in dem die Aktivierung dokumentiert ist. Im Text wird darauf verwiesen, das es Dienste gibt die dieses Overlay, das bei Neuinstallationen default ist, benötigen.
Comment 1 Florian Best univentionstaff 2019-12-05 10:35:21 CET
A system check in the UMC recognizes if the memberOf overlay is disabled and links to the SDB article in which the activation is documented. The text refers to the fact that there are services that use this overlay, which is the default for new installations.
Comment 2 Felix Botner univentionstaff 2019-12-09 16:39:55 CET
added umc/python/diagnostic/plugins/58_check_memberOf.py
Comment 3 Erik Damrose univentionstaff 2019-12-10 14:13:25 CET
OK: Check if UCR ldap/overlay/memberof is true. That does not check if the referenced article https://help.univention.com/t/6439 has been completed (i.e. if univention-update-memberof has actually been run), but it is a good indicator for this check.
OK: yaml

Reopen: When clicking the 'Test again' button, the UCR instance is not reloaded, so the current state is not checked and reflected in the frontend. Proposed patch:

@@ -48,6 +48,7 @@ links = [{
 
 def run(_umc_instance):
        if util.is_service_active('LDAP'):
+               ucr.load()
                if not ucr.is_true('ldap/overlay/memberof'):
                        MODULE.error(warning_message)
                        raise Warning(description=warning_message)
Comment 4 Felix Botner univentionstaff 2019-12-10 17:35:35 CET
(In reply to Erik Damrose from comment #3)
> OK: Check if UCR ldap/overlay/memberof is true. That does not check if the
> referenced article https://help.univention.com/t/6439 has been completed
> (i.e. if univention-update-memberof has actually been run), but it is a good
> indicator for this check.
> OK: yaml
> 
> Reopen: When clicking the 'Test again' button, the UCR instance is not
> reloaded, so the current state is not checked and reflected in the frontend.
> Proposed patch:
> 
> @@ -48,6 +48,7 @@ links = [{
>  
>  def run(_umc_instance):
>         if util.is_service_active('LDAP'):
> +               ucr.load()
>                 if not ucr.is_true('ldap/overlay/memberof'):
>                         MODULE.error(warning_message)
>                         raise Warning(description=warning_message)

OK, fixed
Comment 5 Erik Damrose univentionstaff 2019-12-10 18:27:40 CET
OK: "Test again" button in UMC works.
OK: yaml
Verified
Comment 6 Erik Damrose univentionstaff 2019-12-11 16:49:43 CET
<http://errata.software-univention.de/ucs/4.4/395.html>