Настройка Buildbot для MacOSX
Настройка сервера Buildbot на Mac OS X
Установите buildbot-slave с помощью macports или buildbot из fink (если вы используете старую версию buildbot/buildbot-slave, вы должны использовать команду buildbot вместо buildslave-2.6 в следующих инструкциях).
Добавьте пользователя buildbot:
Убедитесь, что на вашей системе нет пользователя и группы buildbot.
# Check for group with id 101 id -g -nr 101 # Check for user with id 101 id -u -nr 101
Если у вас нет группы и пользователя buildbot, создайте группу и пользователя buildbot.
# Create group buildbot with group id 101 GROUP="buildbot" dscl . create /groups/$GROUP dscl . create /groups/$GROUP name $GROUP dscl . create /groups/$GROUP passwd "*" dscl . create /groups/$GROUP gid 101 # Create user buildbot with id 101 BUILDSLAVE_HOME=/var/lib/buildslave USER=buildbot mkdir -p $BUILDSLAVE_HOME dscl . -create /Users/$USER dscl . -create /Users/$USER RealName "Buildbot slave" dscl . -create /Users/$USER NFSHomeDirectory $BUILDSLAVE_HOME dscl . -create /Users/$USER UserShell /bin/bash dscl . -create /Users/$USER UniqueID 101 dscl . -create /Users/$USER PrimaryGroupID 101 chown 101:101 $BUILDSLAVE_HOME
Чтобы скрыть пользователя, используйте:
defaults write /Library/Preferences/com.apple.loginwindow HiddenUsersList -array-add buildbot
Подготовьте среду:
sudo -i -u buildbot buildslave-2.6 create-slave --usepty=0 maria-slave hasky.askmonty.org:9989 <slavename> <passwd> bzr init-repo maria-slave/<slavedirectory> $EDITOR maria-slave/info/admin $EDITOR maria-slave/info/host logout
Buildbot можно запускать/останавливать вручную с помощью этих команд (хорошо запустить и остановить его, чтобы убедиться, что он настроен правильно):
Если вы установили buildbot из fink, убедитесь, что пользователь buildbot использует настройки среды. Ваш файл .profile должен содержать следующую строку:
sudo - buildbot more .profile test -r /sw/bin/init.sh && . /sw/bin/init.sh
sudo -i -u buildbot buildslave-2.6 start maria-slave buildslave-2.6 stop maria-slave logout
Чтобы запустить buildbot при загрузке системы, вам необходимо создать файл /Library/LaunchDaemons/net.sourceforge.buildbot.plist с приведенным ниже содержимым (измененный пример из вики-страницы buildbot):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>StandardOutPath</key>
<string>twistd.log</string>
<key>StandardErrorPath</key>
<string>twistd-err.log</string>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/opt/local/bin:/sbin:/usr/sbin:/bin:/usr/bin</string>
<key>PYTHONPATH</key>
<string>/opt/local/lib/python2.5/site-packages</string>
</dict>
<key>GroupName</key>
<string>daemon</string>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>Label</key>
<string>net.sourceforge.buildbot.slave.test</string>
<key>ProgramArguments</key>
<array>
<string>/opt/local/bin/buildslave-2.6</string>
<string>start</string>
<string>--nodaemon</string>
<string>maria-slave</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>UserName</key>
<string>buildbot</string>
<key>WorkingDirectory</key>
<string>/var/lib/buildslave/</string>
</dict>
</plist>
Если вы установили buildbot из fink, вы можете отредактировать и скопировать файл plist.
$EDITOR /sw/share/doc/buildbot-py26/contrib/os-x/net.sourceforge.buildbot.slave.plist
Ваш файл plist должен быть похож на этот после редактирования:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd
">
<plist version="1.0">
<dict>
<key>Label</key>
<string>net.sourceforge.buildbot.slave</string>
<!-- Change this to the user you want to run buildbot as -->
<key>UserName</key>
<string>buildbot</string>
<!-- Change this to your buildbot working directory -->
<key>WorkingDirectory</key>
<string>/Volumes/MiniHD2/ServiceData/buildslave/maria-slave</string>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/sw/bin:/sw/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin</string>
</dict>
<key>ProgramArguments</key>
<array>
<string>/sw/bin/twistd</string>
<string>--nodaemon</string>
<string>--python=buildbot.tac</string>
<string>--logfile=buildbot.log</string>
<string>--prefix=slave</string>
</array>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
sudo cp /sw/share/doc/buildbot-py26/contrib/os-x/net.sourceforge.buildbot.slave.plist /Library/LaunchDaemons/
Примечание: вы должны запускать свой buildslave через launchd, иначе возникнет несколько проблем. Для получения дополнительной информации обратитесь к использованию Launchd.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/buildbot-setup-buildbot-setup-for-macosx/