mirror of
https://github.com/Magnus167/rustframe.git
synced 2025-08-20 13:00:00 +00:00
Merge pull request #36 from Magnus167/runner-upgrade
Update Docker setup for GitHub runner management
This commit is contained in:
commit
04fbf5ca50
6
.github/runner/Dockerfile
vendored
6
.github/runner/Dockerfile
vendored
@ -18,13 +18,13 @@ RUN cd /home/docker && mkdir actions-runner && cd actions-runner \
|
|||||||
|
|
||||||
RUN chown -R docker ~docker && /home/docker/actions-runner/bin/installdependencies.sh
|
RUN chown -R docker ~docker && /home/docker/actions-runner/bin/installdependencies.sh
|
||||||
|
|
||||||
COPY start.sh start.sh
|
COPY entrypoint.sh entrypoint.sh
|
||||||
|
|
||||||
# make the script executable
|
# make the script executable
|
||||||
RUN chmod +x start.sh
|
RUN chmod +x entrypoint.sh
|
||||||
|
|
||||||
# since the config and run script for actions are not allowed to be run by root,
|
# since the config and run script for actions are not allowed to be run by root,
|
||||||
# set the user to "docker" so all subsequent commands are run as the docker user
|
# set the user to "docker" so all subsequent commands are run as the docker user
|
||||||
USER docker
|
USER docker
|
||||||
|
|
||||||
ENTRYPOINT ["./start.sh"]
|
ENTRYPOINT ["./entrypoint.sh"]
|
3
.github/runner/docker-compose.yml
vendored
3
.github/runner/docker-compose.yml
vendored
@ -6,7 +6,8 @@ services:
|
|||||||
context: .
|
context: .
|
||||||
args:
|
args:
|
||||||
RUNNER_VERSION: 2.323.0
|
RUNNER_VERSION: 2.323.0
|
||||||
container_name: github-runner
|
# container_name commented to allow for multiple runners
|
||||||
|
# container_name: github-runner
|
||||||
env_file:
|
env_file:
|
||||||
- .env
|
- .env
|
||||||
volumes:
|
volumes:
|
||||||
|
24
.github/runner/entrypoint.sh
vendored
Normal file
24
.github/runner/entrypoint.sh
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
REPOSITORY=$REPO
|
||||||
|
ACCESS_TOKEN=$GH_TOKEN
|
||||||
|
LABELS=$RUNNER_LABELS
|
||||||
|
|
||||||
|
# echo "REPO ${REPOSITORY}"
|
||||||
|
# echo "ACCESS_TOKEN ${ACCESS_TOKEN}"
|
||||||
|
|
||||||
|
REG_TOKEN=$(curl -X POST -H "Authorization: token ${ACCESS_TOKEN}" -H "Accept: application/vnd.github+json" https://api.github.com/repos/${REPOSITORY}/actions/runners/registration-token | jq .token --raw-output)
|
||||||
|
|
||||||
|
cd /home/docker/actions-runner
|
||||||
|
|
||||||
|
./config.sh --url https://github.com/${REPOSITORY} --token ${REG_TOKEN} --labels ${LABELS}
|
||||||
|
|
||||||
|
cleanup() {
|
||||||
|
echo "Removing runner..."
|
||||||
|
./config.sh remove --unattended --token ${REG_TOKEN}
|
||||||
|
}
|
||||||
|
|
||||||
|
trap 'cleanup; exit 130' INT
|
||||||
|
trap 'cleanup; exit 143' TERM
|
||||||
|
|
||||||
|
./run.sh & wait $!
|
24
.github/runner/start.sh
vendored
24
.github/runner/start.sh
vendored
@ -1,24 +1,4 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
REPOSITORY=$REPO
|
|
||||||
ACCESS_TOKEN=$GH_TOKEN
|
|
||||||
LABELS=$RUNNER_LABELS
|
|
||||||
|
|
||||||
# echo "REPO ${REPOSITORY}"
|
docker compose up -d --build
|
||||||
# echo "ACCESS_TOKEN ${ACCESS_TOKEN}"
|
# docker compose up -d --build --scale github-runner=2
|
||||||
|
|
||||||
REG_TOKEN=$(curl -X POST -H "Authorization: token ${ACCESS_TOKEN}" -H "Accept: application/vnd.github+json" https://api.github.com/repos/${REPOSITORY}/actions/runners/registration-token | jq .token --raw-output)
|
|
||||||
|
|
||||||
cd /home/docker/actions-runner
|
|
||||||
|
|
||||||
./config.sh --url https://github.com/${REPOSITORY} --token ${REG_TOKEN} --labels ${LABELS}
|
|
||||||
|
|
||||||
cleanup() {
|
|
||||||
echo "Removing runner..."
|
|
||||||
./config.sh remove --unattended --token ${REG_TOKEN}
|
|
||||||
}
|
|
||||||
|
|
||||||
trap 'cleanup; exit 130' INT
|
|
||||||
trap 'cleanup; exit 143' TERM
|
|
||||||
|
|
||||||
./run.sh & wait $!
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user