simantics/platform
and simantics/third-party
Git repositories have a branch release/x.y.z[.w]
and tag x.y.z[.w]
.release/x.y.z[.w]
release stabilisation branchIn the following sections each task is described step by step.
When release stabilisation starts, branch simantics/platform
and simantics/third-party
repositories:
git clone ssh://<user>@www.simantics.org:29418/simantics/platform.git
cd platform
git branch release/x.y.z[.w] <commit>
git push origin release/x.y.z[.w]
git clone ssh://<user>@www.simantics.org:29418/simantics/third-party.git
cd third-party
git branch release/x.y.z[.w] <commit>
git push origin release/x.y.z[.w]
When creating major/minor releases <commit>
is usually a commit in the master
branch.
With service releases, branch from an existing release/*
branch instead.
Retrieve release branch of the platform repository
git clone ssh://<user>@www.simantics.org:29418/simantics/platform.git
cd platform
git branch release/x.y.z[.w] remotes/origin/release/x.y.z[.w]
git checkout release/x.y.z[.w]
Edit all target platform files in releng/org.simantics.sdk.build.targetdefinition/
, i.e.
simantics.target
org.simantics.sdk.build.targetdefinition.target
org.simantics.sdk.build.targetdefinition-semantum.target
At the beginning of each .target file, increment sequenceNumber
by 1
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde version="3.8"?>
<target name="Simantics x.y.z[.w]" sequenceNumber="11">
Next, replace the following rows in those files:
<repository location="http://www.simantics.org/download/master/sdk"/>
<repository location="http://www.simantics.org/download/master/external-components/maven"/>
<repository location="http://www.simantics.org/download/master/external-components/manual"/>
with
<repository location="http://www.simantics.org/download/release/x.y.z[.w]/sdk"/>
<repository location="http://www.simantics.org/download/release/x.y.z[.w]/external-components/maven"/>
<repository location="http://www.simantics.org/download/release/x.y.z[.w]/external-components/manual"/>
release/x.y.z[.w]
true
release/x.y.z[.w]
true
Documentation to review:
For each wiki page:
Ensure tutorial wiki documentation at http://dev.simantics.org/index.php/Tutorials is up-to-date with the released platform
Ensure tutorial projects and product build properly
com.acme.movie
When the release branches are ready for the release, tag them with the tag vx.y.z[.w]
:
git clone ssh://<user>@www.simantics.org:29418/simantics/platform.git
cd platform
git checkout release/x.y.z[.w]
git tag vx.y.z[.w] -m "Simantics x.y.z[.w] release"
git push origin --tags
git clone ssh://<user>@www.simantics.org:29418/simantics/third-party.git
cd third-party
git checkout release/x.y.z[.w]
git tag vx.y.z[.w] -m "Simantics x.y.z[.w] release"
git push origin --tags
Note The -m argument must be supplied to create an annotated tag. Only annotated or signed tags can be pushed to Gerrit.
Dump documentation wiki using dump-wikis.sh script.
The wiki documentation is mainly in MediaWiki installations. The only sane way to tag the documentation is to back up the mysql database backing the wiki.
\t
) with |
with Regular Expressions
selection checked|#
|
%{background: lightsalmon}Major Bug%
%{background: lightgreen}Major Feature%
%{background: lightgreen}Major Enhancement%
Mail template:
Hello everyone,
Simantics release x.y.z[.w] has been released. Head over to
https://www.simantics.org/redmine/news/<news number>
for the release news.
Best regards,
Simantics Release Engineering Team
News entry template:
On <date> Simantics x.y.z[.w] was tagged in SVN. Please find change log at:
* [[simantics-platform:Simantics_xyzw|Simantics x.y.z.w]]
Insert some general thoughts on the release...
.target
files. .tpd
files allow specifying version ranges instead of specific versions.