| #!/bin/bash |
| |
| # Copyright 2022 The IREE Authors |
| # |
| # Licensed under the Apache License v2.0 with LLVM Exceptions. |
| # See https://llvm.org/LICENSE.txt for license information. |
| # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| |
| # Installs and sets up the GitHub actions runner, creating services to start and |
| # tear down the runner. |
| |
| set -xeEuo pipefail |
| |
| SCRIPT_DIR="$(dirname -- "$( readlink -f -- "$0"; )")"; |
| source "${SCRIPT_DIR}/functions.sh" |
| |
| mkdir /runner-root |
| cp -r "${SCRIPT_DIR}" /runner-root/config |
| chown -R runner:runner /runner-root/ |
| |
| echo "Fetching the runner archive" |
| RUNNER_VERSION="$(get_attribute github-runner-version)" |
| RUNNER_ARCHIVE_URL="$(get_attribute github-runner-archive-url)" |
| RUNNER_ARCHIVE_DIGEST="$(get_attribute github-runner-archive-digest)" |
| RUNNER_ARCHIVE="actions-runner.tar.gz" |
| |
| cd /runner-root |
| mkdir actions-runner |
| cd actions-runner |
| nice_curl "${RUNNER_ARCHIVE_URL}" -o "${RUNNER_ARCHIVE}" |
| |
| echo "${RUNNER_ARCHIVE_DIGEST} *${RUNNER_ARCHIVE}" | shasum -a 256 -c |
| tar xzf "${RUNNER_ARCHIVE}" |
| ln -s ../config/runner.env .env |
| |
| echo "Registering the runner." |
| runuser --user runner /runner-root/config/register.sh |
| |
| echo "Loading systemd services" |
| cp /runner-root/config/systemd/system/* /etc/systemd/system/ |
| systemctl daemon-reload |
| |
| echo "Enabling systemd services." |
| find /runner-root/config/systemd/system/ -type f -printf "%f\n" \ |
| | xargs systemctl enable |
| |
| echo "Starting the runner services" |
| systemctl start runner-setup.target |