ManagingCF¶
Enabling the compile farm for your repository¶
The compile farm mostly should work automatically. As project manager you may opt to have it build releases and / or nightlies automatically. In order to do so, you have to commit some CF settings to your repo:
.devzone/build/releases/enable // presence of this file enables automatic release builds .devzone/build/nightlies/enable // presence of this file enables automatic nightly builds (at around 18:18h CE(S)T) .devzone/build/type
the type file contains either nml or nfo depending upon what programming language you write your newgrf project in. See also the DevZone technical description for a more elaborate treatize.
Manually triggering the compile farm¶
The compile farm can also be manually triggered. It is run by user ottdc: ssh ottdc@mz.openttdcoop.org
ottdc@salieri:~> ~/hg-repos/misc/compiler/scheduler.sh -h Usage: ./scheduler.sh [-r] [-e] [-f] [-q] [-n] [-c] [-h|-u|-?] [-<BRANCH>] [<REPO>] Important: order of flags is required Arguments: -r Rebuild: if there are dependency changes, it will rebuild -e Error rebuild: does rebuild the repo, if there was a error -f Force: force rebuild and replace the existing bundle -q Quiet: don't announce the build to IRC -n No publishing: exit after building (debug) -c Clean: clean the build chroot -h,-u,-? Help, Usage: this screen and exit -<BRANCH> default: nightlies <REPO> default: every repo
where <projectname> is the short name and most often directory name of the project (e.g. nml for NML) and <buildtype> is either of releases or nightlies (default).
-r rebuild: rebuild a project also with same version-f force: force rebuild also if no REQUIRE changed-q quiet: no irc output-n no publish: exit the script after build
If an NML project fails it might be a good idea to check whether the last nightly of NML supports all features your NML project makes use of. If not, trigger building a new version of NML this way.