73 lines
1.8 KiB
YAML
73 lines
1.8 KiB
YAML
name: Gitea Runner Smoke Test
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches: [ main, master ]
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
smoke:
|
|
# Use the exact label your runner registered with.
|
|
runs-on: [oracle9-runner]
|
|
timeout-minutes: 15
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Show environment info
|
|
run: |
|
|
echo "User: $(whoami)"
|
|
echo "Host: $(hostname)"
|
|
uname -a
|
|
echo "---- /etc/os-release ----"
|
|
cat /etc/os-release || true
|
|
echo "---- CPU ----"
|
|
lscpu | egrep 'Model name|CPU\\(s\\)|Thread|Core' || true
|
|
echo "---- Mem/Disk ----"
|
|
free -h || true
|
|
df -h || true
|
|
|
|
- name: Shell sanity checks
|
|
run: |
|
|
set -euo pipefail
|
|
test $((2+2)) -eq 4
|
|
echo "smoke: ok ✅" | tee smoke.txt
|
|
|
|
- name: Python quick test
|
|
run: |
|
|
python3 - <<'PY'
|
|
assert 6 * 7 == 42
|
|
print("python ok ✅")
|
|
PY
|
|
|
|
- name: Network sanity
|
|
run: |
|
|
getent hosts gitea.local || true
|
|
curl -sI https://www.example.com | head -n1
|
|
|
|
- name: Upload artifact (proof the job ran)
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: smoke-output
|
|
path: smoke.txt
|
|
|
|
# Optional: verifies container runtime if present (Docker or Podman-Docker socket)
|
|
container-check:
|
|
runs-on: [oracle9-runner]
|
|
needs: [smoke]
|
|
steps:
|
|
- name: Check container runtime
|
|
run: |
|
|
if command -v docker >/dev/null 2>&1; then
|
|
docker info >/dev/null
|
|
docker run --rm hello-world || true
|
|
else
|
|
echo "No docker/podman-docker found — skipping."
|
|
fi
|
|
|