Define the tasks to process a plug-in

Visual Studio Team Foundation Server 2013

Tasks Element Reference

The following table describes each element that can define the tasks for a plug-in.

Element

Syntax

Description

dependencies

 Copy imageCopy Code
<dependencies>
<dependency>. . . </dependency>
</dependencies>

Optional child element of task.

Specifies other groups on which a group depends.

dependency

 Copy imageCopy Code
<dependency taskId="taskId" />

Optional child element of dependencies.

Specifies the ID of another task on which this task depends. The other task must complete before this task can start.

ProcessTemplate

 Copy imageCopy Code
<ProcessTemplate Type="FileType" Filename="LocalPathAndFileName" 
   Description="FileDescription" 
   ServerPath="UploadLocation" />

Where each attribute is defined as follows:

  • Type: The type of file that is being uploaded. The following values are valid: Default and Upgrade for build template files and Custom for lab template files.

  • Filename: The local directory path and name of the file to upload.

  • Description: A short text string that describes the file to upload.

  • ServerPath: The path of the server that is running Team Foundation Server where the file should be uploaded. The only valid upload location is $/$$PROJECTNAME$$/BuildProcessTemplates.

Optional child element of taskXml element for the Build and Lab plug-ins.

Specifies the name, location, and destination of a file to upload to support build processes for a team project.

task

 Copy imageCopy Code
<task id="task id" name="name of task" 
   plugin="Microsoft.ProjectCreationWizard.<PluginName>" 
   completionMessage="SuccessfulCompletionMessage" 
   completionDescription="InProcessMessage">
    <dependencies>. . . </dependencies>
    <taskXml>. . . </taskXml>
</task>

Required child element of tasks.

Specifies work that must occur to configure something specific to the process in a new team project.

  • id: Specifies a name that identifies the task. If another task depends on this task, it references this ID. You must assign a unique value for the ID within the plug-in file.

  • name: Describes what the task does.

  • plugin: Identifies which plug-in must run this task.

  • completionMessage: Specifies the message to display during team project creation to indicate that the task completed successfully. Maximum length is 256 characters.

  • completionDescription: Specifies the message to display during team project creation to indicate that the task is being processed. Minimum length is 1 character.

tasks

 Copy imageCopy Code
<tasks>
    <task>. . . </task>
</tasks>

Required child element of taskXml.

Contains a collection of task elements that each specify work that must occur to configure something specific to the process in a new team project.

taskXml

 Copy imageCopy Code
<taskXml> . . . </taskXml>

Required root element for a plug-in file.

Describes the work that is required to complete this task. The XML inside this element block varies and is specific to each plug-in.

NoteNote

The XML processor does not try to validate the content within the element.

Back to top

Index to taskXML Elements by Function

For more information about the specifics of the XML markup elements that you can specify for each plug-in, see one of the following topics:

  • Build:

Define the initial configuration of Team Foundation Build
  • Classifications: Define the initial areas and iterations in the classification plug-in

  • Groups and Permissions: Configure initial groups, teams, members, and permissions

  • Lab: Define the initial configuration of Lab Management

  • Portal: Define the project portal plug-in for a process template

  • Reports: Add reports to the process template

  • Test Management: Define the initial configuration of Test Manager

  • Version Control: Define the initial configuration of Team Foundation version control

  • Work Item Tracking: Define objects for tracking work items using the work Item tracking plug-in

  • Back to top

    Example: Defining Types of Work Items

    The following example shows a task that creates six types of work items by referencing the definition files for each type.

     Copy imageCopy Code
    <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>

    Back to top

    See Also