title | layout | related | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
CMS Offline Software |
default |
|
In order to start a new release cycle you need to be an administrator of cms-sw/cmssw
, cms-sw/cmsdist
and cms-sw/cms-bot
The following needs to happen:
- Run
cms-bot/new-release-cycle
script to setup new release cycle. This creates new release branch (based on existing development branches), setup new milestone, move all the open PRs for cmssw master branch to new milestone and update cms-bot files (forward_ports_map.py, milestones.py, releases.py, releases.map and config.map
).
export CYCLE=CMSSW_10_0_X
git clone git@github.com:cms-sw/cms-bot
cd cms-bot
PYTHONPATH=/cvmfs/cms-ib.cern.ch/jenkins-env/python/shared ./new-release-cycle --cycle ${CYCLE}
- Verify (
git diff
) the changes it made incms-bot
. Disable any IBs for old development release cycle by appendingDISABLED=1;IB_WEB_PAGE=1;
(DISABLED=1
to stop building IBs,IB_WEB_PAGE=1
to keep showing the already build IBs on CMS IBs dashboard) at the end of each IB line inconfig.map
e.g. to disable specialROOT6
IB
SCRAM_ARCH=slc6_amd64_gcc630;PKGTOOLS_TAG=V00-31-XX;CMSDIST_TAG=IB/CMSSW_9_4_X/rootgcc6;RELEASE_BRANCH=CMSSW_9_4_ROOT6_X;RELEASE_QUEUE=CMSSW_9_4_ROOT6_X;BUILD_HOUR=23,00;DOCKER_IMG=cmssw/slc6-builder:latest;
will become
SCRAM_ARCH=slc6_amd64_gcc630;PKGTOOLS_TAG=V00-31-XX;CMSDIST_TAG=IB/CMSSW_9_4_X/rootgcc6;RELEASE_BRANCH=CMSSW_9_4_ROOT6_X;RELEASE_QUEUE=CMSSW_9_4_ROOT6_X;BUILD_HOUR=23,00;DOCKER_IMG=cmssw/slc6-builder:latest;DISABLED=1;IB_WEB_PAGE=1;
- Update
material_budget_ref.py
(if needed) for new release cycle (use existing reference for the new cycle). - Update cmssw known errors for new release cycle (if needed) in cms-bot/cmssw_known_errors.py
- Commit and push these changes
git checkout -b new-cycle-${CYCLE}
git commit -a -m "setup new developement cycle ${CYCLE}"
git push
- Go to https://github.com/cms-sw/cmsdist/pulls and update base branch to IB/$CYCLE/master for those PRs which were opened for previous release cycle