Bug 24590 - UDM-Modul-Tests
UDM-Modul-Tests
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC - Domain management (Generic)
UCS 3.0
Other Linux
: P5 normal (vote)
: UCS 3.0
Assigned To: Florian Best
Lukas Walter
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-11-14 13:39 CET by Alexander Kläser
Modified: 2011-12-13 15:49 CET (History)
0 users

See Also:
What kind of report is it?: ---
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:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2011-11-14 13:39:54 CET
Alle UDM-Objekttypen sollten einmal angelegt, bearbeitet, gespeichert und dann gelöscht werden, um zu überprüfen, dass dort keine übersehenen Fehler bei diesen grundlegenden Operationen auftreten.
Comment 1 Florian Best univentionstaff 2011-11-14 14:11:19 CET
Traceback bei Computer editieren:
[Computer] -> add [Computer: Windows Workstation/Server] (nur Computername angeben)
dann in [Navigation]->Computers -> angelegten Computer editieren -> Computername ändern -> speichern
in den [Computer] tab wechseln, unaktualisiertes objekt editieren (alter Name, Anzeige wird nicht refreshed, weil nicht im Computertab editiert) -> Traceback:

Execution of command 'udm/layout' has failed:

Traceback (most recent call last):
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/__init__.py', line 97, in execute
func( request )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/__init__.py', line 622, in layout
self.finished( request.id, module.get_layout( object_dn ) )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 468, in get_layout
if mod.name != self.name:
AttributeError: 'NoneType' object has no attribute 'name'
Comment 2 Florian Best univentionstaff 2011-11-14 14:51:26 CET
Benutzer erstellen / modifizieren / löschen funktioniert
Gruppen erstellen / modifizieren / löschen funktioniert

Computer: Windows Workstation/Server erstellen / modifizieren / löschen funktioniert
Computer: Windows Domaincontroller erstellen / modifizieren / löschen funktioniert
Computer: Thin Client erstellen / modifizieren / löschen funktioniert
Computer: Mobile Client erstellen / modifizieren / löschen funktioniert
Computer: Member Server erstellen / modifizieren / löschen funktioniert
Computer: Managed Client erstellen / modifizieren / löschen funktioniert
Computer: Mac OS X Client erstellen / modifizieren / löschen funktioniert
Computer: IP managed client erstellen / modifizieren / löschen funktioniert
Computer: Domain trust account erstellen / modifizieren / löschen funktioniert 
Computer: Domain Controller Slave erstellen / modifizieren / löschen funktioniert
Computer: Domain Controller Master erstellen / modifizieren / löschen funktioniert
Computer: Domain Controller Backup erstellen / modifizieren / löschen funktioniert
Comment 3 Florian Best univentionstaff 2011-11-14 14:53:14 CET
Drucker erstellen / modifizieren / löschen funktioniert

Traceback bei ungültigem Drucker (Protokoll gewählt, Ziel unausgefüllt)
File '/usr/lib/pymodules/python2.6/notifier/threads.py', line 81, in _run
tmp = self._function()
File '/usr/lib/pymodules/python2.6/notifier/__init__.py', line 104, in __call__
return self._function( *tmp, **self._kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/__init__.py', line 261, in _thread
dn = module.create( properties, container = options.get( 'container' ), superordinate = options.get( 'superordinate' ) )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 130, in wrapper_func
ret = func( *args, **kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 288, in create
self._map_properties( obj, ldap_object )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 240, in _map_properties
raise UMC_OptionTypeError( _( 'The property %s has an invalid value: %s' ) % ( property_obj.short_description, str( e ) ) )

UMC_OptionTypeError: Die Eigenschaft 'Verbindung' hat einen nicht g�ltigen Wert: Verbindung: Nicht genug Parameter
Comment 4 Lukas Walter univentionstaff 2011-11-14 15:07:44 CET
Beim Anlegen/Editieren von UVMM:Profile Objekten hat das Abwählen der Checkboxen für...

Use para-virtual driver for hard drives
Use para-virtual driver for network interface
Use para-virtual driver for CDROM drives
Remote access

keinen Effekt.

D.h.: Die Änderungen werden beim Speichern nicht übernommen, weder beim Anlegen eines neuen UVMM:Profile Objekts noch beim Editieren eines bereits vorhandenen.
Zudem: Die Häkchen in den betroffenen Checkboxen verschwinden beim Mouseover; ob sie dann wieder angewählt werden oder nicht spielt reine Rolle, die Änderungen werden in keinem Fall übernommen.
Comment 5 Lukas Walter univentionstaff 2011-11-14 15:34:08 CET
(In reply to comment #4)
> Beim Anlegen/Editieren von UVMM:Profile Objekten hat das Abwählen der
> Checkboxen für...
> 
> Use para-virtual driver for hard drives
> Use para-virtual driver for network interface
> Use para-virtual driver for CDROM drives
> Remote access
> 
> keinen Effekt.
> 
> D.h.: Die Änderungen werden beim Speichern nicht übernommen, weder beim Anlegen
> eines neuen UVMM:Profile Objekts noch beim Editieren eines bereits vorhandenen.
> Zudem: Die Häkchen in den betroffenen Checkboxen verschwinden beim Mouseover;
> ob sie dann wieder angewählt werden oder nicht spielt reine Rolle, die
> Änderungen werden in keinem Fall übernommen.
Dies gilt offenbar für das Anlegen/Editieren aller UDM-Objekte.
Siehe auch: https://forge.univention.org/bugzilla/show_bug.cgi?id=24409
Comment 6 Lukas Walter univentionstaff 2011-11-14 16:00:35 CET
Wird beim Editieren eines "Policy: Repository Server" Objekts das Eingabefeld für "Repository Server" geleert tritt ein Traceback auf:


Internal module error: An error occured during command processing.

Server error message:

File '/usr/lib/pymodules/python2.6/notifier/threads.py', line 81, in _run
tmp = self._function()
File '/usr/lib/pymodules/python2.6/notifier/__init__.py', line 104, in __call__
return self._function( *tmp, **self._kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/__init__.py', line 299, in _thread
module.modify( properties )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 130, in wrapper_func
ret = func( *args, **kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 348, in modify
self._map_properties( obj, ldap_object )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 240, in _map_properties
raise UMC_OptionTypeError( _( 'The property %s has an invalid value: %s' ) % ( property_obj.short_description, str( e ) ) )

UMC_OptionTypeError: The property Repository server has an invalid value: An empty value is not allowed


Das Anlegen eines "Policy: Repository Server" Objekts mit von vornherein leerer Eingabemaske "Repository Server" ist dagegen möglich. Im von mir getesteten Fall wurde schlicht trotz des leeren Eingabefelds der einzige in der Domäne vorhandene Host und Master (der auch als default-value zu Anfang in der Eingabemaske stand) automatisch als Wert eingetragen.
Comment 7 Florian Best univentionstaff 2011-11-14 16:34:05 CET
Shares erstellen / modifizieren / löschen funktioniert
Share -> add lädt ununterbrochen (fixed, noch nicht gebaut)

Richtlinien: Client-Peripherie ändern funktioniert nicht

Richtlinie Druckserver: Traceback bei nicht existierendem oder leerem Druckserverfeld:
File '/usr/lib/pymodules/python2.6/notifier/threads.py', line 81, in _run
tmp = self._function()
File '/usr/lib/pymodules/python2.6/notifier/__init__.py', line 104, in __call__
return self._function( *tmp, **self._kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/__init__.py', line 299, in _thread
module.modify( properties )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 130, in wrapper_func
ret = func( *args, **kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 348, in modify
self._map_properties( obj, ldap_object )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 240, in _map_properties
raise UMC_OptionTypeError( _( 'The property %s has an invalid value: %s' ) % ( property_obj.short_description, str( e ) ) )

UMC_OptionTypeError: Die Eigenschaft 'Druckserver' hat einen nicht g�ltigen Wert: Ein leerer Wert ist nicht erlaubt!
Comment 8 Florian Best univentionstaff 2011-11-14 16:53:08 CET
Settings: Samba Domain:
Samba SID nicht als Pflichtfeld (*) markiert

alle weiteren Richtlinien: erstellen / editieren / löschen funktioniert
Comment 9 Lukas Walter univentionstaff 2011-11-14 16:58:31 CET
(In reply to comment #8)
> Settings: Samba Domain:
> Samba SID nicht als Pflichtfeld (*) markiert
> 
> alle weiteren Richtlinien: erstellen / editieren / löschen funktioniert

Dazu existiert bereits ein Bug.
https://forge.univention.org/bugzilla/show_bug.cgi?id=24601
Comment 10 Florian Best univentionstaff 2011-11-14 17:31:03 CET
Networks: Network 
Nagios time period
Nagios service
Mail: IMAP folder
Mail: Mailing lists
UVMM: Profile
UVMM: Machine information

erstellen / modifizieren / löschen funktioniert alles
Comment 11 Florian Best univentionstaff 2011-11-15 10:50:55 CET
Mail: IMAP folder
Wenn kein SMTP-Server in der Domäne existiert ist die Dropdownliste für Host leer, dadurch kann natürlich kein IMAP-Folder angelegt werden: Es fehlt ein Hinweis

Traceback bei falscher Netmask: 255.255.255.255 in DHCP Subnet

File '/usr/lib/pymodules/python2.6/notifier/threads.py', line 81, in _run
tmp = self._function()
File '/usr/lib/pymodules/python2.6/notifier/__init__.py', line 104, in __call__
return self._function( *tmp, **self._kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/__init__.py', line 261, in _thread
dn = module.create( properties, container = options.get( 'container' ), superordinate = options.get( 'superordinate' ) )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 130, in wrapper_func
ret = func( *args, **kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 288, in create
self._map_properties( obj, ldap_object )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 240, in _map_properties
raise UMC_OptionTypeError( _( 'The property %s has an invalid value: %s' ) % ( property_obj.short_description, str( e ) ) )

UMC_OptionTypeError: The property Netmask has an invalid value: Netmask: 

###################################################

Traceback bei nicht angegebener HardwareAdresse in DHCP Host, diese ist nicht als Pflichtfeld(*) markiert.

File '/usr/lib/pymodules/python2.6/notifier/threads.py', line 81, in _run
tmp = self._function()
File '/usr/lib/pymodules/python2.6/notifier/__init__.py', line 104, in __call__
return self._function( *tmp, **self._kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/__init__.py', line 261, in _thread
dn = module.create( properties, container = options.get( 'container' ), superordinate = options.get( 'superordinate' ) )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 130, in wrapper_func
ret = func( *args, **kwargs )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 288, in create
self._map_properties( obj, ldap_object )
File '/usr/lib/pymodules/python2.6/univention/management/console/modules/udm/udm_ldap.py', line 240, in _map_properties
raise UMC_OptionTypeError( _( 'The property %s has an invalid value: %s' ) % ( property_obj.short_description, str( e ) ) )

UMC_OptionTypeError: The property Hardware address has an invalid value: Hardware address: not enough arguments
Comment 12 Alexander Kläser univentionstaff 2011-11-15 11:01:09 CET
(In reply to comment #1)
> Traceback bei Computer editieren:
> [Computer] -> add [Computer: Windows Workstation/Server] (nur Computername
> angeben)
> dann in [Navigation]->Computers -> angelegten Computer editieren ->
> Computername ändern -> speichern
> in den [Computer] tab wechseln, unaktualisiertes objekt editieren (alter Name,
> Anzeige wird nicht refreshed, weil nicht im Computertab editiert) -> Traceback:

Das Problem: Wird ein nicht existierendes UDM-Objekt geöffnet (weil es in einem anderen Tab umbenannt wurde), wird ein Traceback angezeigt; schöner wäre eine Hinweis, dass das Objekt nicht existiert. 

→ Ausgelagert nach Bug 24620
Comment 13 Alexander Kläser univentionstaff 2011-11-16 13:04:54 CET
(In reply to comment #3)
> Drucker erstellen / modifizieren / löschen funktioniert
> 
> Traceback bei ungültigem Drucker (Protokoll gewählt, Ziel unausgefüllt)

→ ausgelagert nach Bug 24654


(In reply to comment #4)
> Beim Anlegen/Editieren von UVMM:Profile Objekten hat das Abwählen der
> Checkboxen für...
> ...
> keinen Effekt.

→ kann ich in der aktuellen Version nicht nachvollziehen.


(In reply to comment #6)
> Wird beim Editieren eines "Policy: Repository Server" Objekts das Eingabefeld
> für "Repository Server" geleert tritt ein Traceback auf:

→ ausgelagert nach Bug 24662


(In reply to comment #7)
> ...
> Richtlinien: Client-Peripherie ändern funktioniert nicht

→ ausgelagert nach Bug 24663

> Richtlinie Druckserver: Traceback bei nicht existierendem oder leerem
> Druckserverfeld:

→ ausgelagert nach Bug 24664 


(In reply to comment #8)
> Settings: Samba Domain:
> Samba SID nicht als Pflichtfeld (*) markiert

→ ausgelagert nach Bug 24665 und markiert als Duplicate von Bug 24601


(In reply to comment #11)
> Mail: IMAP folder
> Wenn kein SMTP-Server in der Domäne existiert ist die Dropdownliste für Host
> leer, dadurch kann natürlich kein IMAP-Folder angelegt werden: Es fehlt ein
> Hinweis

→ ausgelagert nach Bug 24666

> Traceback bei falscher Netmask: 255.255.255.255 in DHCP Subnet
> ...

→ ausgelagert nach Bug 24667

> Traceback bei nicht angegebener HardwareAdresse in DHCP Host, diese ist nicht
> als Pflichtfeld(*) markiert.
> ...

→ ausgelagert nach Bug 24668


Damit kann dieser Bug zu → RESOLVED
Comment 14 Lukas Walter univentionstaff 2011-11-17 09:21:24 CET
verified
Comment 15 Sönke Schwardt-Krummrich univentionstaff 2011-12-13 15:49:51 CET
UCS 3.0-0 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert
werden: "Clone This Bug"