mirror of https://github.com/rusefi/rusefi-ci.git
71 lines
1.8 KiB
Bash
71 lines
1.8 KiB
Bash
#!/bin/bash
|
|
|
|
if [[ "$@" == "bash" ]]; then
|
|
exec $@
|
|
fi
|
|
|
|
ulimit -n 1024
|
|
|
|
export XDG_RUNTIME_DIR=$HOME/.docker/run
|
|
export DOCKER_HOST=unix:///home/docker/.docker/run/docker.sock
|
|
rm -rf $XDG_RUNTIME_DIR
|
|
mkdir -p $XDG_RUNTIME_DIR
|
|
PATH=/usr/bin:/sbin:/usr/sbin:$PATH dockerd-rootless.sh >/opt/docker.log 2>/opt/docker.log &
|
|
|
|
cd /opt/actions-runner
|
|
|
|
if [[ -z $RUNNER_NAME ]]; then
|
|
echo "RUNNER_NAME environment variable is not set, using '${HOSTNAME}'."
|
|
export RUNNER_NAME=${HOSTNAME}
|
|
fi
|
|
|
|
if [[ -z $RUNNER_WORK_DIRECTORY ]]; then
|
|
echo "RUNNER_WORK_DIRECTORY environment variable is not set, using '_work'."
|
|
export RUNNER_WORK_DIRECTORY="_work"
|
|
fi
|
|
|
|
if [[ -z $RUNNER_TOKEN && -z $GITHUB_ACCESS_TOKEN ]]; then
|
|
echo "Error : You need to set RUNNER_TOKEN (or GITHUB_ACCESS_TOKEN) environment variable."
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z $RUNNER_REPOSITORY_URL && -z $RUNNER_ORGANIZATION_URL ]]; then
|
|
echo "Error : You need to set the RUNNER_REPOSITORY_URL (or RUNNER_ORGANIZATION_URL) environment variable."
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z $RUNNER_REPLACE_EXISTING ]]; then
|
|
export RUNNER_REPLACE_EXISTING="true"
|
|
fi
|
|
|
|
CONFIG_OPTS=""
|
|
if [ "$(echo $RUNNER_REPLACE_EXISTING | tr '[:upper:]' '[:lower:]')" == "true" ]; then
|
|
CONFIG_OPTS="--replace"
|
|
fi
|
|
|
|
if [[ -n $RUNNER_LABELS ]]; then
|
|
CONFIG_OPTS="${CONFIG_OPTS} --labels ${RUNNER_LABELS}"
|
|
fi
|
|
|
|
if [[ -f ".runner" ]]; then
|
|
echo "Runner already configured. Skipping config."
|
|
else
|
|
if [[ ! -z $RUNNER_ORGANIZATION_URL ]]; then
|
|
SCOPE="orgs"
|
|
RUNNER_URL="${RUNNER_ORGANIZATION_URL}"
|
|
else
|
|
SCOPE="repos"
|
|
RUNNER_URL="${RUNNER_REPOSITORY_URL}"
|
|
fi
|
|
|
|
./config.sh \
|
|
--url $RUNNER_URL \
|
|
--token $RUNNER_TOKEN \
|
|
--name $RUNNER_NAME \
|
|
--work $RUNNER_WORK_DIRECTORY \
|
|
$CONFIG_OPTS \
|
|
--unattended
|
|
fi
|
|
|
|
exec "$@"
|