Build Forge verwendet einen einfachen Objektsatz zum Erstellen von Beschreibungen der Prozessautomation.
Dieser Abschnitt enthält eine Übersicht über die wichtigsten Begriffe und Objekte und eine Beschreibung ihrer Beziehungen. Links zu ausführlicheren Erläuterungen stehen zur Verfügung.
Benutzer und Rollen
Damit Benutzer auf
Build Forge zugreifen können, muss für sie ein Benutzerobjekt
definiert werden. In Produktionssystemen geschieht dies durch die Konfiguration von Build Forge für den Zugriff auf ein Identitätsmanagementsystem LDAP.
Build Forge steuert den Benutzerzugriff auf alle Objekte mithilfe eines Berechtigungssystems. Zugriffsgruppenobjekte enthalten Berechtigungslisten. Ein Benutzer gehört zu mindestens einer Zugriffsgruppe.
Sie können eigene Zugriffsgruppen erstellen oder die bereitgestellten Gruppen ändern. Im System sind folgende Zugriffsgruppen definiert:
- Buildentwickler - definiert Prozesse (erstellt Projekte und Schritte)
- Systemmanager - verwaltet Server und andere systemweite Komponenten
- Sicherheit - verwaltet Benutzer, Zugriff und Sicherheit
- Entwickler - hilft bei der Entwicklung von Prozessen, führt Vorgänge aus, zeigt Ergebnisse an
- Operator - kopiert Projekte, führt Vorgänge aus, zeigt Ergebnisse an
- Gast - kopiert Projekte, führt Vorgänge aus, zeigt Ergebnisse an
Server
Ein Serverobjekt definiert einen Ort, wo Projekte und Schritte ausgeführt werden können. Projekte und Schritte können denselben Server verwenden oder unabhängig voneinander einen Server auswählen.
Serverobjekte stellen Hosts dar, auf denen Arbeit ausgeführt wird. Auf dem Host muss ein Build Forge-Agent ausgeführt werden, damit die
Arbeit vom System empfangen werden kann und damit Ergebnisse
zurückgegeben werden können.
Andere Objekte beziehen sich auf Server und müssen konfiguriert werden, bevor Projekte und Schritte definiert werden:
- Serverauthentifizierung: In einer Serverauthentifizierung werden Anmeldeinformationen gespeichert, die der Server für den Zugriff auf den vom Server angegebenen Host verwenden soll. Eine Serverauthentifizierung muss vor der Erstellung des Servers, der sie verwendet, erstellt werden. In der Serverdefinition wählen Sie die Serverauthentifizierung aus der Liste aller auf dem System definierten Serverauthentifizierungen aus.
- Collectors: Ein Collectorobjekt erfasst angegebene Eigenschaften eines Servers. Die Daten werden in einem Manifest gespeichert. Server verfügen über eine Reihe zugeordneter Standardeigenschaften. Zu diesen integrierten Eigenschaften gehören Informationen zur Hostarchitektur, zu den Netzverbindungen und zu Ressourcen (CPU, Speicher, Arbeitslast). Sie können durch Definition von Collectorobjekten andere Eigenschaften hinzufügen. Ein Collector muss erstellt werden, bevor er dem Server hinzugefügt wird.
In der Serverdefinition wählen Sie den Collector aus der Liste aller auf dem System definierten Collectors aus.
- Selektoren: Ein Selektorobjekt definiert, wie ein Server für die Verwendung durch ein Projekt oder einen Schritt ausgewählt wird. Ein Selektor muss erstellt werden, bevor er dem Projekt hinzugefügt wird, von dem er verwendet wird. In der Projektdefinition wählen Sie den Selektor aus der Liste aller auf dem System definierten Selektoren aus.
- Umgebungen: Ein Umgebungsobjekt ist eine Gruppe von Variablen, die von einem Schritt verwendet werden können. Während eines Vorgangs werden die Variablen auf dem Server-Host definiert, bevor der Schritt ausgeführt wird. Umgebungen können Serverobjekten, Projektobjekten und Schrittobjekten zugeordnet werden.
Wenn für eine Variable in verschiedenen Umgebungen verschiedene Werte definiert werden, legt ein Übernahmeschema fest, welcher Wert verwendet wird. Eine Umgebung muss erstellt werden, bevor sie einem Server, Projekt oder Schritt hinzugefügt wird. In diesen Objektdefinitionen wählen Sie die Umgebung aus der Liste aller auf dem System definierten Umgebungen aus.
Umgebungen
Eine Umgebung ist ein Gruppe von Variablen. Umgebungen können für Server-, Projekt- und Schrittobjekte angegeben werden. Wenn ein Schritt ausgeführt wird, werden die bei jedem dieser Objekte
definierten Umgebungen kombiniert, um Variablen für den zu
verwendenden Schritt zur Verfügung zu stellen. Siehe Informationen zu Umgebungen.
Variablen können
während der Ausführung eines Schritts geändert werden. Siehe Variablenwerte während der Schrittausführung ändern.) Der Änderungsbereich kann lokal auf den Schritt oder lokal auf das Projekt beschränkt oder permanent (die Variable wird in der gespeicherten Umgebung geändert) sein.
Vordefinierte Systemvariablen sowie von Ihnen definierte Variablen sind verfügbar.
Projekte
Ein Projekt definiert die in einem Prozess auszuführende Arbeit. Wenn ein Projekt gestartet wird, wird es als Vorgang ausgeführt.
Die auszuführende Arbeit ist in der Schrittliste enthalten.
Andere Objekte beziehen sich auf Projekte:
- Selektoren: Ein Selektor legt fest, wo das Projekt gestartet wird. Wenn kein Selektor für das Projekt angegeben wird, kann es nicht unabhängig ausgeführt werden und wird als Bibliothek bezeichnet. Der Selektor muss bereits definiert sein, damit er seinem Vorgang
zugeordnet werden kann.
- Umgebungen: Ein Umgebungsobjekt ist eine Gruppe von Variablen, die von einem Schritt verwendet werden können. Während eines Vorgangs werden die Variablen auf dem Server-Host definiert, bevor der Schritt ausgeführt wird. Umgebungen können Serverobjekten, Projektobjekten und Schrittobjekten zugeordnet werden.
Ein Übernahmeschema legt fest, welche Werte verwendet werden, wenn für eine Variable verschiedene Werte definiert sind. Eine Umgebung muss erstellt werden, bevor der Server, das Projekt oder der Schritt erstellt wird, von dem sie verwendet wird. In diesen Objektdefinitionen wählen Sie die Umgebung aus der Liste aller auf dem System definierten Umgebungen aus.
- Benachrichtigungsvorlagen: Eine Benachrichtigungsvorlage definiert, wie Benachrichtigungen über die Vorgangsaktivität (Vorgang gestartet, Vorgang erfolgreich, Vorgang fehlschlagen, andere) versendet werden. Ein Benachrichtigungsobjekt legt durch Zugriffsgruppen fest, wer benachrichtigt werden soll. Sie geben den Standort Ihres SMTP-Servers in einer Systemeinstellung an.
- Klassen: Mit einem Klassenobjekt werden Projekte für Verwaltungszwecke gruppiert. Normalerweise werden Klassen zur regelmäßigen Bereinigung oder Archivierung abgeschlossener Vorgänge verwendet. Alle unter Verwendung des Projekts ausgeführten Vorgänge sind von der Klasse betroffen.
- Adapter: Ein Adapter definiert eine Integration in ein externes System, normalerweise ein Managementsystem für Quellcode.
Es stehen mehrere Beispielvorlagen als Ausgangspunkt zur Verfügung. Sie müssen sie weiter konfigurieren, um die Verbindung zu verwalten und angegebene Aktionen im System auszuführen.
- Adapterverknüpfungen: Eine Adapterverknüpfung definiert die Beziehung zwischen einem Adapter und dem Projekt, das ihn verwendet.
Schritte
Ein Schritt definiert die kleinste auszuführende Arbeitseinheit. (Siehe Informationen zu Schritten.) Seine Schlüsselkomponente ist die Eigenschaft 'Befehl', die einen Befehl enthält, der auf dem ausgewählten Server ausgeführt werden soll.
Mit der Eigenschaft 'Befehl' können auch Punktbefehle ausgeführt werden.
Punktbefehle sind Befehle, die auf der Prozessengine ausgeführt werden und zusätzliche Funktionalität bereitstellen.
Andere Objekte beziehen sich auf Projekte:
- Selektoren: Ein Schritt kann einen eigenen Selektor haben.
Falls nicht angegeben, verwendet er den Selektor seines Projekts.
- Umgebungen: Ein Schritt kann eine eigene Umgebung haben.
Die vom Server, vom Projekt und vom Schritt bereitgestellten Umgebungen werden kombiniert. Sie werden standardmäßig in dieser Reihenfolge angewendet, so dass alle von der Umgebung des Schritts definierten Variablen Vorrang vor Definitionen derselben Variablen haben. Die Vorrangstellung kann durch Systemeinstellungen gesteuert werden.
- Protokollfilter: Einem Schritt kann in seiner Eigenschaft 'Ergebnis' ein Protokollfilter zugeordnet werden. Mit einem Protokollfilterobjekt werden Bedingungen angegeben, die anzeigen, ob der Schritt erfolgreich ist oder fehlschlägt. Bei Ausführen einer Perl-Steuerkomponente verwenden Sie reguläre Ausdrücke für die Suche nach einem bestimmten Muster im Protokoll. Bei Ausführen einer Java-Steuerkomponente verwenden Sie auch reguläre Ausdrücke für die Suche nach einem bestimmten Muster im Protokoll. Normalerweise wird der Exitstatus des Befehls verwendet, Protokollfilter stellen jedoch eine Alternativ dar. Ein Protokollfilter muss erstellt werden, bevor er in einem Schritt angegeben wird. In der Eigenschaft 'Ergebnis' für den Schritt wählen Sie den Protokollfilter aus der Liste aller im System definierten Protokollfilter aus.
- Benachrichtigungsvorlagen: Eine Benachrichtigungsvorlage definiert, wie Benachrichtigungen über die Schrittaktivität (Schritt gestartet, Schritt erfolgreich, Schritt fehlschlagen, andere) versendet werden. Ein Benachrichtigungsobjekt legt durch Zugriffsgruppen fest, wer benachrichtigt werden soll. Sie geben den Standort Ihres SMTP-Servers in einer Systemeinstellung an.
- Build Catalyst: Ein Schritt kann rafmake ausführen, das Schlüsseldienstprogramm in Build Catalyst. Build Catalyst stellt die Mittel zur Beschleunigung Make-basierter Builds zur Verfügung. Build Catalyst muss - zusätzlich zu einem Build Forge-Agenten - auf demselben Host installiert sein, auf dem die Make-Builds ausgeführt werden.
Vorgänge
Ein Vorgang ist ein aktives Projekt. Wenn der Vorgang
gestartet
wird, wird er von der Process Engine in die Warteschlange gestellt
und dann ausgeführt. Sie können seinen Status in der Anzeige 'Vorgänge' überprüfen. Wenn er beendet ist, stehen folgende Informationen zur Verfügung:
- Ergebnisse: Sie können die Ergebnisse aller Schritte überprüfen, indem Sie den Vorgang öffnen. Sie können auch einen aktiven Vorgang öffnen, um seinen Fortschritt zu überwachen.
- Schrittprotokoll: Im Schrittprotokoll werden umfangreiche Informationen über die Art der Ausführung eines Schritts aufgezeichnet. Hierzu gehören Informationen zum Manifest und Umgebungseinstellungen sowie Ausführungsergebnisse. Klicken Sie auf den Link der Schrittergebnisse auf der Seite 'Ergebnisse', um das Protokoll anzuzeigen.
- Stückliste: Die Stückliste enthält Informationen zu den Vorgangsabschnitten und Schrittmanifeste. Sie können mit dem Punktbefehl .bom zusätzliche Informationen für die Stückliste formatieren und Daten in sie schreiben. Sie können mit dem Punktbefehl .scan Baselines und Prüfpunkte zur Stückliste hinzufügen.
Sie können Vorgänge abbrechen und erneut starten. Sie können dem Zeitplan Projekte hinzufügen, damit sie zu geplanten Zeiten ausgeführt werden.