Typische Konfiguration einer Jazz-Erstellung

In diesem Abschnitt wird eine typische Konfiguration für eine Jazz-Erstellung beschrieben und die Beziehung zwischen Erstellungen und Aufgabenbereichen erläutert.

Beispiel für eine Jazz-Erstellungskonfiguration

Die folgenden Schritte beschreiben, wie eine typische Jazz-Erstellung eingerichtet und ausgeführt wird:
  1. Der Releaseentwickler des Teams installiert die Jazz-Erstellungsengine und das Ant-Toolkit auf der Erstellungsmaschine. Die Engine und das Toolkit sind Clients des Jazz-Team-Servers. Es müssen keine Services auf der Erstellungsmaschine ausgeführt werden.
  2. Der Releaseentwickler erstellt eine entsprechende Erstellungsengine im Jazz-Repository. Der Entwickler gibt an, welche Erstellungsdefinitionen von der Erstellungsengine unterstützt werden.
  3. Der Releaseentwickler erstellt Erstellungsdefinitionen im Jazz-Repository sowie für jede Erstellungsdefinition ein Erstellungsscript. In der Regel handelt es sich bei einem Erstellungsscript um ein versionsgesteuertes Artefakt unter der Jazz-Quellcodeverwaltung.

    Eine Erstellungsdefinition kann einen Zeitplan zur Ausführung einer Erstellung verwenden. Sie können zum Beispiel eine Erstellung so definieren, dass sie in einem fortlaufenden Zeitintervall ausgeführt wird, und optional auswählen, ob die Erstellung auf Quellcodeänderungen im Jazz-Repository basieren soll oder nicht. Sie können eine Erstellung auch so definieren, dass sie täglich zu einem bestimmten Zeitpunkt ausgeführt wird. Erstellungstasks sind von Projekt zu Projekt unterschiedlich. Neben der Kompilierung von Quellcode und der Paketierung des entsprechenden Inhalts in eine geeignete ausführbare Form kann eine Erstellung auch weitere Schritte umfassen, wie zum Beispiel die Ausführung automatisierter Tests oder die Ausführung von Tools zur Prüfung der Codequalität an der Codebasis.

  4. Der Releaseentwickler startet die Jazz-Erstellungsengine auf der Erstellungsmaschine. Die Erstellungsengine fragt den Jazz-Team-Server regelmäßig nach Erstellungsanforderungen ab.
  5. Die Erstellungsengine ruft eine Anforderung zur Ausführung einer Erstellung ab. Die Erstellungsanforderung gibt die Erstellungsdefinition an und kann Eigenschafteneinstellungen enthalten, die die Standardeinstellungen überschreiben. Die Erstellungsdefinition teilt der Erstellungsengine mit, welches Script auszuführen ist. Jede Erstellungsdefinition hat ein zugeordnetes Erstellungsscript, bei dem es sich in der Regel um ein versionsgesteuertes Artefakt unter der Jazz-Quellcodeverwaltung handelt.
  6. Die Erstellungsengine führt das Erstellungsscript aus.
  7. Das Erstellungsscript führt die Ant-Tasks aus, die mit dem Jazz-Team-Server kommunizieren, um Quellendateien abzurufen, die aus einem Datenstrom oder Arbeitsbereich zu kompilieren sind, gibt die Fortschrittsinformationen zurück und erstellt die Erstellungsausgabe, die aus Artefakten, Protokollen und Links besteht. Die Erstellungsausgaben werden im Repository gespeichert, sodass Entwickler die Protokolle anzeigen und die Erstellungsartefakte herunterladen können.

Erstellungen und Aufgabenbereiche

Die folgende Abbildung veranschaulicht die Beziehungen zwischen Erstellungen und zwei Aufgabenbereichen:
  • Releaseentwickler, der Erstellungsengines und Erstellungsdefinitionen erstellt
  • Entwickler, der die definierten Erstellungen ausführt, den Erstellungsfortschritt überwacht und die Erstellungsergebnisse untersucht

Die Abbildung veranschaulicht die Beziehung zwischen einem Releaseentwickler, einem Entwickler und dem Jazz-Team-Server sowie den Jazz-Erstellungsengines.

Die Abbildung zeigt die primären Aufgabenbereiche und Funktionen, die an der Einrichtung und Ausführung von Erstellungen beteiligt sind. In der folgenden Tabelle werden die Aufgabenbereiche und Funktionen beschrieben.

Releaseentwickler

  • Richtet die Erstellungsengine und die Erstellungsdefinitionen für die Verwendung durch Entwickler ein.
  • Richtet die Erstellungsengines auf Erstellungsmaschinen ein, die auf den Jazz-Team-Server zugreifen.
  • Erstellt Erstellungsengineobjekte im Repository, die den physischen Erstellungsmaschinen entsprechen.
  • Erstellt Erstellungsdefinitionen im Repository.
  • Überwacht während der Operationen die Erstellungsengines und die Erstellungsausführung.

Entwickler

  • Führt die im Repository eingerichteten Erstellungen aus und überwacht sie.
  • Fordert eine Erstellung an.
  • Überwacht den Erstellungsstatus.
  • Prüft Erstellungsergebnisse.

Jazz-Team-Server und Repository

  • Erfasst Erstellungsanforderungen, verteilt Anforderungen an Erstellungsmaschinen, die regelmäßig nach Anforderungen abfragen, und verwaltet Ergebnisse.
  • Empfängt und speichert Erstellungsanforderungen von Entwicklern.
  • Empfängt Statusberichte von Erstellungsengines während der Erstellungsausführung.
  • Speichert die Ergebnisse von Erstellungsausführungen aus den Erstellungsengines.

Erstellungsengines

  • Führen Erstellungen aus, die vom Jazz-Team-Server zugeteilt werden.
  • Fragen den Jazz-Team-Server nach Erstellungsanforderungen ab.
  • Führen Erstellungsscripts aus.
  • Melden den Status und die Ergebnisse von Erstellungen an den Jazz-Team-Server.

Feedback