Book Image

Team Foundation Server 2013 Customization

By : Gordon Beeming
Book Image

Team Foundation Server 2013 Customization

By: Gordon Beeming

Overview of this book

<p>Team Foundation Server offers you the benefit of having all your data in one system with all tools tightly integrated with each other, making it easier for teams to work together. Knowing how to customize the Team Foundation Server is very useful as well as powerful. Having the knowledge and applying it to TFS can save users many hours as well as make it easier to understand the data in TFS for reporting purposes.</p> <p>This book will show you how to customize various TFS features in order to create an enhanced experience for your users and improve their productivity. You will create custom controls that will be used in client applications and inside the web access. Next, you will learn how to embed a web page inside your work items to display rich information linked to the work items you are opening.</p> <p>This book will show you how to modify a team’s process template, and then slowly get to grips with some C# code and create a scheduled job.</p> <p>Using this book, you will create a JavaScript web access plugin that greatly increases productivity. You will start off by making various modifications to the process template to illustrate how we can cater to custom data requirements, and then we will move towards writing code to perform more complex customizations.</p> <p>Customizing Team Foundation Server 2013 is one of the best methods you can use to provide rich data for reporting in TFS.</p>
Table of Contents (13 chapters)
Team Foundation Server 2013 Customization
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Deregistering the custom job with TFS


To deregister the custom job, we just need to call the DeleteJob method on the job service. For this, you will need to have the JobId of the job definition.

var tfsUri = new Uri("http://localhost:8080/tfs");
var config = TfsConfigurationServerFactory.GetConfigurationServer(tfsUri);
var jobService = config.GetService<ITeamFoundationJobService>();
jobService.DeleteJob(new Guid("62FDDA25-4938-4BF7-A7C3-6A9BF527A20C"));

After running this, the custom job will be deregistered from the TFS job agent. Because you need the ID of the job to deregister it, you are able to set a static JobId when first registering the job. This way, you will not need to query the jobs to get the JobId when you want to remove it.

If you run this code and then re-run the SQL from earlier in this chapter to check the installation and history of our job, you will get two empty results.

SQL results after uninstalling the custom job

As you can see, our TFS job has been successfully...