CircleCI orb for publishing packages to (and interacting with) Cloudsmith repositories.
See onsite documentation for further details.
We use the CircleCI CLI to perform common development and release tasks for this orb. Please first ensure you have it installed and configured with appropriate credentials.
We store the orb in git as individual YAML files. Before we can use the orb or perform further actions we need to "pack" it up into a single orb.yml
file. We do so with the pack
command:
$ circleci config pack src/ > orb.yml
Once generated, we can use the CLI to validate that the orb is correctly structured and meets basic standards:
$ circleci orb validate orb.yml
Releasing the orb happens automatically from CI. The orb is linted (yamllint
) and validated (circleci orb validate
) as part of the CI process.
To make an development (or alpha) release, simply push your changes to a branch on Github. CircleCI will automatically build the orb and push a development release to the version cloudsmith/cloudsmith@dev:$BRANCH_NAME
.
Once happy with your changes, merge to master as normal via a PR and then tag a new release (either via CI or the Github UI) with an appropriate version number (must be semver compatible).
For example, if you create a tag named 2.0.0
it'll result in a public release to cloudsmith/cloudsmith@2.0.0
.