diff --git a/ghrunner/Dockerfile b/ghrunner/Dockerfile new file mode 100644 index 0000000..9361472 --- /dev/null +++ b/ghrunner/Dockerfile @@ -0,0 +1,14 @@ +FROM ubuntu:latest +COPY entrypoint.sh / +ENV TZ=Europe/Berlin +ENV DEBIAN_FRONTEND=noninteractive +RUN apt-get update \ + && apt-get -y install \ + curl \ + libdigest-sha-perl \ + tzdata +RUN useradd -ms /bin/bash runner +WORKDIR /runner +RUN chown runner:runner /runner -Rfv +ENTRYPOINT ["/entrypoint.sh"] + diff --git a/ghrunner/entrypoint.sh b/ghrunner/entrypoint.sh new file mode 100755 index 0000000..5e495bd --- /dev/null +++ b/ghrunner/entrypoint.sh @@ -0,0 +1,20 @@ +#!/bin/bash +ARCH=${ARCH:-x64} +VERSION=${VERSION:-2.280.3} +CHECKSUM=${CHECKSUM:-69dc323312e3c5547ba1e1cc46c127e2ca8ee7d7037e17ee6965ef6dac3c142b} +ORG=${ORG:-dragonchaser} +REPO=${REPO:-dockerhub-autobuild} +OS=${OS:-linux} + +if [ -z "${TOKEN}" ]; then + echo "MISSING TOKEN, BAILING OUT!" + exit 1 +fi + +FILE="actions-runner-${OS}-${ARCH}-${VERSION}.tar.gz" +curl -o ${FILE} -L https://github.com/actions/runner/releases/download/v${VERSION}/${FILE} +echo "${CHECKSUM} ${FILE}" | shasum -a 256 -c +tar xzf ./${FILE} +./bin/installdependencies.sh +su runner -c "./config.sh --unattended --url https://github.com/${ORG}/${REPO} --token ${TOKEN} --name docker-runner-$(hostname)" +su runner -c "./run.sh"