chore: deep probe new runner config structure
New Runner Deep Probe / Deep probe new runner 3 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 2 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 4 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 5 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 6 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 7 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 9 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 8 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 10 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 1 (push) Successful in 11s
New Runner Deep Probe / Deep probe new runner 3 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 2 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 4 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 5 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 6 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 7 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 9 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 8 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 10 (push) Successful in 0s
New Runner Deep Probe / Deep probe new runner 1 (push) Successful in 11s
This commit is contained in:
@@ -1,176 +1,137 @@
|
||||
name: Probe All Runner Hosts
|
||||
name: New Runner Deep Probe
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ops/runner-labels]
|
||||
|
||||
jobs:
|
||||
probe-a:
|
||||
name: Probe Host A
|
||||
deep-new-1:
|
||||
name: Deep probe new runner 1
|
||||
runs-on: saas
|
||||
timeout-minutes: 8
|
||||
steps:
|
||||
- name: Full probe
|
||||
- name: Probe runner configs on new host
|
||||
shell: bash
|
||||
run: |
|
||||
set +e
|
||||
|
||||
echo "===== HOSTNAME ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- hostname
|
||||
HOSTNAME=$(docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- hostname)
|
||||
echo "HOST: $HOSTNAME"
|
||||
|
||||
# 只处理新服务器
|
||||
if [[ "$HOSTNAME" != *"iZbp15fchyez91r4b3ok74Z"* ]]; then
|
||||
echo "不是新服务器,跳过深度探测"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "===== RUNNER PROCESSES ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ps aux | grep -v grep | grep -i -E "runner|act_"
|
||||
echo "===== 每个runner目录内容 ====="
|
||||
for i in 1 2 3 4 5 6; do
|
||||
echo "--- runner-$i ---"
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ls -la /opt/act-runner/runner-$i/ 2>/dev/null
|
||||
echo " .runner:"
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt/act-runner/runner-$i -name ".runner" -type f 2>/dev/null
|
||||
echo " config.yaml:"
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt/act-runner/runner-$i -name "config.yaml" -o -name "config.yml" 2>/dev/null
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "===== SYSTEMD SERVICES ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- systemctl list-units --type=service --all --no-pager 2>/dev/null | grep -i -E "runner|act"
|
||||
echo "===== runner-1 的 .runner 内容 ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- cat /opt/act-runner/runner-1/.runner 2>/dev/null || echo "not found"
|
||||
|
||||
echo ""
|
||||
echo "===== /opt CONTENTS ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ls -la /opt/
|
||||
echo "===== 所有进程列表(找runner)====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ps -ef | head -50
|
||||
|
||||
echo ""
|
||||
echo "===== /opt/act-runner CONTENTS (if exists) ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ls -laR /opt/act-runner/ 2>/dev/null || echo "not found"
|
||||
echo "===== systemd 所有服务(含inactive)====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- systemctl list-units --type=service --all --no-pager 2>&1 | grep -i -E "runner|act" || echo "no runner service"
|
||||
|
||||
echo ""
|
||||
echo "===== FIND .runner in common dirs ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt /root /home /etc /srv /var -maxdepth 5 -name ".runner" -type f 2>/dev/null
|
||||
echo "===== supervisor / pm2 检查 ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- which supervisord 2>/dev/null; which pm2 2>/dev/null; ls /etc/supervisor* 2>/dev/null
|
||||
|
||||
echo ""
|
||||
echo "===== FIND runner binaries ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt /usr/local/bin /usr/bin -name "*runner*" -type f -executable 2>/dev/null
|
||||
echo "===== crontab 检查 ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- crontab -l 2>/dev/null || echo "no crontab"
|
||||
|
||||
echo ""
|
||||
echo "===== DOCKER PS (full) ====="
|
||||
docker ps -a --format "{{.Names}}|{{.Image}}|{{.Status}}"
|
||||
echo "===== /etc/systemd/system 找runner ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /etc/systemd -name "*runner*" -o -name "*act*" 2>/dev/null
|
||||
|
||||
echo ""
|
||||
echo "===== CMD AGENT CHECK (127.0.0.1:18888) ====="
|
||||
docker run --rm --privileged --pid=host --net=host alpine:3.20 sh -c "curl -s --max-time 3 http://127.0.0.1:18888/health && echo '' || echo 'no cmd agent on 18888'" 2>/dev/null || echo "check failed"
|
||||
echo "===== 二进制位置 ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt/act-runner -name "gitea-runner" -o -name "act_runner" -type f 2>/dev/null | head -5
|
||||
|
||||
probe-b:
|
||||
name: Probe Host B
|
||||
deep-new-2:
|
||||
name: Deep probe new runner 2
|
||||
runs-on: saas
|
||||
timeout-minutes: 8
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: Full probe
|
||||
shell: bash
|
||||
run: |
|
||||
set +e
|
||||
echo "===== HOSTNAME ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- hostname
|
||||
echo ""
|
||||
echo "===== RUNNER PROCESSES ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ps aux | grep -v grep | grep -i -E "runner|act_"
|
||||
echo ""
|
||||
echo "===== FIND .runner ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt /root /home -maxdepth 5 -name ".runner" -type f 2>/dev/null
|
||||
echo ""
|
||||
echo "===== /opt dirs ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ls -d /opt/*/ 2>/dev/null
|
||||
|
||||
probe-c:
|
||||
name: Probe Host C
|
||||
runs-on: saas
|
||||
timeout-minutes: 8
|
||||
steps:
|
||||
- name: Full probe
|
||||
shell: bash
|
||||
run: |
|
||||
set +e
|
||||
echo "===== HOSTNAME ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- hostname
|
||||
echo ""
|
||||
echo "===== RUNNER PROCESSES ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ps aux | grep -v grep | grep -i -E "runner|act_"
|
||||
echo ""
|
||||
echo "===== FIND .runner ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt /root /home -maxdepth 5 -name ".runner" -type f 2>/dev/null
|
||||
echo ""
|
||||
echo "===== /opt dirs ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ls -d /opt/*/ 2>/dev/null
|
||||
|
||||
probe-d:
|
||||
name: Probe Host D
|
||||
runs-on: saas
|
||||
timeout-minutes: 8
|
||||
steps:
|
||||
- name: Full probe
|
||||
shell: bash
|
||||
run: |
|
||||
set +e
|
||||
echo "===== HOSTNAME ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- hostname
|
||||
echo ""
|
||||
echo "===== RUNNER PROCESSES ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ps aux | grep -v grep | grep -i -E "runner|act_"
|
||||
echo ""
|
||||
echo "===== FIND .runner ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt /root /home -maxdepth 5 -name ".runner" -type f 2>/dev/null
|
||||
echo ""
|
||||
echo "===== /opt dirs ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ls -d /opt/*/ 2>/dev/null
|
||||
|
||||
probe-e:
|
||||
name: Probe Host E
|
||||
runs-on: saas
|
||||
timeout-minutes: 8
|
||||
steps:
|
||||
- name: Full probe
|
||||
shell: bash
|
||||
run: |
|
||||
set +e
|
||||
echo "===== HOSTNAME ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- hostname
|
||||
echo ""
|
||||
echo "===== RUNNER PROCESSES ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ps aux | grep -v grep | grep -i -E "runner|act_"
|
||||
echo ""
|
||||
echo "===== FIND .runner ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- find /opt /root /home -maxdepth 5 -name ".runner" -type f 2>/dev/null
|
||||
echo ""
|
||||
echo "===== /opt dirs ====="
|
||||
docker run --rm --privileged --pid=host alpine:3.20 nsenter -t 1 -m -u -i -n -p -- ls -d /opt/*/ 2>/dev/null
|
||||
|
||||
probe-f:
|
||||
name: Probe Host F
|
||||
runs-on: saas
|
||||
timeout-minutes: 3
|
||||
steps:
|
||||
- name: placeholder
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
probe-g:
|
||||
name: Probe Host G
|
||||
deep-new-3:
|
||||
name: Deep probe new runner 3
|
||||
runs-on: saas
|
||||
timeout-minutes: 3
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: placeholder
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
probe-h:
|
||||
name: Probe Host H
|
||||
deep-new-4:
|
||||
name: Deep probe new runner 4
|
||||
runs-on: saas
|
||||
timeout-minutes: 3
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: placeholder
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
probe-i:
|
||||
name: Probe Host I
|
||||
deep-new-5:
|
||||
name: Deep probe new runner 5
|
||||
runs-on: saas
|
||||
timeout-minutes: 3
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: placeholder
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
probe-j:
|
||||
name: Probe Host J
|
||||
deep-new-6:
|
||||
name: Deep probe new runner 6
|
||||
runs-on: saas
|
||||
timeout-minutes: 3
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: placeholder
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
deep-new-7:
|
||||
name: Deep probe new runner 7
|
||||
runs-on: saas
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
deep-new-8:
|
||||
name: Deep probe new runner 8
|
||||
runs-on: saas
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
deep-new-9:
|
||||
name: Deep probe new runner 9
|
||||
runs-on: saas
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
deep-new-10:
|
||||
name: Deep probe new runner 10
|
||||
runs-on: saas
|
||||
timeout-minutes: 5
|
||||
steps:
|
||||
- name: probe
|
||||
shell: bash
|
||||
run: hostname
|
||||
|
||||
Reference in New Issue
Block a user