CHECKING PRE-CONDITIONS Checking if version number is set... No, not set Please specify a version number E.g., ant -Dversion=3.03 -Dversion.minor=03 create-release or, ant -Dversion=trunk -Dversion.minor=03 create-release Version number not set Version number: ${version} Determining where to put the release... No release directory specified. Please specify release directory on the command line. E.g., ant -Drelease.dir=/research/me/releases/3.03 -Dmac.release.dir=/Users/me/releases/3.03 -Dwindows.release.dir=c:\research\me\releases\3.03 create-release Release directorys not set Release directory: ${release.dir} Mac release directory: ${mac.release.dir} Windows release directory: ${windows.release.dir} Checking if we are resuming from a given target... No, start from the beginning Yes, resuming from ${resume.from} Determining resume mode... Mode not set, defaulting to 'fallthrough' Mode set to ${resume.mode} You have not specified a valid resume mode. Valid modes are 'fallthrough' and 'descend'. You have not specified a valid resume mode. Checking if username and password set... Not set You have not specified a username for ssh Determining execute mode... Execute not set, defaulting to 'true' Execute set to ${execute} You have not specified a valid value for execute. Valid values are 'true' and 'false'. You have not specified a valid value for execute. Determining the branch path... Branch Path: ${branch.path} Checking that ${svn.gsdl} exists... No, does not exist Yes, it exists Checking that ${svn.gli} exists... No, does not exist Yes, it exists Checking that ${svn.indexers} exists... No, it does not exist Yes, it exists Checking that ${svn.documentation} exists... No, it does not exist Yes, it exists Some branches do not exist, or you are unable to access them from where you are. Please review the list above and create any branches that are missing, or run this script from somewhere with access to the repository. All exist Current Month: ${current.month} Current Year: ${current.year} Usage: ant -Dversion=VERSION_NUMBER -Drelease.dir=RELEASE_DIR -Dusername=USERNAME -Dpassword=PASSWORD -Dmac.release.dir=OUTPUT_DIRECTORY [-Dresume.from=TARGET_ADDRESS] [-Dresume.mode=MODE] create-release This project creates releases of Greenstone2 from the subversion repository given a version number. Each target in this project's target tree has been given an address, like so: root |-1 | |-1.1 | |-1.2 | |-2 | |-2.1 | |-2.2 etc. PARAMETERS Parameters are specifiable on the command line or in build.properties Parameters which remain static throughout the release process should be stores in build.properties: version, version.minor, release.dir, mac.release.dir, windows.release.dir, username Other parameters will change each time you invoke the script, specify them on the command line: resume.from, resume.mode version=VERSION_NUMBER, where VERSION_NUMBER={x.xx|trunk} This project can either create a release from a greenstone3 branch, or from the development trunk. To create a branch release, specify the VERSION_NUMBER (e.g., 3.03), and ensure that the following branches exist in the repository: greenstone3/branches/VERSION_NUMBER gli/branches/VERSION_NUMBER indexers/branches/VERSION_NUMBER documentation/branches/VERSION_NUMBER To create a trunk release, specify 'trunk' as the version number. The project will use the trunk of greenstone3, gli, indexers and documentation for the release. release.dir=RELEASE_DIRECTORY Specifies the directory in the filesystem where the release files will be kept. resume.from=TARGET_ADDRESS, where TARGET_ADDRESS=x.y.z (e.g., 2.1.3) Allows you to specify a target address from which execution will resume. This is helpful for restarting the script after it has failed part-way through. By default, execution starts from the root target (create-release) and proceeds downwards. You can specify a different target to start from by setting the resume.from parameter. resume.mode=RESUME_MODE, where RESUME_MODE={fallthrough|descend} fallthrough (default): In fallthrough mode, execution proceeds downwards through the target tree 1 -> 1.1 -> 1.2 -> 2 -> 2.1 -> 2.2 -> 3 -> 3.1 and so on. descend: In descend mode, execution descends a single branch of the target tree. For example, if resume.from was set to '2', execution would proceed thus: 2 -> 2.1 -> 2.2 (exit) This is helpful when you want to debug a particular target, or fix some conditions to allow it to finish properly, and don't want to run the whole script from the start. release.dir, mac.release.dir, windows.release.dir The full path to the directories where release files will be stored on linux(your machine), mac(shuttle) and windows(kohekohe). E.g., -Drelease.dir=/research/oranfry/releases/3.03 E.g., -Dmac.release.dir=/Users/oranfry/releases/3.03 E.g., -Dwindows.release.dir=c:\\research\\oranfry\\releases\\3.03 username Your username for ssh from your machine to shuttle and kohekohe. You will be prompted for your password a number of times while the script executes. Creating Release '${version}' The windows compilation stage still has to be done manually. Please go to the kohekohe machine and follow the instructions found at: http://wesson.cs.waikato.ac.nz:7070/wiki/index.php/Creating_A_Release Do the 'Preparation' and 'Building' sections. (Ignore the last step, which tells you where to copy the resulting files.) Then copy (scp): Windows:gsdl/bin/windows/* to Linux:${release.dir}/other-platforms/win-bin-windows Type 'done' when you have finished. use the unix installer do a commandline build finish off tar to the release-${version} directory use the unix installer do a commandline build finish off tar to the release-${version} directory use the windows installer do a commandline build finish off tar to the release-${version} directory copy to the release-${version} directory create release directory, if absent checkout gsdl checkout indexers delete the old demo-collection greenstone re-create it CHECKING PRE-CONDITIONS Checking if version number is set... No, not set Please specify a version number E.g., ant -Dversion=3.03 -Dversion.minor=03 create-release or, ant -Dversion=trunk -Dversion.minor=03 create-release Version number not set Version number: ${version} Determining where to put the release... No release directory specified. Please specify release directory on the command line. E.g., ant -Drelease.dir=/research/me/releases/3.03 -Dmac.release.dir=/Users/me/releases/3.03 -Dwindows.release.dir=c:\research\me\releases\3.03 create-release Release directorys not set Release directory: ${release.dir} Mac release directory: ${mac.release.dir} Windows release directory: ${windows.release.dir} Checking if we are resuming from a given target... No, start from the beginning Yes, resuming from ${resume.from} Determining resume mode... Mode not set, defaulting to 'fallthrough' Mode set to ${resume.mode} You have not specified a valid resume mode. Valid modes are 'fallthrough' and 'descend'. You have not specified a valid resume mode. Determining execute mode... Execute not set, defaulting to 'true' Execute set to ${execute} You have not specified a valid value for execute. Valid values are 'true' and 'false'. You have not specified a valid value for execute. Determining the branch path... Branch Path: ${branch.path} Current Month: ${current.month} Current Year: ${current.year} No need to do initial setup on the trunk Initial setup is only done when creating a release from branches please set the branch.path, e.g., -Dbranch.path=branches/2.75 Set version number in lib/gsdlconf.h Set version number in Install.sh AboutDialog.Date properties ar: (${month.ar} ${current.year}) ca: (${month.ca} de ${current.year}) el: (${month.el} ${current.year}) es: (${month.es} ${current.year}) fr: (${month.fr} ${current.year}) lv: (${month.lv} ${current.year}) mr: (${month.mr} ${current.year}) default: (${month.default} ${current.year}) ro: (${month.ro} ${current.year}) ru: (${month.ru} ${current.year}) vi: (${month.vi} ${current.year}) zh: (${month.zh} ${current.year}) Changing version number in gli Gatherer Changing configuration version in gli/classes/xml/config.xml Changing configuration version in gli/classes/xml/configRemote.xml Changing version in /home/nzdl/gsdl-docs/Support.htm Please update the READMEs at /home/nzdl/gsdl-docs manually This can't be done automatically because the character encoding will get messed up Use these month strings: En: ${month.default} ${current.year} Fr: ${month.fr} ${current.year} Es: ${month.es} ${current.year} Ru: ${month.ru} ${current.year} You could also check all version number edits have been performed properly Type 'done' when you have finished.