37 lines
1.4 KiB
YAML
37 lines
1.4 KiB
YAML
name: ci-smoke-linux
|
|
|
|
# Validates the sovereign linux runner (jetson-hub, docker executor) end-to-end:
|
|
# image pull, checkout, and the toolchain the Zed release build depends on.
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
paths:
|
|
- ".forgejo/workflows/smoke-linux.yml"
|
|
|
|
jobs:
|
|
smoke:
|
|
runs-on: linux
|
|
steps:
|
|
- name: Identify the runner
|
|
run: |
|
|
echo "sovereign linux runner reporting in"
|
|
uname -a
|
|
. /etc/os-release && echo "distro: $PRETTY_NAME"
|
|
echo "arch: $(uname -m) cpus: $(nproc) mem: $(free -h | awk '/Mem/{print $2}')"
|
|
echo "disk free: $(df -h / | awk 'NR==2{print $4}')"
|
|
|
|
- name: Checkout works in the container
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Toolchain the Zed build needs
|
|
run: |
|
|
for t in gcc g++ git curl sudo apt-get; do
|
|
if command -v "$t" >/dev/null 2>&1; then echo " $t: $(command -v $t)"; else echo " $t: MISSING"; fi
|
|
done
|
|
echo " rustup/cargo: $(command -v cargo || echo 'not preinstalled (workflow installs it)')"
|
|
|
|
- name: Can the container reach the forge over Tailscale?
|
|
run: |
|
|
code=$(curl -s -m8 -o /dev/null -w "%{http_code}" http://100.64.224.0:3400/api/v1/version || echo 000)
|
|
echo " forge 100.64.224.0:3400 -> $code"
|
|
if [ "$code" != "200" ]; then echo "WARN: container cannot reach the forge; release upload would fail"; fi
|