update
This commit is contained in:
@@ -1,8 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Copyright (c) 2022 fithwum
|
# Copyright (c) 2022 fithwum
|
||||||
# All rights reserved
|
# All rights reserved
|
||||||
|
set -eu
|
||||||
|
|
||||||
USER=fithwum
|
USER=fithwum
|
||||||
|
FILE=config.yaml
|
||||||
|
|
||||||
# openssh
|
# openssh
|
||||||
apt-get install openssh-client openssh-server
|
apt-get install openssh-client openssh-server
|
||||||
@@ -39,10 +41,50 @@ wget https://gitea.com/gitea/act_runner/releases/download/v0.2.13/act_runner-0.2
|
|||||||
mv act_runner-*-linux-amd64 act_runner
|
mv act_runner-*-linux-amd64 act_runner
|
||||||
chmod +x act_runner
|
chmod +x act_runner
|
||||||
|
|
||||||
./act_runner generate-config | tee config.yaml > /dev/null
|
./act_runner generate-config | tee $FILE > /dev/null
|
||||||
chown fithwum:docker act_runner
|
chown fithwum:docker act_runner
|
||||||
chown fithwum:docker config.yaml
|
chown fithwum:docker $FILE
|
||||||
./act_runner --config config.yaml register
|
|
||||||
|
############################################################################################
|
||||||
|
# Count label entries inside the labels block
|
||||||
|
LABEL_COUNT=$(awk '
|
||||||
|
$0 ~ /^ labels:/ {in=1; next}
|
||||||
|
in && $0 ~ /^ - / {c++}
|
||||||
|
in && NF==0 {in=0}
|
||||||
|
END {print c+0}
|
||||||
|
' "$FILE")
|
||||||
|
|
||||||
|
if [ "$LABEL_COUNT" -ne 3 ]; then
|
||||||
|
echo "[ERROR] Expected exactly 3 labels, found $LABEL_COUNT. Aborting."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Verify expected existing labels
|
||||||
|
awk '
|
||||||
|
$0 ~ /^ labels:/ {in=1; next}
|
||||||
|
in && $0 ~ /^ - / {print}
|
||||||
|
in && NF==0 {exit}
|
||||||
|
' "$FILE" | grep -qx ' - "vm-ubuntu-latest:docker://docker.gitea.com/runner-images:ubuntu-latest"' \
|
||||||
|
&& grep -qx ' - "vm-ubuntu-22.04:docker://docker.gitea.com/runner-images:ubuntu-22.04"' \
|
||||||
|
&& grep -qx ' - "vm-ubuntu-20.04:docker://docker.gitea.com/runner-images:ubuntu-20.04"' \
|
||||||
|
|| {
|
||||||
|
echo "[ERROR] Existing labels do not match expected values. Aborting."
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# Replace block
|
||||||
|
sed -i '/^ labels:/,/^$/c\
|
||||||
|
labels:\n\
|
||||||
|
- "vm-ubuntu-latest:docker://docker.gitea.com/runner-images:ubuntu-latest"\n\
|
||||||
|
- "vm-ubuntu-22.04:docker://docker.gitea.com/runner-images:ubuntu-22.04"\n\
|
||||||
|
- "vm-ubuntu-20.04:docker://docker.gitea.com/runner-images:ubuntu-20.04"\n\
|
||||||
|
- "vm-docker-build:docker://catthehacker/ubuntu:custom-latest-20240215"\n\
|
||||||
|
- "vm-docker-build2:docker://catthehacker/ubuntu:act-latest"' "$FILE"
|
||||||
|
|
||||||
|
echo "[OK] labels block updated safely."
|
||||||
|
############################################################################################
|
||||||
|
|
||||||
|
./act_runner --config $FILE register
|
||||||
|
|
||||||
./act_runner register --no-interactive --instance <instance_url> --token <registration_token> --name <runner_name>
|
./act_runner register --no-interactive --instance <instance_url> --token <registration_token> --name <runner_name>
|
||||||
|
|
||||||
@@ -53,7 +95,7 @@ Documentation=https://gitea.com/gitea/act_runner
|
|||||||
After=docker.service
|
After=docker.service
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/local/bin/act_runner daemon --config /usr/local/bin/config.yaml
|
ExecStart=/usr/local/bin/act_runner daemon --config /usr/local/bin/$FILE
|
||||||
ExecReload=/bin/kill -s HUP $MAINPID
|
ExecReload=/bin/kill -s HUP $MAINPID
|
||||||
WorkingDirectory=/usr/local/bin
|
WorkingDirectory=/usr/local/bin
|
||||||
TimeoutSec=0
|
TimeoutSec=0
|
||||||
|
|||||||
Reference in New Issue
Block a user