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