Select Git revision
backend-docker-entrypoint.sh 1.38 KiB
#!/bin/sh
if [ -z "$OBS_FRONTEND_HOST" ]; then
echo >&2 'error: OBS server frontend is unavailable and hostname option'
echo >&2 'is not specified '
echo >&2 ' You need to specify OBS_FRONTEND_HOST'
exit 1
fi
HOSTNAME=$(hostname)
if [ "$(stat -c %U /srv/obs/run)" != obsrun ]
then
echo "OBS files owned by the wrong user $(stat -c %U /srv/obs/run), re-owning..."
time chown obsrun:obsrun -R /srv/obs
fi
if [ ! -f /etc/obs/BSConfig.pm ]
then
echo "OBS backend configuration not found, starting from scratch"
cp /usr/lib/obs/server/BSConfig.pm.template /etc/obs/BSConfig.pm
fi
echo "Configure OBS backend host: ${HOSTNAME}"
sed -i "s/hostname = .*/hostname = '${HOSTNAME}';/g" /etc/obs/BSConfig.pm
echo "Configure OBS frontend host: ${OBS_FRONTEND_HOST}"
sed -i "s/frontend = undef/frontend = '${OBS_FRONTEND_HOST}'/g" /etc/obs/BSConfig.pm
for arch in ${OBS_ARCHES:-amd64 i686 armhf arm64}
do
obsarch=$(/opt/deb-arch-to-obs-arch "$arch")
if [ -z "$obsarch" ]
then
echo Failed to enable unsupported architecture $arch >&2
continue
fi
for template in /opt/services/backend/*@.conf.in
do
conf=$(echo $(basename $template) | sed -e "s|@|@$arch|" -e 's|.in$||')
sed -e "s|@ARCH@|$obsarch|g" $template > /etc/supervisor/conf.d/$conf
done
done
mkdir -p /srv/obs/log
chmod ug=rwxt /srv/obs/run
/usr/bin/supervisord -n