====== Deploying a New Build Server ====== The following is the process for deploying a new build server. - Edit the ''/etc/pickle.conf'' file and set MIRROR variable to point to the staging server. - Install the the build server buildtools (substitute the version number of Cucumber Linux you are building in for "x.y"): ''cd && git clone https://gitlab.cucumberlinux.com/cucumber/buildtools.git && cd buildtools && make install-build-server VERSION=x.y''. - Edit the ''/opt/buildtools/config'' file and set the STAGING_SERVER variable to the appropriate value. - Edit the ''/etc/portsync.conf'' file and set the RSYNC_MIRROR variable to the staging server rsync mirror. - Edit the ''/etc/portmake.conf'' file and change the BUILD_PREFIX to the build prefix for the version of Cucumber Linux the build server is for. For example, if creating a build server for Cucumber Linux 2.0, which has been code named ''zaphod'', you would set ''BUILD_PREFIX=zaphod_''. - Create the ports tree by running ''portstrap''. - Set the timestamps on all of the files in ''/var/log/packages'' to the time you want to start building from. Any updates to the ports tree that took place after this time will trigger a rebuilding of the affected package. Any updates to the ports tree that took place before it will not. - Alternatively, you can run ''pickle --update && pickle'' and install all the available updates. This will cause the build server to build any new updates, but skip any old ones. - Run ''/opt/buildtools/auto_update'' to update the local files and build any updates.