diff --git a/README.md b/README.md index 7cadc75cc..033f340a3 100644 --- a/README.md +++ b/README.md @@ -159,11 +159,33 @@ The models are generated from the API's swagger spec. * ```REPLICATED_REGISTRY_ORIGIN``` may be set to overrride the registry endpoint ### Releases -Releases are created on Travis when a tag is pushed. This will also update the docs container. + +Releases of the Replicated Vendor CLI are automated using [Dagger](https://dagger.io/) and [GoReleaser](https://goreleaser.com/). + +To create a new release: + +```bash +# Create a major, minor, or patch release: +make release version=major +make release version=minor +make release version=patch ``` -git tag -a v0.1.0 -m "First release" && git push upstream v0.1.0 + +The release process: +1. Ensures you're on the `main` branch with a clean git tree +2. Updates the version in the codebase +3. Creates a git tag for the release +4. Builds and publishes binaries to GitHub Releases +5. Publishes Docker images to Docker Hub (as `replicated/vendor-cli`) + +Once the release is out, if there any changes to CLI commands or parameters, new docs have to be generated: + +```bash +make docs ``` +This will create a PR in https://github.com/replicatedhq/replicated-docs, which then needs to be reviewed and merged. + ### Regenerating Client Code When the swagger definitions change, you can regenerate the Client code from the swagger spec with