Team Services Integration with Jenkins Jobs, Pipelines, and Artifacts

Team Services now integrates even better with Jenkins.  The “Jenkins Queue Job” and “Jenkins Download Artifacts” tasks are useful for blending Team Services and Jenkins build and release steps. Why would Microsoft choose to integrate with Jenkins when Team Services has its own highly-capable build and release systems?  Our goal is to integrate with whatever tools work best for your team.  Here are some example scenarios:

The “Jenkins Queue Job” task was initially introduced in July, 2016.  The task now has support for parameterized Jenkins jobs and tracks full Jenkins pipelines.  It also now supports self-signed server certificates and Jenkins crumb security for protection against cross-site request forgery (CSRF) exploits. Because the task runs in a light-weight, long-polling agent that can be installed on your Jenkins server, it obviates the need to modify inbound firewall rules for Team Services to queue Jenkins jobs.

Jenkins Queue Job task

When capturing pipelines, the task console will capture the console output for the full Jenkins job pipeline:

Jenkins Queue Job console

A pipeline job tree is rendered in the Team Services build summary for traceability:

Jenkins Queue Job build summary

New in August, 2016 is the “Jenkins Download Artifacts” task.  This task makes it easy to download build artifacts from Jenkins and integrate them into your Team Services build or release process.  Once artifacts are downloaded, they can be used by other tasks as demonstrated in the video below.

Jenkins Download Artifacts task

 

Both tasks are open-sourced. Contributions are welcome, and feel free to use these as a pattern to create your own extensions in the Team Services Marketplace. If you have any suggestions or find issues, reach out to us on GitHub.

Note that these tasks are available today in Team Services and will be available in the next version of Team Foundation Server for on-premises installations.

Also check out Team Services for Java.