|
Key
This line was removed.
This word was removed. This word was added.
This line was added.
|
Changes (3)
View Page Historyh1. Usage
* Inform all developers that a release will be launched soon. No commit allowed during release process.
* Inform all developers that a release will be launched soon. No commit allowed during release process (if possible, block the commit to the other SVN users).
* Check that you have a copy of all release bash scripts located into : [https://svn.petalslink.org/svnroot/trunk/infra/tools/release/|https://svn.petalslink.org/svnroot/trunk/infra/tools/release/] (all release scripts need to be located into the same folder)
* Launch the release script : *release.sh* *{_}PROJECT_NAMES{_}* *{_}URL_CHECKOUT{_}{*}* *
* Launch the release script : *release.sh* *{_}PROJECT_NAMES{_}* *{_}URL_CHECKOUT{_}{*}* *
* Once the release is performed, you could find released artifacts into petalslink maven repository. More, a subdirectory of the "RELEASE_CHECKOUT" directory, called "release", is created during this process and contains useful release information (global release changelog, released modules, release log).
* Enjoy \:-)
* Enjoy \:-)
h1. In case of failure
If the script fails in the course of the release process,
* before beginning the automatic release process itself (that is to say during the checkout, the dependencies extraction or the questions to the user), just delete the local checkout directory (it is called RELEASE_CHECKOUT)
* after beginning the automatic release process itself,
** change the current directory to the directory of the project which fails (in the local checkout directory) and launch the rollback of the project release (mvn release:rollback)
** realign all the dependencies of all the POM (in the local checkout directory) by executing the script . This script takes as argument, the path of the local checkout directory. It realigns the dependency versions which might be wrong in all the POM of the local checkout directory and commits the necessary corrections. *This step is important because the projects of the trunk may not compile any more because of wrong dependency version.*