Accelerate Azure DevOps or TFS with JFrog Artifactory and Conan

By Elio Marcolino

| October 29, 2018

SHARE:

For some C/C++ developers, working within the structure of continuous integration can be an awkward transition. Running a CI server and the supporting tools to resolve dependencies, share packages, and manage binaries may be unfamiliar, and getting them to work together well can be challenging.

C/C++ Continuous Integration Challenges

Microsoft’s Azure DevOps (formerly known as VSTS) or TFS can be attractive to these developers, providing an environment for coding and building applications that they’re already familiar with. But to integrate this CI server with those tools that help manage builds, may require using shell commands, a manual and complex method that’s prone to mistakes.

Conan Promotes C/C++ in Azure DevOps

Conan is an open source, decentralized and multi-platform package manager for C/C++ developers to create and share native binaries. It can be used with Artifactory as a Conan Package Manager to resolve dependencies and share packages within your organization.

This tutorial shows how to add Conan tasks to your Build or Release pipelines through the Artifactory Extension, and push the generated buildinfo metadata to Artifactory where it can be used to track and automate your builds.

Configuring DevOps Azure to use Artifactory with Conan tasks

Before You Start

To configure your builds to use Conan and Artifactory together, first download and install these tools.Installing Conan

When completed, proceed to create builds and access buildinfo from within Azure DevOps or TFS.

Steps to Follow

In these steps, you will set up Azure DevOps to use Artifactory and add Conan tasks to your build pipeline. Then you can set up to push the buildinfo from the Conan task to Artifactory.

STEP 1: Configure the Artifactory instance

Once the Artifactory Extension is installed, you must configure Azure DevOps to access the Artifactory instance.

To add Artifactory to Azure DevOps:

In Azure DevOps, go to Project Settings > Service connections.

Click + New service connection to display the list control, and select Artifactory.

In the resulting Update Authentication for Artifactory dialog, enter the required server and credential information, and click OK.

STEP 2: Add a Conan task

Once your Artifactory connection is configured, you may add Conan tasks to your Build or Release pipelines.

To add a Conan task:

Go to the Pipeline Tasks setup screen.

In the Add tasks section, search for “Conan” in the task selection list.

Select the Artifactory Conan task to add it to your pipeline.

In the new task, select which Conan command to run.

Configure the Conan command for the task.
Continue to add Conan tasks as you need for each pipeline.

STEP 3: Configure the Push task buildinfo to Artifactory

When the pipeline containing the Conan task executes, the task log shows all the information about the executed Conan command.You can configure your Conan task to collect the buildinfo by selecting the Collect buildinfo checkbox when you create the task.

Once collected, the buildinfo can then be pushed as metadata to Artifactory.

After you run the pipeline, you will be able to see the build information for the Conan task in Artifactory.

Accelerate with Artifactory

While we’ve focused here on Conan for C/C++ developers, Artifactory Extension for Azure Devops/TFS supports several other build types as well, such as npm for JavaScript and Maven for Java. The extension lets you capture information about deployed artifacts and resolved dependencies, and automatically collecting environment data associated with your builds that can be fully traced.