docs/release_process

Release Process

Versioning

We follow Semantic Versioning. In short, this means that the new version should reflect the types of changes that are about to be released.

summary from semver.org

MAJOR.MINOR.PATCH

  • MAJOR version when you make incompatible API changes,
  • MINOR version when you add functionality in a backwards compatible manner, and
  • PATCH version when you make backwards compatible bug fixes.

When we release

We release gitlab-qa on an ad-hoc basis. There is no regularity to when we release, we just release
when we make a change - no matter the size of the change.

How-to

Note: The gem-release job uses:

  • the GITLAB_API_TOKEN environment variable to authenticate against GitLab.com’s API in order to create the tag
  • the GEM_HOST_API_KEY environment variable to authenticate against Rubygems.org’s API in order to release the gem