Integrations
Integrating Jenkins
How to integrate Jenkins with Cloudsmith
Contextual Documentation
These instructions are generic examples. Cloudsmith provides contextual setup details for Jenkins, with copy and paste snippets (with your namespace/repo pre-configured) in the documentation within a repository.
API Key Configuration
If you haven't already done so you'll need to expose your Cloudsmith API Key within Jenkins. We recommend using the credentials plugin then injecting the CLOUDSMITH_API_KEY
environment variable into your build jobs.
Examples
In the following examples:
Identifier | Description |
---|---|
OWNER | Your Cloudsmith organisation name (namespace) |
REPOSITORY | Your Cloudsmith Repository identifier (also called "slug") |
FORMAT | The format of the package, i.e "deb", "maven", "npm" etc |
PACKAGE_FILE | The filename of the package |
Build Steps Example
Add the following as a build step to perform the push to Cloudsmith:
# Jenkins Build Steps using CLI
pip install cloudsmith-cli
cloudsmith push FORMAT OWNER/REPOSITORY PACKAGE_FILE
Pipelines Example
Add the following as a build stage to perform the push to Cloudsmith:
stage "Deploy"
sh('pip install cloudsmith-cli')
sh('cloudsmith push FORMAT OWNER/REPOSITORY PACKAGE_FILE')
Note
The push command will vary with the package format, an example of the push command for a debian package would look like:
bashcloudsmith push deb my-org/my-repo/ubuntu/xenial foo-1.0.deb
Please see the Cloudsmith CLI for full details of the push command for other formats and additional help.