Jump to main content Hotkeys
Distributed and Self-organizing Systems
Distributed and Self-organizing Systems

Diplomarbeit

Qualitätssicherungs- und Build-System fuer die Fedora-Distribution
Qualitätssicherungs- und Build-System fuer die Fedora-Distribution

Completion

2005/03

Students

Enrico Scholz

Enrico Scholz

student

Advisers

hübner

Description (German)

Die Diplomarbeit soll der Entwurf und die Implementierung des QA- und
          Buildsystem des Fedora Projekts sein. Im einzelnen umfasst dies:
          * eine Datenbank fuer die Paketdaten (allgemeine Metadaten, Maintainer, Buildparameter
          fuer unterschiedliche Umgebungen, Abhaengigkeiten). Inwieweit die Paketheader direkt
          verwendet werden koennen, muss noch untersucht werden
          * die Abbildung des QA-Flusses unter Beachtung unterschiedlicher Privilegien der Reviewer;
          saemtliche Bestaetigungen muessen via GPG signiert sein und das System diese Signaturen
          pruefen. Zur Nutzerauthentifikation sollen die gegenwaertigen Bugzillalogins verwendet
          werden.
          * Schaffung von Interfaces fuer automatische QA-Massnahmen und fuer das Buildsystem
          ansich. Die QA-Massnahmen umfassen z.B. Paketbau in minimalen und maximalen Umgebungen und
          den anschliessenden Vergleich der Ergebnisse, das Nutzen von rpmlint, Bereitstellen von
          Diffs mit vorherigen Paketversionen u.ae. Beim finalen Paketbau sind zirkulaere
          Abhaengigkeiten zu beachten und ggf. Pakete wiederholt zu erzeugen. In Ruhezeiten sind
          I/O-intensive Vorbereitungsmassnahmen (Erzeugung der Basisumgebung) durchzufuehren, und
          der Paketbau ist guenstig auf verschiedene Rechner zu verteilen.
          * Generierung von automatischen Reports (Paket-Announces, Buildreports) bzw. Uebernahme in
          Bugzilla (gegenwaertige QA Methode)
          Als Nutzerinterface soll eine Weboberflaeche entstehen; leistungsfaehige Clients auf
          Nutzerseite sollten aber auch ermoeglicht werden und die Kommunikation deswegen via
          XML-RPC stattfinden. Als Hauptprogrammiersprache kommt Python zum Einsatz; fuer
          Integrationszwecke sind jedoch auch andere Sprachen (C, Shell, ...) moeglich.


Powered by DGS
Edit list (authentication required)

Press Articles