Publish artifacts from Buildkite to Cloudsmith
Cloudsmith gives your Buildkite pipelines a secure, fully managed home for every artifact they produce. Authenticate using API keys or entitlement tokens, push packages in any supported format via the Cloudsmith CLI, and distribute them globally through Cloudsmith's CDN-backed delivery network.
How we support Buildkite
Why teams integrate Cloudsmith with Buildkite
Frequently asked questions
Store your Cloudsmith API key as a secret in Buildkite and inject it as the CLOUDSMITH_API_KEY environment variable in your pipeline step. The Cloudsmith CLI automatically picks up this variable. For read-only access by agents, use entitlement tokens instead for tighter least-privilege control.
Cloudsmith supports 30+ formats including Docker, npm, Maven, Python (PyPI), Debian, RPM, Helm, NuGet, Cargo, RubyGems, Conda, and many more. You push using the cloudsmith push command with a format-specific subcommand.
Use an API key associated with a dedicated service account for push operations, as entitlement tokens are read-only. For pipeline steps that only download artifacts, entitlement tokens are preferred because they can be scoped to specific repositories and rotated frequently without affecting push credentials.
Install the CLI in a pipeline step using pip install cloudsmith-cli, or use a pre-built Docker image that already includes the CLI to avoid reinstalling it on every build. The CLI is available on PyPI and works on Linux, macOS, and Windows agents.
Yes. Configure your package manager to point at your Cloudsmith repository endpoint and authenticate with an entitlement token. This works for npm, pip, Maven, NuGet, Helm, and all other supported formats, so your agents can resolve internal packages without hitting public registries.
Cloudsmith stores every published version immutably by default. You control retention policies and can configure repositories to deny overwrites, ensuring that a build artifact tied to a specific commit or tag is never silently replaced.
Cloudsmith runs vulnerability scanning on uploaded packages automatically. You can also apply OPA Rego policies that evaluate artifacts on upload and trigger actions such as quarantine, denial, or Slack notifications, before the package is ever available for download.
Yes. You can mirror your Buildkite pipeline stages in Cloudsmith by publishing to separate repositories for development, staging, and production. Use the Cloudsmith CLI or API to copy or promote a package between repositories without re-uploading, preserving the artifact's integrity and provenance.
Cloudsmith repositories support multiple package formats, so a single repository can hold Docker images, npm packages, Maven artifacts, and more alongside each other. You can push different artifact types from different Buildkite steps into the same repository, keeping your organisation structure clean and your pipeline configuration simple.
The full setup guide, including CLI installation, authentication, and example push commands for all supported formats, is available at docs.cloudsmith.com under the Integrations section for Buildkite.