How to integrate Jenkins with Cloudsmith
These instructions are generic examples. Cloudsmith provides contextual setup details for Jenkins, with copy n' 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.
In the following examples:
|OWNER||Your Cloudsmith account name or organisation name (namespace)|
|REPOSITORY||Your Cloudsmith Repository name (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:
pip install cloudsmith-cli cloudsmith push FORMAT OWNER/REPOSITORY PACKAGE_FILE
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')
The push command will vary with the package format, an example of the push command for a debian package would look like:
cloudsmith 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).
Updated almost 2 years ago