How to Configure TDS with Jenkins Server

January 05, 2016 | Kliment Klimentov

Jenkins is a continuous integration and delivery application. Many companies use Jenkins to build, test, and deliver software in a continuous manner. There are a numerous companies using Jenkins for their Sitecore, TDS supports Jenkins for continuous integration. Read our how to below.

Configuration Design

Needed programs

  • Visual Studio
  • TDS
  • TFS version control server (you can use other VCS)
  • Jenkins Build Server
  • Hedgehog Package deployer (It's optional and it's needed if you want to install the generated package automatically)

Installation and Configuration

Dev Machine Installation & Configuration Steps:

  1. Install Visual Studio
  2. Install TDS
  3. Setup a local instance of Sitecore
  4. Setup your TDS Project

Package Build Configuration

One of the ways to utilize TDS is to build an update package with the project files and then upload it to the targeted Sitecore instances.

In order to work properly, you need to create a Web project in your solution and add it as a Source Web Project in the TDS Project.

Create a new build configuration and name it "Package" for example. Leave the Sitecore Web URL and Sitecore Deploy Folder blank.

You'll need to add the Sitecore Assembly files in your project. Create a folder in your solution and add the Sitecore.Kernel.dll, Sitecore.Logging.dll, Sitecore.Update.dll, and Sitecore.Zip.dll in it. Then add the relative to the project path in the "Sitecore Assembly Path" textbox.

TFS Server Machine Installation & Configuration

Install and configure TFS source control on a dedicated machine. There’s nothing TDS specific here, so just configure it to work with Visual Studio.

Jenkins Server Machine Installation & Configuration

  1. Install Jenkins
  2. Install MSBuild
  3. Install TDS (It can be installed on your build server, without the need for Visual Studio).
  4. Install MS build plugin to Jenkins
  5. Install Team Foundation Server Plugin
  6. Configure Jenkins to work with TDS
    1. Make a new item => Freestyle Project
    2. Configure the Source Control Connection
  7. Configure MSBuild Step
  8. Configure Windows batch command

    It's just a simple command which copies the files in the package drop folder of the built project and paste it in the location you want. You can make it copy the file to the Sitecore instances (permissions to the folder are required if it’s on another machine) 

    If you want to install the package automatically, use the Hedgehog package deployer tool. It checks for a new .update file in a special directory and if there is some, installs it and delete it. It will save you a lot of time using it on your QA instance.

Target Machine Installation & Configuration

  1. Install Sitecore instances
  2. Install Hedgehog Package deployer (optional)