IceScrum Stylesheets is a tiny migration tool which was developed due to problems while upgrading to IceScrum V5. We had release 3 running for a long time in a big project. However, the old release had some pitfalls (e.g. performance issues) which were supposed to be solved in newer version 4 and 5. I tried to upgrade to release 4 of IceScrum in April 2012 but failed. The built-in migration was not able to properly upgrade users and projects which forced us to stick with the old release.
I thought that release 5 will resolve this upgrade problems and I gave it a new try in August 2012. The result however was exactly the same. The system reported some weird menu problems in its system log when a user tried to logged in.
I discovered another option to migrate between versions: Export and Import of projects. But IceScrum team failed to make these versions compatible with each other. Again I was stuck in the migration until I discovered that Import/Export works via XML files. This was the birth of the XSL translation project. I analyzed both, XML files from release 3 and release 5 and finally wrote a XSL translation that solved my problem.
Although I didn’t see anyone else in the net having the same problem, I decide to publish my work so you can migrate using the same way.
The project is published under GNU LGPL 3.0 which basically means you are free to use and modify the code as you desire. There is no obligation to publish your changes to anyone although I would be glad to integrate them in my project if you share it. All you need to do is mentioning the source (this webpage) when you are about to use the project.
<dependency> <groupid>eu.ralph-schuster</groupid> <artifactid>icescrum-stylesheets</artifactid> <version>1.0.0</version> </dependency>
The usage is very simple. Export your IceScrum R3 project. The run the XML translation (R3toR5.xsd) on it. Unfortunately, release 5 of IceScrum uses MD5 hashes for UIDs of users which cannot be produced with the XSL translation process. That’s why the project contains the PostProcess class that you simply issue with:
java icescrum.xsl.PostProcess -i INPUT-FILE -o OUTPUT_FILE
The target file produced can then be imported in IceScrum release 5.
Bugs and changes can be reported in JIRA