Bug 21222 - Defaults für Benutzer Templates werden nicht aus extended Attributes übernommen
Defaults für Benutzer Templates werden nicht aus extended Attributes übernommen
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UDM (Generic)
UCS 2.4
Other Linux
: P5 normal (vote)
: UCS 2.4-2
Assigned To: Felix Botner
Alexander Kläser
:
Depends on: 21180
Blocks:
  Show dependency treegraph
 
Reported: 2011-01-17 16:14 CET by Felix Botner
Modified: 2011-04-04 15:46 CEST (History)
2 users (show)

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 Felix Botner univentionstaff 2011-01-17 16:14:21 CET
+++ This bug was initially created as a clone of Bug #21180 +++

Das Benutzer Templates UDM Modul wurde um einige extended Attributes erweitert.
Nun wird ein Benutzer Template angelegt. Hier kann man auch die Felder der
"extended Attributes" mit Default Werten befüllen, diese werden jedoch nicht
beim Anlegen eines Benutzers über das Template übernommen.
Comment 1 Felix Botner univentionstaff 2011-01-17 16:57:05 CET
Gefixt, die Defaults der extended Attributes an Templates sollten nun auch an das Modul weitergereicht werden.

QA:

Am besten ein extended Attr. für das Benutzer Modul anlegen und dann das exakt gleiche Attr. für settings/usertemplate (der "name" muss natürlich unterschiedlich sein, der "CLIName" darf NICHT anders sein, er muss exakt so lauten wie bei dem Benutzer ext. Attr.)

Dann default für das Usertemplate ext. Attr. setzen. Wenn nun ein Benutzer mit diesem Template angelegt, sollte der default Wert aus dem Template übernommen werden.

Bitte auch mit multivalue extended Attr. testen und mehreren Templates testen.

Changelog Eintrag angelegt.
Comment 2 Felix Botner univentionstaff 2011-01-25 12:22:41 CET
Es reicht natürlich ein ext. Attribute, verknüpft mit users/user und settings/usertemplate.
Comment 3 Felix Botner univentionstaff 2011-02-18 12:12:56 CET
Das Template wird noch nicht richtig initialisiert, wenn man vorher im UDM das Template nicht bearbeitet, funktioniert die Übernahme nicht.
Comment 4 Felix Botner univentionstaff 2011-02-18 14:39:09 CET
Sönke hat die Änderungen aus der Komponente übernommen. Für die QA wichtig, nachdem die Templates angelegt und konfiguriert wurden, abmelden/anmelden und dann gleich einen neuen Benutzer anlegen. Wenn man vor dem Anlegen des Benutzers bereits am Template oder anderen Benutzern gearbeitet hat, kann das den Test verfälschen.
Comment 5 Alexander Kläser univentionstaff 2011-02-25 10:19:25 CET
QA: Der Bug konnte nachvollzogen werden. Jedoch erhält man nun beim Anlegen eines extended Attribute eine Fehlermeldung, die bei der 2.4-1-Version nicht auftrat:

echo 'deb http://192.168.0.10/build2/ ucs_2.4-0-ucs2.4-2/all/
deb http://192.168.0.10/build2/ ucs_2.4-0-ucs2.4-2/$(ARCH)/
deb http://192.168.0.10/build2/ ucs_2.4-0-ucs2.4-2/extern/' \
>> /etc/apt/sources.list
apt-get update
# geändert wurde laut SVN-Log nur modules.py
apt-get install python-univention-directory-manager 
eval "$(ucr shell)"
udm settings/extended_attribute create \
--ignore_exists \
--position "cn=custom attributes,cn=univention,$ldap_base" \
--set module="settings/usertemplate" \
--set module="users/user" \
--set ldapMapping='univentionFreeAttribute1' \
--set objectClass='univentionFreeAttributes' \
--set name='myValue' \
--set shortDescription='My Value' \
--set longDescription='My Value' \
--set tabName='My Tab' \
--set tabPosition=1 \
--set tabAdvanced=0 \
--set overwriteTab='0' \
--set valueRequired='0' \
--set CLIName='myType' \
--set syntax='string' \
--set mayChange='1' \
--set multivalue='0' \
--set deleteObjectClass='1' \
--set hook='None'

Danach erhält man die folgende Fehlermeldung: 

Traceback (most recent call last):
  File "/usr/share/univention-directory-manager-tools/univention-cli-server", line 233, in doit
    output = univention.admincli.admin.doit(arglist)
  File "/usr/lib/python2.4/site-packages/univention/admincli/admin.py", line 742, in doit
    dn=object.create()
  File "/usr/lib/python2.4/site-packages/univention/admin/handlers/__init__.py", line 306, in create
    return self._create()
  File "/usr/lib/python2.4/site-packages/univention/admin/handlers/__init__.py", line 639, in _create
    self.lo.add(self.dn, al)
  File "/usr/lib/python2.4/site-packages/univention/admin/uldap.py", line 342, in add
    raise univention.admin.uexceptions.ldapError, msg[0]['desc']
ldapError: Undefined attribute type
Comment 6 Felix Botner univentionstaff 2011-02-25 11:45:15 CET
Nach einem komplettem Update kann ich das ext. Attribute wieder normal anlegen, vielleicht also nochmal komplett auf 2.4-2 gehen und dann probieren.
Comment 7 Alexander Kläser univentionstaff 2011-02-25 12:07:19 CET
QA: Ok, Funktionalität konnte nach vollständigem Update erfolgreich getestet werden:

# Kommandos siehe oben
...
# Anlegen eines neuen Templates mit vorgegebenem Wert des ext. Att.
udm settings/usertemplate create --set name="My Template" \
  --set myType="my default template value"

Danach wird der vorgegebene Wert korrekt im UDM angezeigt, wenn ein Benutzer mit dem Template neu angelegt wird.
Comment 8 Sönke Schwardt-Krummrich univentionstaff 2011-04-04 15:46:29 CEST
UCS 2.4-2 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte der Bug dupliziert werden:
"Clone This Bug".