Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Thema werden die Windows Workflow-Aktivitäten in der LabDefaultTemplate.11.xaml-Datei.LabDefaultTemplate definiert den Lab Management-Workflowprozess, der Sie Build aktiviert, bereitstellen und Testen der Anwendung in einer Lab-Umgebung.Weitere Informationen zu Windows Workflow zu erfahren, finden Sie auf dieser Seite Die Einführung eines Entwicklers zu Windows Workflow Foundation (WF) in .NET 4 auf der MSDN-Website.
Anforderungen
- Visual Studio Ultimate, Visual Studio Premium, Visual Studio Test Professional
Initialisieren des Workflows
.png)
Der Stamm des LabDefaultTemplate ist die TfsBuild.Process-Aktivität.Dies ActivityBuilder initialisiert die globalen Argumente für die Workflowbuilddefinition aus der Eingabe, die im Builddefinitionsfenster und im Assistenten für Lab-Workflowparameter angegeben wird.
Argumente
Das LabWorkflowParameters-Argument enthält die Daten, die im Assistenten für Lab-Workflowparameter angegeben wird.Dieses Argument ist ein LabWorkflowDetails-Objekt, das die folgenden Objekte enthält:
BuildDetails |
Ein Microsoft.TeamFoundation.Lab.Workflow.Activities.BuildDetails-Objekt, das den Build speichert, wird für den Build aufgeführt, Bereitstellen und Testen von Workflows. |
DeploymentDetails |
Ein Microsoft.TeamFoundation.Lab.Workflow.Activities.DeploymentDetails-Objekt, das die Informationen speichert, die für die Bereitstellung eines Builds im Workflow erforderlich ist. |
EnvironmentDetails |
Ein Microsoft.TeamFoundation.Lab.Workflow.Activities.LabEnvironmentDetails-Objekt, das die Informationen speichert, die die Umgebung identifiziert, um für Build-, Bereitstellungs- und Testszenario. |
TestParameters |
Ein Microsoft.TeamFoundation.Lab.Workflow.Activities.RunTestDetails-Objekt, das die Testparameterdetails speichert, die benötigt werden, um den automatisierten Testlauf zu erstellen. |
Die folgenden Argumente werden auch im globalen Gültigkeitsbereich deklariert:
Argument |
Text [Type] |
|---|---|
Metadata |
ProcessParameter MetadataCollection |
Verbosity |
Ein Verbosity-Enumerationswert, der die Informationsmenge angibt, die in das Protokoll geschrieben wird. |
BuildNumberFormat |
String, das Format der Buildnummer angibt. |
SupportedReasons |
Ein BuildReason- Enumerationswert, der den Grund für den Build angibt. |
Anwendungs-Bereitstellungs-Workflow-Sequenz
![]() |
Die Workflow der Anwendungsbereitstellung Folgeregelungen der gesamte Build-, Bereitstellungs- und Testszenario. Workflow der Anwendungsbereitstellung deklariert die folgenden Variablen:
|
Ausführen des Builds
Update-Buildnummer |
Update-Buildnummer erweitert und gibt die Buildnummer im BuildNumberFormat-Argument zurück.Update-Buildnummer ist eine Microsoft.TeamFoundation.Build.Workflow.Activities.UpdateBuildNumber-Aktivität. |
Rufen Sie Builddetails ab |
Rufen Sie Builddetails ab gibt die Daten zurück, die erforderlich ist, um auf den Build auszuführen oder zuzugreifen, der im Workflow-Assistenten angegeben wurde.Das IBuildDetail-Objekt wird in der BuildDetail-Variablen gespeichert. Rufen Sie Builddetails ab ist eine Microsoft.TeamFoundation.Build.Workflow.Activities.GetBuildDetail-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
![]() |
Wenn Build erforderlich ist bestimmt, ob ein neuer Build für einen Team System-Buildprozess benötigt wird.Wenn die Bedingungen erfüllt ist, wird der Workflow die Build ausführen Sequenz aus. |
![]() |
Die Build ausführen Sequenz initiiert den Build, Wartung den Build abzuschließen und anschließend den Buildspeicherort fest. |
Anfangsbuild-Workflow |
Anfangsbuild-Workflow erstellt einen neuen Build auf dem angegebenen Buildcontroller in die Warteschlange und gibt die ID des in der Warteschlange enthaltenen Builds in der QueueBuildId-Variablen zurückgegeben.Anfangsbuild-Workflow ist eine RunWorkflow-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
Wartung Build abzuschließen |
Wartung Build abzuschließen enthält die Ausführung an, bis der Build abgeschlossen wurde, oder ein Timeoutintervall abgelaufen ist.Die Aktivität löst eine Ausnahme aus, wenn das Timeout erreicht wird.Die Aktivität gibt den Status des Builds in der BuildStatus-Variable und in den Daten über den neuen Build in der ChildBuildDetail-Variablen zurückgegeben.Wartung Build abzuschließen ist eine WaitForWorkflow-Aktivität.Die Vorlage legt die folgenden Eigenschaftswerte fest:
|
Festgelegter Erstellungsposition |
Festgelegter Erstellungsposition weist den Speicherort des Builds aus der ChildBuildDetailBuildDetails.BuildUri-Variable der Eigenschaft des LabWorkflowParameters-Arguments an. |
Bereitstellen der Anwendung
Update-Bereitstellungs-Zusammenfassung |
Update-Bereitstellungs-Zusammenfassung schreibt den Namen der Bereitstellungszielumgebung zur Buildseite.Update-Bereitstellungs-Zusammenfassung ist eine WriteDeploymentInformation-Aktivität. |
GetBuildLocationAndBuildNumber |
GetBuildLocationAndBuildNumber gibt den Ablagespeicherort für den Build zu BuildLocation-Variablen zurückgegeben.GetBuildLocationAndBuildNumber ist eine GetBuildLocationAndBuildNumber-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
![]() |
Wenn die Erforderlichen Buildort berechnen Zustände erfüllt werden, fügt Buildpfad berechnen plattform- und Buildkonfigurationsunterordner dem Ablagespeicherort hinzu. |
![]() |
Wenn der ausgewählte Benutzer gespeicherten Umgebung Er überprüft, ob die Umgebung bereitgestellt wird und Fehler anzeigen eine Ausnahme auslöst, wenn die Umgebung in der Bibliothek gespeichert wird. |
Rufen Sie Lab-Umgebung ab |
Rufen Sie Lab-Umgebung ab gibt den URI der Umgebung in der LabEnvironmentUri-Variablen zurückgegeben.Rufen Sie Lab-Umgebung ab ist eine GetLabEnvironmentUri-Aktivität.Die Vorlage legt die folgenden properities fest:
|
![]() |
Wenn Wiederherstellungs-Momentaufnahme bestimmt, ob der Benutzer angefordert hat, dass die Umgebung in einer fehlerfreien Momentaufnahme wiederhergestellt wird.Wenn die Bedingung erfüllt ist, wird die Momentaufnahme reparieren Sequenz ausgeführt; andernfalls schreibt Reine Momentaufnahme nicht angegeben eine Warnmeldung zur Buildzusammenfassung. |
![]() |
In der Momentaufnahme reparieren Sequenz abgeleitet Momentaufnahmendetails abrufen die ID der Momentaufnahme, Lab-Umgebung in Momentaufnahme wiederherstellen und führt die Wiederherstellung aus. |
Rufen Sie Momentaufnahme-Details ab |
Momentaufnahmendetails abrufen ist eine GetLabEnvironmentSnapshotId-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
Wiederherstellungs-Lab-Umgebung zur Momentaufnahme |
Lab-Umgebung in Momentaufnahme wiederherstellen ist eine RestoreLabEnvironment-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
![]() |
Wenn die Bereitstellung erfordert bestimmt, ob der Benutzer eine Bereitstellung angefordert hat. |
![]() |
Wenn die Bedingung erfüllt ist, wird die Bereitstellung ausführen Sequenz ausgeführt. |
Wartung Workflow-Funktion bereit ist, |
Wartung Workflow-Funktion bereit ist, Ausführung hält an, bis die Workflowfunktion der Umgebung bereit ist, oder ein Timeoutintervall erreicht wird.Wenn das Timeoutintervall überschritten wird, wird eine Ausnahme ausgelöst.Wartung Workflow-Funktion bereit ist, ist eine WaitForWorkflowCapabilityServices-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
![]() |
Ausführungs-Bereitstellungsskripte führt die Skript auf Lab-System ausführen Sequenz auf jedem Bereitstellungsskript aus, das in der DeploymentDetails.Scripts-Eigenschaftenliste des LabWorkflowParameters-Arguments enthalten ist. |
![]() |
Die Skripts auf Lab-System ausführen Sequenz führt das angegebene Skript auf einem virtuellen Computer in der Umgebung aus.Skripts auf Lab-System ausführen deklariert die folgenden Variablen:
|
Initialisieren Sie Agent-Tags und Bereitstellungsskript |
Initialisieren Sie Agent-Tags und Bereitstellungsskript erweitert die Makros und die Tags des Skripts und gibt die Ergebnisse in einem ScriptDetails-Objekt zurück.Initialisieren Sie Agent-Tags und Bereitstellungsskript ist eine InitializeAgentSpecAndEnvironmentVariables-Aktivität.Die Vorlage legt die folgenden Werte fest:
|
Lab-Agent-Bereich |
Lab-Agent-Bereich bestimmt, ob der Lab-Agent installiert ist und auf dem Benutzercomputer Zielvirtuellen computer und ruft dann Bereitstellungsskript wird ausgeführt., um das Skript auszuführen an.Eine Ausnahme wird ggf. aus Skripts fehlgeschlagenen auf einem Computer ausgelöst.Lab-Agent-Bereich ist eine Microsoft.TeamFoundation.Build.Workflow.Activities.AgentScope-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
Ausführen von Bereitstellungsskript |
Bereitstellungsskript wird ausgeführt. führt das Bereitstellungsskript auf dem Quellcomputer Zielvirtuellen aus.Bereitstellungsskript wird ausgeführt. ist eine RunDeploymentScript-Aktivität.Die Vorlage legt die folgenden Werte fest:
|
Anwendungs-Bereitstellung gefolgt |
Anwendungs-Bereitstellung gefolgt schreibt Informationen zur Buildzusammenfassung.Anwendungs-Bereitstellung gefolgt ist eine WriteDeploymentInformation-Aktivität. |
![]() |
Momentaufnahme nach der Bereitstellung bestimmt, ob der Benutzer angefordert hat, dass eine Momentaufnahme der Umgebung nach der Bereitstellung gespeichert werden soll.Wenn diese Bedingung erfüllt ist, wird die Momentaufnahme nach Bereitstellung erstellen Sequenz ausgeführt.Andernfalls schreibt Momentaufnahme nach Bereitstellung nicht angegeben eine Warnmeldung protokolliert. |
![]() |
Momentaufnahme nach Bereitstellung erstellen Sequenz Momentaufnahme nach Bereitstellung erstellen deklariert die folgenden Variablen: |
![]() |
Überprüfungs-Momentaufnahme-Name bestimmt, ob ein Momentaufnahmename angegeben wurde.Wenn die Bedingung erfüllt ist, wird der angegebene Name verwendet; andernfalls wird der Standardwert verwendet. |
Erstellen der Momentaufnahme nach der Bereitstellung |
Erstellen der Momentaufnahme nach der Bereitstellung ist eine SnapshotLabEnvironment-Aktivität, die die Momentaufnahme erstellt.Die Vorlage legt die folgenden Eigenschaften fest:
|
Die Momentaufnahme auf gefolgt |
Die Momentaufnahme auf gefolgt schreibt der Name der Momentaufnahme zur Buildzusammenfassung.Die Momentaufnahme auf gefolgt ist eine WriteDeploymentInformation-Aktivität. |
Ein Verbindungslink zur Momentaufnahme |
Ein Verbindungslink zur Momentaufnahme schreibt die URL der Momentaufnahme zur Buildzusammenfassung.Ein Verbindungslink zur Momentaufnahme ist eine WriteDeploymentInformation-Aktivität. |
Ausführen von Tests
![]() |
Ausführungs-Tests für Umgebungen bestimmt, ob automatisierte Tests angefordert wurden.Wenn die Bedingung erfüllt ist, wird die Tests ausführen Sequenz ausgeführt. |
![]() |
Durchführen von Tests Tests ausführen deklariert die folgenden Variablen:
|
Wartung Test-Funktionen bereit ist, |
Wartung Test-Funktionen bereit ist, Ausführung hält an, bis die Testfunktion der Umgebung bereit ist, oder ein Timeoutintervall erreicht wird.Wenn das Timeoutintervall überschritten wird, wird eine Ausnahme ausgelöst. Wartung Test-Funktionen bereit ist, ist eine WaitForTestCapabilityServices-Aktivität.Die Vorlage legt die folgenden Eigenschaften fest:
|
Ausführen von Tests |
Ausführen von Tests führt die Tests aus und gibt die Testergebnisse zurück.Ausführen von Tests ist eine ExecuteRemoteTestRun-Aktivität.Die Vorlage legt die folgenden Werte fest:
|
![]() |
Wenn alle Tests nicht bestanden wurden, bestimmt, ob Tests fehlgeschlagen sind und führt Buildstatus festlegen aus, wenn die Bedingung erfüllt ist. |
Festgelegter Buildstatus |
Buildstatus festlegen bestimmt, ob der Workflow den oder die Bereitstellung der Anwendung enthält.Wenn diese Bedingung erfüllt ist, legt den Teilweise erfolgreich Workflowstatus auf den Wert BuildStatus.PartiallySucceeded fest.Andernfalls wird Fehler die BuildStatus-Variable zu Failed fest. |
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)