Sobek 3 – Release branching
This document describes which steps you need to take when creating a release branch for Sobek 3. Although aimed at DeltaShell developers, one might require help from someone more familiar with the rekenhart svns (eg, DS tree).
SVN steps
- Create svn branch (copy of trunk\delta-shell)
- Remove non relevant plugins from branch (in lib, src, test and test-data), eg:
- Toolbox
- Data.Xml
- Developer Tools
- Habitat
- MorphAn
- WFDExplorer
- etc.
- Branch each rekenhart (if you expect fixes), or tag it.
- Modify externals and set it to the created branch (previous step), or just peg the revision number to the current
- Flow ModelApi external: .\delta-shell\src\Plugins\DelftModels\Externals, svn properties on 'ds' and modify the svn:externals property.
- Remove all non relevant plugins from Setup solution / DeltaShell.proj
- Increase Sobek plugin version numbers eg (3.x to 3.x+1) in the trunk.
- Branch the testbench of each plugin (if you expect fixes), or tag it.
TeamCity steps
Do this after all SVN steps, or at least step 1 & 2, are completed to make sure checkout is faster & clean!
- Create copy of the trunk or a branch project configuration
- Rename the VCS root to the 3.x version number (if your vcs root is shared, you have the option to save it as a copy once you modify it)
- Change all checkout directories to a relevant (short!!!) name
- Remove / merge non-relevant configurations (for example the test coverage configurations and build zip)
- Disable / remove the computational engines dll-copy configurations, or modify the vcs root to point at a branch.
- Fix the 'Build number format' of all testbench configurations: {build.vcs.number.<vcsrootname>}
- Warning: after committing the first change in the branch, all build agents will start a full checkout, which can take between 2 and 3 hours, during which time the build agent capacity for other projects is extremely low.
For minimal impact, you should at the end of the day assign a single configuration (eg, Unit Test) to all (relevant) build agents. This will make sure they all do the full checkout during the night without disturbing other projects.
MSI steps
- Remove unrelated wix-projects (Habitat, WFD Explorer, MorphAn)
- Remove these from delta-shell\setup\plugins too
- Remove irrelevant build targets from delta-shell\DeltaShell.proj (Mis and MsiDebug tags), can be edited with any text editor
- Remove EAP / preview texts in SOBEK wix project -> Product.wxs and SOBEK wix project properties installer name
- When changing installer name (properties of wix project)
- Fix version numbers in SOBEK wix project -> Product.wxs
- Update license ( delta-shell\setup\Plugins\Sobek\License.rtf )
- Update manuals ( delta-shell\setup\Plugins\Sobek\Resources )
- Add new manuals for new plugins here and add and link them in Welcome.html
- Add the new files in Product.wxs
- Update any images / etc ( delta-shell\setup\Plugins\Sobek\Resources )