#! /bin/bash # # Copyright (C) 2010 Igalia S.L. All rights reserved. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Library General Public # License as published by the Free Software Foundation; either # version 2 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Library General Public License for more details. # # You should have received a copy of the GNU Library General Public License # along with this library; see the file COPYING.LIB. If not, write to # the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, # Boston, MA 02110-1301, USA. exec 2>&1 : ${BUILDBOT_CONFIG:=/etc/daemontools-buildbot.conf} # Read configuration file [ -r "${BUILDBOT_CONFIG}" ] && . "${BUILDBOT_CONFIG}" : ${buildbot_user:=${USER:-${LOGNAME}}} : ${crashmon_output:=''} # Expand all "env_*" environment variables for varname in ${!env_*} ; do eval "export ${varname#env_}=\${${varname}}" done if [ ! -d "${crashmon_output}" ] then if ! [ "${crashmon_output}" ] then echo "Dump directory '${crashmon_output}' does not exist (sleeping)" fi sleep $(( 60 * 60 * 4 )) exit 111 fi if ! [ "${buildbot_bits}" ] then # Guess bits (32/64) from uname -m machine=$(uname -m) case ${machine} in x86_64 | amd64 | ia64 | ppc64) buildbot_bits="64" ;; *) buildbot_bits="32" ;; esac fi : ${crashmon_bin_path:="${buildbot_path}/gtk-linux-${buildbot_bits}-debug/build/WebKitBuild/Debug/Programs"} cd "${crashmon_output}" exec /usr/bin/env - \ PATH="${PATH}" \ SHELL="/bin/bash" \ USER="${buildbot_user}" \ arch="${buildbot_bits}" \ LOGNAME="${buildbot_user}" \ coredir="${crashmon_output}" \ HOME="/home/${buildbot_user}" \ mailto="${crashmon_mailto:-''}" \ programpath="${crashmon_bin_path}" \ /usr/bin/setuidgid "${buildbot_user}" "$(pwd)/crashmon"