Skip to main content

Releases

Releases enable a "staged rollout" of changes that you make to your CommandBar configuration. Combined with your existing QA processes, it can help you make sure that CommandBar experiences are always functional and working well within your app.

There are two key advantages to using Releases:

  • Staged rollout — Changes made by your team aren't immediately available to your users, so it's harder for someone to ship a bad change that causes a bug by mistake.
  • Rollback — If you notice any issue with the changes you've pushed out to your users, you can easily roll back to a previously deployed version.

Some terminology we will use throughout this doc:

  • Environment — A place where configuration for CommandBar can be deployed. Each Environment has a name (e.g. “qa” or “prod”). The set of Environment names is configurable. If you want to name your environments, ask the CommandBar team.
  • Latest — The most up-to-date version of your CommandBar configuration, including changes that may not be available to users yet.
  • Release — A snapshot of the config needed to instantiate CommandBar.
  • Promotion — A Release is moved forward to the next environment (e.g. from “qa” to “prod”) via Promotion.
  • Rollback — An Environment can be rolled back to any previously-deployed release.

Enabling releases

To enable releases, you must either be on an Enterprise plan. Please contact us if you’d like to get releases set up.

Using releases with environments

  1. To release a change to your QA environment, click on that environment, then click "Promote from Latest" to release your changes to it.
  2. If you want to release a change to production, click "Production" and promote the changes from QA.

To deploy the changes in your app, in your SDK invocation of the init method, add the optional "environment" parameter.

Using releases with versions

To deploy the changes in your app, in your SDK invocation of the init method, add the optional "version" parameter.

Usage

The typical workflow with Releases looks like this:

  1. Make a change to your CommandBar config from the Dashboard or Extension. Add a new nudge, create a new Answer, etc.
  2. Test your changes "live" as you make them using Latest.
  3. Periodically, create releases for new versions.

Then, to release the new version to your users:

Using Environments

  1. Release your changes to QA for someone to review.
  2. Test your configuration in QA to verify that all changes are working as expected. You can do this by either updating the version or environment parameter in your init method, or by manually selecting a release version/environment in the Editor panel.