Artifactory

The Artifactory integration uses the builtin integration model “Artifact Manager” and can be configured on every project by users

This integration allows you:

Recommendations

To take full advantage of this integration, we recommend a few things:

For example, you need a generic repository for CDS artifacts. You can create something like:

By using this convention, the CDS release action will be able to promote your artifacts from snapshot to release repositories

How to configure Artifactory integration on your project

On the integration project view, add a new “Artifact Manager” integration and fill the following parameters:

Enable Artifactory integration on your workflow

On the workflow advanced view, you can link your workflow to project integration.

Integration actions

The artifactory integration comes with 5 actions: https://github.com/ovh/cds/tree/master/contrib/integrations/artifactory

Artifactory-Upload-Artifact

This plugin is used by CDS Upload Artifact action to send artifact into artifactory.

The artifacts will be stored in the cds repository provided during the integration configuration (cds.repository)

Artifactory-Download-Artifact

This plugin is used by CDS Download Artifact action to retrieve artifact from artifactory.

The artifacts will be downloaded from the cds repository provided during the integration configuration (cds.repository)

Artifactory-Push-Build-Info

This plugin is used by CDS Push Build Info action to create inside artifactory a build-info. JFrog documentation: https://www.jfrog.com/confluence/display/JFROG/Build+Integration

This action must be run after all the artifacts have been uploaded.

The build name computed by CDS will be: [build.info.path]/[cds.projectkey]/[cds.workflow.name]

Artifactory-Promote

This plugin is used by CDS Promote action to move artifacts from 1 repository to another. The two repositories must share the name but having a different suffix.

For example:

Artifactory-Release

This plugin is used by CDS Release action.

It promotes the provided artifacts, creates a release bundle and distributes it to all edges.

This action uses both the artifactory and distribution APIs.