Definieren der Aufgaben zum Verarbeiten eines Plug-Ins
Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018
Sie verwenden das Tasks-Element und die untergeordneten Elemente, um die hoch- oder bestimmten Elemente zu definieren, die für ein Plug-In erstellt werden sollen. Eine Aufgabe gibt die Arbeit an, die auftreten muss, um etwas spezifisches für den Prozess in einem neuen Projekt zu konfigurieren. Eine Reihe von Aufgaben, die Sie definieren, laden die Arbeitselementtypen, Arbeitselementabfragen, Dokumente und Berichte für ein Projekt hoch. Andere Aufgaben, die Sie definieren können, konfigurieren andere Bereiche von Visual Studio Application Lifecycle Management, z. B. Team Foundation Build, Visual Studio Lab Management, Test Manager und Team Foundation-Versionskontrolle.
Syntaxstruktur für Aufgaben
Sie können mehrere Aufgaben in einem Plug-In angeben. Diese Aufgaben weisen möglicherweise gegenseitige Abhängigkeiten auf. Die Tasks, die Sie für jedes Plug-In definieren, müssen der Schemadefinition für Tasks entsprechen, die in der Tasks.xsd-Datei definiert ist, und mithilfe des Tasks-Containerelements in einer eigenen Datei angegeben werden .
Die folgende Syntax zeigt die obere Struktur des Tasks-Elements und seiner untergeordneten Elemente.
<tasks>
<task>
<dependencies>
<dependency />
. . .
</dependencies />
<taskXml>
. . .
</taskXml>
<task/>
</tasks>
Tasks-Elementverweis
In der folgenden Tabelle wird jedes Element beschrieben, mit dem die Aufgaben für ein Plug-In definiert werden können.
Element
Beschreibung und Syntax
dependencies
Optionales untergeordnetes Element der Aufgabe. Gibt andere Gruppen an, von denen eine Gruppe abhängig ist.
<dependencies>
<dependency>. . . </dependency>
</dependencies/>
Abhängigkeit
Optionales untergeordnetes Element von Abhängigkeiten. Gibt die ID einer anderen Aufgabe an, von der diese Aufgabe abhängig ist. Die andere Aufgabe muss abgeschlossen sein, bevor diese Aufgabe gestartet werden kann.
<dependency taskId="taskId" />
Processtemplate
Optionales untergeordnetes Element des taskXml-Elements für die Build- und Lab-Plug-Ins. Gibt den Namen, speicherort und das Ziel einer Datei an, die hochgeladen werden soll, um Buildprozesse für ein Projekt zu unterstützen.
<ProcessTemplate Type="FileType" Filename="LocalPathAndFileName"
Description="FileDescription" ServerPath="UploadLocation" />
Dabei ist jedes Attribut folgendermaßen definiert:
- Typ: Der Typ der Datei, die hochgeladen wird. Die folgenden Werte sind gültig:
Default
und fürUpgrade
Buildvorlagendateien undCustom
für Labvorlagendateien. - Dateiname: Der Pfad des lokalen Verzeichnisses und der Name der hochzuladenden Datei.
- Beschreibung: Eine kurze Textzeichenfolge, die die hochzuladende Datei beschreibt.
- ServerPath: Der Pfad des Servers, auf dem ausgeführt wird Team Foundation Server wo die Datei hochgeladen werden soll. Der einzige gültige Uploadspeicherort ist
$/$$PROJECTNAME$$/BuildProcessTemplates
.
Aufgabe
Erforderliches untergeordnetes Element von Aufgaben. Gibt die Arbeit an, die auftreten muss, um etwas spezifisches für den Prozess in einem neuen Projekt zu konfigurieren.
<task id="task id" name="name of task" plugin="Microsoft.ProjectCreationWizard.PluginName"
completionMessage="SuccessfulCompletionMessage"
completionDescription="InProcessMessage">
<dependencies> . . . </dependencies>
<taskXml> . . . </taskXml>
</task/>
Dabei ist jedes Attribut folgendermaßen definiert:
- Typ: id: Gibt einen Namen an, der die Aufgabe identifiziert. Wenn eine andere Aufgabe von dieser Aufgabe abhängig ist, verweist sie auf diese ID. Sie müssen einen eindeutigen Wert für die ID innerhalb der Plug-In-Datei zuweisen.
- name: Beschreibt die Aufgaben.
- plugin: Gibt an, welches Plug-In diese Aufgabe ausführen muss.
- completionMessage: Gibt die Meldung an, die während der Projekterstellung angezeigt werden soll, um anzugeben, dass die Aufgabe erfolgreich abgeschlossen wurde. Die maximale Länge beträgt 256 Zeichen.
- completionDescription: Gibt die Meldung an, die während der Projekterstellung angezeigt werden soll, um anzugeben, dass die Aufgabe verarbeitet wird. Minimale Länge beträgt 1 Zeichen.
tasks
Erforderliches untergeordnetes Element von taskXml. Enthält eine Auflistung von Aufgabenelementen , die jeweils die Arbeit angeben, die zum Konfigurieren eines bestimmten Prozesses in einem neuen Projekt erfolgen muss.
<tasks>
<task/>. . . </task>
</tasks />
taskXml
Erforderliches Stammelement für eine Plug-In-Datei. Beschreibt die Arbeitsschritte, die zur Ausführung dieser Aufgabe erforderlich sind. Die XML in diesem Elementblock variiert abhängig vom jeweiligen Plug-In.
Hinweis
Der Inhalt im Element wird vom XML-Prozessor nicht überprüft.
<taskXml> . . . </taskXml>
Index für taskXML-Elemente nach Funktion
Weitere Informationen zu den Merkmalen der XML-Markupelemente, die für jedes Plug-In angegeben werden können, finden Sie in einem der folgenden Themen:
- Build: Definieren der Erstkonfiguration von Team Foundation Build
- Klassifizierungen: Definieren von Anfangsbereichen, Iterationen und Project Zuordnungsdatei
- Gruppen und Berechtigungen: Konfigurieren anfänglicher Gruppen, Teams, Mitglieder und Berechtigungen
- Lab: Definieren sie die Erstkonfiguration Lab Management
- Portal: Definieren des Projektportals
- Berichte: Berichte hinzufügen
- Testverwaltung: Definieren sie die Erstkonfiguration Test Manager
- Versionskontrolle: Definieren der Erstkonfiguration der Team Foundation-Versionskontrolle
- Arbeitselementnachverfolgung: Definieren von Objekten zum Nachverfolgen von Arbeitselementen
Beispiel: Definieren von Arbeitselementtypen
Das folgende Beispiel zeigt eine Aufgabe, die sechs Typen von Arbeitsaufgaben durch Verweisen auf die Definitionsdateien für jeden Typ erstellt.
<task
id="WITs"
name="WorkItemType definitions"
plugin="Microsoft.ProjectCreationWizard.WorkItemTracking"
completionMessage="WorkItemTypes created"
completionDescription = "Processing work item types used by work item tracking">
<taskXml>
<WORKITEMTYPES>
<WORKITEMTYPE fileName="WorkItem Tracking\TypeDefinitions\Bug.xml" />
<WORKITEMTYPE fileName="WorkItem Tracking\TypeDefinitions\SharedStep.xml" />
<WORKITEMTYPE fileName="WorkItem Tracking\TypeDefinitions\Task.xml" />
<WORKITEMTYPE fileName="WorkItem Tracking\TypeDefinitions\TestCase.xml" />
<WORKITEMTYPE fileName="WorkItem Tracking\TypeDefinitions\UserStory.xml" />
<WORKITEMTYPE fileName="WorkItem Tracking\TypeDefinitions\Issue.xml" />
</WORKITEMTYPES>
</taskXml>
</task>