Bug 22160 - Basispakete für 3.0 übernehmen
Summary: Basispakete für 3.0 übernehmen
Status: CLOSED FIXED
Alias: None
Product: UCS
Classification: Unclassified
Component: General
Version: UCS 3.0
Hardware: Other Linux
: P5 normal
Target Milestone: UCS 3.0 - MS1
Assignee: Philipp Hahn
QA Contact: Andreas Büsching
URL:
Keywords:
Depends on: 22495
Blocks: 22586
  Show dependency treegraph
 
Reported: 2011-04-11 07:05 CEST by Stefan Gohmann
Modified: 2011-12-13 15:50 CET (History)
6 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):
Customer ID:
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Gohmann univentionstaff 2011-04-11 07:05:32 CEST
Die folgenden Pakete sollten in UCS 3.0 übernommen werden:

- univention-config-registry
- univention-python
- univention-policy
- univention-ssh
- univention-licence
- univention-lib
- univention-debug

Folgende Punkte sollten dabei angepasst werden:

- Python 2.6 anstatt Python 2.4
- nach Möglichkeit univention-lib für wiederkehrende Funktionen verwenden
- ucslint in den Buildprozess integrieren
- Angleichung am example-package: branches/ucs-3.0/ucs/packaging/univention-package-template/
Comment 1 Moritz Muehlenhoff univentionstaff 2011-04-19 09:02:03 CEST
(In reply to comment #0)
> Die folgenden Pakete sollten in UCS 3.0 übernommen werden:
> 
> - univention-config-registry
> - univention-python
> - univention-policy
> - univention-ssh
> - univention-licence
> - univention-lib
> - univention-debug
> 
> Folgende Punkte sollten dabei angepasst werden:
> 
> - Python 2.6 anstatt Python 2.4
> - nach Möglichkeit univention-lib für wiederkehrende Funktionen verwenden
> - ucslint in den Buildprozess integrieren
> - Angleichung am example-package:
> branches/ucs-3.0/ucs/packaging/univention-package-template/

univention-config-registry dient zur Zeit als Paket für Templates etc., die auf allen Systemrollen vorhanden sein sollen. Dafür sollten wir ein neues Paket univention-base bereitstellen, dass diese Funktion übernimmt.
Comment 2 Sönke Schwardt-Krummrich univentionstaff 2011-05-04 18:02:19 CEST
univention-lib wurde jetzt nach UCS 3 übernommen. Allerdings ist die Installation der Python-Files noch defekt.
Comment 3 Janek Walkenhorst univentionstaff 2011-05-05 17:56:49 CEST
(In reply to comment #0)
> - univention-config-registry
Für UCR wurde Versionsnummer, Copyright, und UCRWARNING angepasst.
Comment 4 Philipp Hahn univentionstaff 2011-05-06 14:07:20 CEST
univention-debug: svn23916
Bau auf dimma schlug allerdings fehl, weil es automake1.4 nicht mehr gibt?
Comment 5 Moritz Muehlenhoff univentionstaff 2011-05-06 14:29:48 CEST
(In reply to comment #4)
> univention-debug: svn23916
> Bau auf dimma schlug allerdings fehl, weil es automake1.4 nicht mehr gibt?

Das fixe ich noch, steht schon auf der Liste der identifzierten Build-Fehler.
Das löst auch noch ein, zwei andere Build-Fehler aus. (Offenbar ebenfalls ein fehlgeschlagener Cherrypick wg. falscher Berechtgigungen.)

Baut univention-debug nicht mit dem Standard-automake? automake1.4 ist eigentlich ja nur das Legacy-Paket.
Comment 6 Philipp Hahn univentionstaff 2011-05-09 11:27:33 CEST
(In reply to comment #5)
> (In reply to comment #4)
> > univention-debug: svn23916
> > Bau auf dimma schlug allerdings fehl, weil es automake1.4 nicht mehr gibt?
...
> Baut univention-debug nicht mit dem Standard-automake? automake1.4 ist
> eigentlich ja nur das Legacy-Paket.

univention-debug wurde jetzt auf das neuere automake-1.11 umgestellt und damit gebaut.

Intern wurde univention-debug so umgestellt, daß nur noch die wirklich öffentlichen Funktionen exportiert werden, so daß die intern verwendeten Variablen nun nicht länger sichtbar sind.
Außerdem wurde von der Verwendung des Makros auf eine C-Funktion umgestellt und diese um die Überprüfung der printf()-Format-Argumente erweitert.
Ebenso wurden die ganzen #defines auf enums umgestellt, was sie Typsicherheit erhöhen sollte und die Verwendung der Funktionen besser dokumentiert.
Die an Bug #12236 berichtete Format-String-Vulnerability sollte nun von Python-Seite aus korrigiert sein:
 python2.4 -c 'import univention.debug as ud;ud.init("stdout", ud.NO_FLUSH, ud.FUNCTION);ud.set_level(ud.LISTENER, ud.ERROR);ud.debug(ud.LISTENER, ud.ERROR, "%s")'
univention.debug wurde für alle Python-Versionen (2.5 und 2.6) gebaut.

svn23949, univention-debug_5.0.1-1.49.201105091109
Comment 7 Stefan Gohmann univentionstaff 2011-05-09 15:06:22 CEST
(In reply to comment #0)
> - univention-python

Ist übernommen.
Comment 8 Philipp Hahn univentionstaff 2011-05-12 13:59:24 CEST
Eine 1. Version von univention-config-registry ist übernommen.
Comment 9 Arvid Requate univentionstaff 2011-05-12 18:33:05 CEST
Sollten folgende Pakete nicht auch übernommen werden?
 * univention-server
 * univention-system-setup
Comment 10 Stefan Gohmann univentionstaff 2011-05-12 19:41:20 CEST
(In reply to comment #9)
> Sollten folgende Pakete nicht auch übernommen werden?
>  * univention-server
>  * univention-system-setup

Dazu gibt es eigene Bugs und hier ist die Übersicht:
https://hutten.knut.univention.de/mediawiki/index.php/UCS-3.0-Aktualisierung-Univention-Pakete
Comment 11 Philipp Hahn univentionstaff 2011-05-13 18:11:09 CEST
(In reply to comment #2)
> univention-lib wurde jetzt nach UCS 3 übernommen. Allerdings ist die
> Installation der Python-Files noch defekt.

Das wurde jetzt korrigiert:

svn24150, svn24151
univention-lib_1.0.5-2.11.201105131809
Comment 12 Philipp Hahn univentionstaff 2011-05-16 11:46:24 CEST
> - univention-ssh

wurde übernommen und gebaut:
svn24172, univention-ssh_5.0.0-1.33.201105161140
Comment 13 Andreas Büsching univentionstaff 2011-05-16 16:36:02 CEST
Das trat gerade beim Update auf:

File: /etc/network/interfaces
Traceback (most recent call last):
  File "<stdin>", line 64, in <module>
  File "<stdin>", line 28, in check_gateway
  File "/usr/lib/pymodules/python2.6/univention/dns.py", line 81, in networkNumber
    ip = splitDotted(dottedIp)
  File "/usr/lib/pymodules/python2.6/univention/dns.py", line 58, in splitDotted
    for q in ip.split('.'):
Comment 14 Philipp Hahn univentionstaff 2011-05-17 19:26:04 CEST
univention-policy ist übernommen:

svn24236, svn24237, univention-policy_5.0.0-1.83.201105171922
Comment 15 Stefan Gohmann univentionstaff 2011-05-18 07:54:26 CEST
(In reply to comment #6)
> svn23949, univention-debug_5.0.1-1.49.201105091109

Der Listener liest aktuell den gesetzt Debug Level aus, wenn ihm ein Signal geschickt wird. Ich habe zu univention-debug jetzt noch eine Funktion hinzugefügt, damit der Debug Level ausgelesen werden kann:
 enum uv_debug_level univention_debug_get_level(enum uv_debug_category id);
Comment 16 Philipp Hahn univentionstaff 2011-05-20 15:26:45 CEST
univention-licen[cs] ist nun auch übernommen. Neben den reihen Umstellungsmaßnamen auf Python2.6 und Debhelper7 wurden durch den neuere Compiler auch einige weitere Warnungen und Fehler korrigiert.
Beim Testen der Änderungen wurde noch einige Fehler im Tk-Frontent tklicensegen aufgedeckt und korrigiert: Dort wird das Bild /var/www/head_logo.gif referenziert, was nicht auf einem Standardsystem verfügbar ist.
Außerdem wurde die Hilfe und die Fehlermeldungen zu make_licence angepasst, so daß dieses Programm nun auch leichter zu bedienen sein sollte.

svn24368, univention-licence_4.0.0-1.53.201105201518

Damit sind alle Pakete übernommen, bei neuen Fehlern sollten neue Bugs angelegt werden.
Comment 17 Philipp Hahn univentionstaff 2011-05-24 12:50:32 CEST
svn24428, univention-ssh_5.0.0-2.34.201105241220
debian/*.install erwartet Verzeichnis, und keinen Dateinamen

svn24429, univention-licence_4.0.0-2.54.201105241244
univention-license {,s}bin/ Korrekturen
Comment 18 Andreas Büsching univentionstaff 2011-05-27 18:03:08 CEST
(In reply to comment #7)
> (In reply to comment #0)
> > - univention-python
> 
> Ist übernommen.

Das enthaltene sitecustomize.py liegt jetzt im falschen Pfad

/usr/share/pyshared/univention/sitecustomize.py

Dort wird es nicht gelesen. Es müsste unter

/etc/python2.6/sitecustomize.py

die dort existierende Datei ersetzen
Comment 19 Philipp Hahn univentionstaff 2011-05-27 19:01:02 CEST
(In reply to comment #18)
> Das enthaltene sitecustomize.py liegt jetzt im falschen Pfad
> 
> /usr/share/pyshared/univention/sitecustomize.py
> 
> Dort wird es nicht gelesen. Es müsste unter
> 
> /etc/python2.6/sitecustomize.py
> 
> die dort existierende Datei ersetzen

Die Datei ist jetzt ein Multi-File und wird von univention-base-files zur Verfügung gestellt. Damit funktioniert folgendes wieder:
  python -c 'print str(u"ä")'
Vorher:
  UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)
Nachher:
  ä

svn24547, svn24548, python-univention_6.0.5-1.95.201105271833, univention-base-files_1.0.3-2.9.201105271852
Comment 20 Sönke Schwardt-Krummrich univentionstaff 2011-07-13 17:46:52 CEST
Die Abhängigkeit "sysutils" existiert nicht mehr;  univention-license-import wurde entsprechend angepasst.
Comment 21 Stefan Gohmann univentionstaff 2011-07-29 07:45:09 CEST
In der /etc/issue wurde die UCR Warning mit ausgegeben. Ich habe die Warning zunächst einfach in den Python Block verschoben, aber dadurch steht es ja nicht korrekt in der /etc/issue.
Comment 22 Janek Walkenhorst univentionstaff 2011-07-29 09:21:27 CEST
(In reply to comment #21)
> In der /etc/issue wurde die UCR Warning mit ausgegeben. Ich habe die Warning
> zunächst einfach in den Python Block verschoben, aber dadurch steht es ja nicht
> korrekt in der /etc/issue.
Die /etc/issue scheint keine Kommentare zu unterstützen - hier müssen wir wohl auf die UCR-Warnung verzichten…
Comment 23 Stefan Gohmann univentionstaff 2011-07-29 09:46:32 CEST
Damit der Boot eines neu installierten 3.0 Systems durchläuft, habe ich /etc/init.d/networking von bin/sh auf bin/bash geändert. Ich denke das Skript sollte nochmal geprüft und mit Upstream abgeglichen werden.
Comment 24 Philipp Hahn univentionstaff 2011-08-01 16:51:20 CEST
In base/univention-server wurden mehrer Bashisms korrigiert.

svn25779, univention-server_7.0.2-1.167.201108011545

(In reply to comment #23)
> Damit der Boot eines neu installierten 3.0 Systems durchläuft, habe ich
> /etc/init.d/networking von bin/sh auf bin/bash geändert. Ich denke das Skript
> sollte nochmal geprüft und mit Upstream abgeglichen werden.

init.d/networking wurde mit mit der Squeeze-Version abgeglichen (netbase_4.45). Fortan wird /etc/networking/options ignoriert, siehe dazu Bug #23135.
Effektiv bleibt unsere Erweiterung für das Setzen der MAC-Addressen (die weiterhin #!/bin/bash benötigt, wegen dem ${!var}-Konstrukten.)

svn25786, univention-base-files_1.0.10-1.20.201108011641
Comment 25 Andreas Büsching univentionstaff 2011-08-11 10:17:02 CEST
Die Pakete wurden übernommen und ein kurzer ChangeLog-Eintrag existiert auch
Comment 26 Felix Botner univentionstaff 2011-12-01 09:59:46 CET
Auf einem frisch installiertem 3.0 sieht die /etc/ntp.conf so aus:

-> more /etc/ntp.conf
...
servers timeserver2
servers timeserver3
...

Zeitserver sind aber gar nicht gesetzt:

-> ucr search --brief timeserver
timeserver2: <empty>
timeserver3: <empty>
timeserver: <empty>

Das sieht irgendwie nicht richtig aus.
Comment 27 Philipp Hahn univentionstaff 2011-12-01 10:42:51 CET
Dort fehlt ein ucr.get(...) drum herum. Der gleiche Fehler war auch default/ntpdate vorhanden und dort bereits in svn25828 korrigiert worden.

svn29715, univention-base-files_1.0.42-1.64.201112011038
ChangeLog: ±0
Comment 28 Andreas Büsching univentionstaff 2011-12-01 12:54:30 CET
(In reply to comment #27)
> Dort fehlt ein ucr.get(...) drum herum. Der gleiche Fehler war auch
> default/ntpdate vorhanden und dort bereits in svn25828 korrigiert worden.
> 
> svn29715, univention-base-files_1.0.42-1.64.201112011038
> ChangeLog: ±0

ist in beiden Dateien korrigiert
Comment 29 Sönke Schwardt-Krummrich univentionstaff 2011-12-13 15:50:46 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"