Releases

This section describes how xCAT versions are numbered, how a fix reaches a maintained release, and how a maintainer publishes a release.

Branches and Versions

xCAT has one development branch and one maintenance branch for each minor release.

  • master is the development line of the next minor release.

  • X.Y, for example 2.19, is the maintenance branch of the X.Y series. It receives only fixes that are backported from master. The patch releases X.Y.1, X.Y.2 and later are tagged on it.

The Version file at the top of the tree is the only place that holds the version. buildrpms.pl and builddebs.pl read it, and each build adds the release string snapYYYYMMDDHHMM from the commit time. A release is the build of the tagged commit. There is no separate release build.

Branch

Version holds

Example after 2.19.0 is released

master

the next minor release

2.20.0

X.Y

the next release of the series

2.19.1

The release value in docs/source/conf.py must be the same as Version on the same branch, because Read the Docs shows it in the title of each page. Change the two files in the same pull request.

A released version number is never used again. The Release Checklist changes Version so that no build after a release carries the number of that release.

Tags

Each release has a signed annotated tag named X.Y.Z, for example 2.19.1. The tag points at the commit that the published packages were built from. Release candidates do not get tags, because Read the Docs builds a documentation version for each new tag.

Package Channels

The download server has three channels under https://xcat.org/files/xcat/repos/yum/ and https://xcat.org/files/xcat/repos/apt/:

  • devel: development snapshots from master, in devel/core-snap and devel/xcat-dep.

  • X.Y: the most recent release of the X.Y series. A patch release replaces the contents of its series directory.

  • latest: the most recent release series. go-xcat installs from latest by default, so when latest changes, new installations get the new release.

The offline bundles are in https://xcat.org/files/xcat/xcat-core/ and https://xcat.org/files/xcat/xcat-dep/.