User Tools

Site Tools


wiki:development:release-howto-mswin

General Steps

These steps assume you have access to the X2Go WinBuilder VM, which runs on top of Japsand.

Also to code.x2go.org via SSH.

Variable Meaning
<ver> Existing released version. For example, 4.0.3.2
<release/ver-mswin> Branch off of a released version. For example, 4.0.3.2-mswin
<ver-YYYY.MM.DD> New Windows-specific version. For example, 4.0.3.2-20150201 (for February 1st, 2015)
<ver-YYYY.MM.DD-mswin> Git tag for the new Windows-specific version. For example, 4.0.3.2-20150201-mswin (for February 1st, 2015)
<component> Git name of the to-be-released component.

Create a branch if it DNE.

No Command Tips / Comment
1
git clone ...
Clone repository on on your machine (cygwin) with git, if it doesn't already exist.
2
cd <component>
3
git fetch --all 
If the repo already exists, you will follow this step instead of step 1.
4
git checkout -b <release/ver-mswin> <ver> 

If a branch already exists:

No Command Tips / Comment
1
git clone ...
Clone repository on on your machine (cygwin) with git, if it doesn't already exist.
2
cd <component>
3
git checkout <release/ver-mswin>
Only necessary, if you're not already on the branch. Check via git status.
4
git pull --rebase
Always make sure the repository is up-to-date.

Continue with the release process:

No Command Tips / Comment
1
dch -r
Make sure to explicitly use :w in vim to save the text. Otherwise, i.e., via :x, your change will not be recorded! Also, this needs to be updated for cygwin.
2
git diff
Make sure the output is exactly what you expect!
3
git commit -am 'release <ver>'
4
git push

Update the build-main-mswin branch. If you created a branch earlier:

No Command Tips / Comment
1
git branch -f build-main-mswin <release/ver-mswin>
2 Ask the X2Go git admin to run the same command on the server Currently, Ionic is the admin

If you did not create a branch earlier:

No Command Tips / Comment
1
git checkout build-main-mswin 
2
git merge --ff-only <release/ver-mswin>
3
git push

Now, if building X2Go Client, perform a build using Jenkins.

http://jenkins.x2go.org:8080/view/All%20Releases/

After completed, the build will be uploaded under the heuler folder (and will not have the git commit hash in its filename, which sets it apart from the nightly builds.)

If building PyHoca-GUI perform a build with <ver-YYYY.MM.DD> as the version from X2Go-WinBuilder:

http://wiki.x2go.org/doku.php/wiki:development:build-howto-mswin:pyhoca-gui

And do some testing. Your friendly neighborhood Windows maintainer (mike#2) always SFTPs the NSIS installers to his personal Windows desktop, and then tests them there.

Once tested:

1
git tag -s '<ver-YYYY.MM.DD-mswin>' -m 'Windows-Specific Release <ver-YYYY.MM.DD>'
Run this on your own machine in your checked-out, updated copy (see steps 2 to 5.) Make sure your gnupg system is set up correctly and you have default key set.
2
git push --tags
Run this on your own machine to push the new tag.
3 Upload the installers to code.x2go.org FIXME: Fill in details
4
cd <directory>> && ~/sign_packages/sighntarballs.sh
On code.x2go.org via SSH. Automatically signs and checksums tarballs, dmg files etc. No manual work required.

Follow-Up:

  1. Update link on home page http://wiki.x2go.org/doku.php
  2. Release email
wiki/development/release-howto-mswin.txt · Last modified: 2017/03/11 20:40 by mikedep333