Support:Releasing: Difference between revisions

Jump to navigation Jump to search
Content deleted Content added
imported>Hendrik Brummermann
imported>Hendrik Brummermann
 
(51 intermediate revisions by 2 users not shown)
Line 14: Line 14:


You edit the lines
You edit the lines
version.old = 0.95
version.old = 1.47
version = 0.96
version = 1.48
version.android = 1048000

A version of a.b.c is converted to abbbccc with leading 0 for the Android version code. For example 1.48 is 1048000 and 1.49.1 is 1049001.


=== Branching procedure ===
=== Branching procedure ===


We develop code on HEAD and branch from HEAD for each release.
We develop code on <code>master</code> and branch from <code>master</code> for each release.


Eclipse is a good way to branch: from a HEAD checkout, right click and select Team -> Branch, Click details... to see the names of existing branches, like VERSION_00_RELEASE_XX, so that you are sure you're choosing a name for the new branch which sticks with conventions. Ensure your cvs timeout is sufficiently large that the branching prcoess can complete.
Eclipse is a good way to branch: from a <code>master</code> checkout, right click and select Team -> Switch to | New Branch... Please make sure, that you're choosing a name for the new branch which sticks with conventions. VERSION_0x_RELEASE_yy


Once branch is successfully created, one can can update their IDE to use that branch (follow your IDE instructions for this) or for command line cvs, run cvs update -rVERSION_00_RELEASE_XX -Pd
Once a branch is successfully created, one can can update their IDE to use that branch [Team -> Switch to -> Other, Checkout} or for command line:
git pull
on your existing HEAD checkout to change it to be for the XX release.
git checkout VERSION_01_RELEASE_XX


=== Prepare the release announcement ===
=== Prepare the release announcement ===
Line 47: Line 51:
* copy the keystore.ks and build.ant-private.properties: <code>cp ../skeleton/* .</code>
* copy the keystore.ks and build.ant-private.properties: <code>cp ../skeleton/* .</code>
* download the last official release to build-archive: <code>cd build-archive; wget <nowiki>http://arianne.sourceforge.net/download/stendhal.zip</nowiki>; mv stendhal.zip stendhal-<oldversion>.zip; cd ..</code>
* download the last official release to build-archive: <code>cd build-archive; wget <nowiki>http://arianne.sourceforge.net/download/stendhal.zip</nowiki>; mv stendhal.zip stendhal-<oldversion>.zip; cd ..</code>
* run <code>ant dist</code>
* run <code>~/bin/build</code>
* copy the output from the signupdated-step into an editor for later use
* copy the output from the signupdated-step into an editor for later use


Line 54: Line 58:
=== Preparing the updater ===
=== Preparing the updater ===


Note: 0.95 is the version of the update-base. (The last time the updater was broken).
Note: 1.20 is the version of the update-base. (The last time the updater was broken).


* download the file <nowiki>http://arianne.sourceforge.net/stendhal/updates/update-0.95.properties</nowiki> and save it as update-0.95.properties.xxx
* download the file <nowiki>http://arianne.sourceforge.net/stendhal/updates/update-1.20.properties</nowiki> and save it as update-1.20.properties.xxx
* edit update-0.95.properties.xxx. The file has lots of comments. Important: for the init.file-list and update.file-list parameters, stendhal or stendhal-diff must be the last entry in order to recover from a half-download.
* edit update-1.20.properties.xxx. The file has lots of comments. Important: for the init.file-list and update.file-list parameters, stendhal or stendhal-diff must be the last entry in order to recover from a half-download.
* Use <code>ls -l</code> to learn the file size, the signature have been printed by the build script earlier (see above)
* Use <code>ls -l</code> to learn the file size, the signature have been printed by the build script earlier (see above)
* You need at least stendhal-data-1.xx.jar and stendhal-1.xx.jar for the initial download and stendhal-data-diff-1.xx-1.xx.jar, stendhal-diff-1.xx-1.xx.jar for the update. If there had been changes, include marauroa-client, stendhal-sound-diff and/or stendhal-music-diff.
* You need at least stendhal-data-1.xx.jar and stendhal-1.xx.jar for the initial download and stendhal-data-diff-1.xx-1.xx.jar, stendhal-diff-1.xx-1.xx.jar for the update. If there had been changes, include marauroa, stendhal-sound-diff and/or stendhal-music-diff.
* Upload the files to the arianne webspace on Sourceforge: <code>scp stendhal*.jar update-0.95.properties.xxx kymara,arianne@web.sf.net:/home/project-web/arianne/htdocs/stendhal/updates/</code>
* Upload the files to arianne.sourceforge.net: <code>scp * nhnb,arianne@web.sf.net:/home/project-web/arianne/htdocs/stendhal/updates/</code>
* Upload the files to arianne-project.org: <code>cp * /var/www/arianne/stendhal/updates/</code>


=== Testing the updater ===
=== Testing the updater ===


* On your local computer find ~/.stendhal/jar/jar.properties and add this line <code>server.update-prop-0.95=<nowiki>http://arianne.sourceforge.net/stendhal/updates/update-0.95.properties.xxx</nowiki></code>
* On your local computer find ~/.stendhal/jar/jar.properties and add this line <code>server.update-prop-1.20=<nowiki>http://arianne.sourceforge.net/stendhal/updates/update-1.20.properties.xxx</nowiki></code>
* Test a normal update for the download client
* Test a normal update for the download client
* Test a update for the webstart client.
* Test a update for the webstart client.
Line 78: Line 83:
=== Uploading the File Release ===
=== Uploading the File Release ===


* Login to the Sourceforge Shell server: <code>ssh -t kymara,arianne@shell.sourceforge.net create</code>
* Login to the Sourceforge Shell server: <code>ssh -t nhnb,arianne@shell.sourceforge.net create</code>
* Go to the stendhal folder: <code>cd /home/frs/project/a/ar/arianne/stendhal</code>
* Go to the stendhal folder: <code>cd /home/frs/project/arianne/stendhal</code>
* Create the folder for the download: <code>mkdir 1.xx</code>
* Create the folder for the download: <code>mkdir 1.xx</code>
* Edit the version number in <code>vi stendhal-readme.markdown</code>
* Edit the version number in <code>vi stendhal-readme.markdown</code>
* Logout of the sourceforge shell
* Logout of the sourceforge shell
* From the build/lib directory of stendhalgame.org, upload the updater/webstart files: <code>scp stendhal-*1.xx.jar stendhal*-diff-*.jar kymara@frs.sourceforge.net:/home/frs/project/a/ar/arianne/z_old/stendhal-updates</code>
* From the build/lib directory of stendhalgame.org, upload the updater/webstart files: <code>scp stendhal-*.jar stendhal*-diff-*.jar nhnb@frs.sourceforge.net:/home/frs/project/arianne/z_old/stendhal-updates</code>
* Upload the distribution <code>scp stendhal-*1.xx.zip stendhal-1.xx-src.tar.gz kymara@frs.sourceforge.net:/home/frs/project/a/ar/arianne/stendhal/1.xx</code>
* Upload the distribution <code>scp * nhnb@frs.sourceforge.net:/home/frs/project/arianne/stendhal/1.xx</code>


Alternatively, you can use the Sourceforge webpages at Develop -> Project Admin -> File Manager to create the folder and upload the files.
Alternatively, you can use the Sourceforge webpages at Develop -> Project Admin -> File Manager to create the folder and upload the files.
Line 97: Line 102:


* Update the single line /home/project-web/arianne/htdocs/stendhal.version to be 1.XX
* Update the single line /home/project-web/arianne/htdocs/stendhal.version to be 1.XX
* Rename update-0.95.properties.xxx to update-0.95.properties
* Rename update-1.20.properties.xxx to update-1.20.properties
* Uncomment the announcement in /home/project-web/arianne/htdocs/xml/website_news.xml
* Uncomment the announcement in /home/project-web/arianne/htdocs/xml/website_news.xml
* Edit /home/project-web/arianne/htdocs/xml/game_stendhal.xml - update the top part for version and release date, Update the changelog
* Edit /home/project-web/arianne/htdocs/xml/game_stendhal.xml - update the top part for version and release date, Update the changelog
Line 103: Line 108:
== Releasing Phase 3: Update stendhalgame.org ==
== Releasing Phase 3: Update stendhalgame.org ==


* Double check that the file release is visible, the default download points to the new version, that <nowiki>http://arianne.sourceforge.net/stendhal/updates/update-0.95.properties</nowiki> and <nowiki>http://arianne.sourceforge.net/stendhal.version</nowiki> are updated
* Double check that the file release is visible, the default download points to the new version, that <nowiki>http://arianne.sourceforge.net/stendhal/updates/update-1.20.properties</nowiki> and <nowiki>http://arianne.sourceforge.net/stendhal.version</nowiki> are updated
* Announce in game: /tellall Hi, please logout within the next five minutes and return in about ten minutes for a quick server update.
* Announce in game: /msg postman tellall Hi, please logout within the next five minutes and return in about ten minutes for a quick server update.


=== Rebuild the server ===
=== Rebuild the server ===
Line 120: Line 125:
* Unzip: <code>unzip ../branch_cvs/1.xx/build/stendhal-server-1.xx.zip</code>
* Unzip: <code>unzip ../branch_cvs/1.xx/build/stendhal-server-1.xx.zip</code>
* Announce in game that the server will go down now (so that it is one of the last lines in the chatlog for players)
* Announce in game that the server will go down now (so that it is one of the last lines in the chatlog for players)
* Stop the server <code>./stendhal stop</code>
* Restart the server as root <code>systemctl restart stendhal</code>
* Check the log that the shutdown completed: <code>less log/server.log</code>, hit shift+g to go to the end of the file, q to exit
* Start the server: <code>./stendhal start</code>
* Keep an eye on <code>less log/server.log</code> for errors, hit shift+f to follow, ctrl+c, q to exit
* Keep an eye on <code>less log/server.log</code> for errors, hit shift+f to follow, ctrl+c, q to exit


Line 161: Line 164:
* Sourceforge project news item
* Sourceforge project news item
* arianne-announces Mailinglist
* arianne-announces Mailinglist
* [http://happypenguin.org/show?Stendhal Happy Penguin] (both "Submit an update about this game" and post a comment)
* [http://happypenguin.altervista.org/gameshow.php?t=Stendhal Happy Penguin] (both "Submit an update about this game" and post a comment)
* [http://freecode.com/projects/stendhal Freecode] (Freshmeat)
* http://www.lgdb.org/game/stendhal
* https://libregamewiki.org/Stendhal
* Twitter: <code>cd /home/marauroa; bin/twitter-stendhalgame "MESSAGE HERE, include link to arianne.sf.net"</code>
* http://gaming.wikia.com/wiki/Stendhal
* Google Plus (Facebook is automatically updated from Twitter)
* https://stendhalgame.itch.io/stendhal
* Mastodon
* Facebook
* [[Support:Pages_covering_Stendhal]]
* [[Support:Pages_covering_Stendhal]]