name: CI Test on: [push, workflow_dispatch] jobs: test: runs-on: ubuntu-latest container: image: docker:24.0-cli options: -v /opt/freedom:/opt/freedom --add-host=host.docker.internal:host-gateway steps: - name: Verify run: | echo "=== pwd & 工作目录 ===" pwd; ls -la echo "=== workspace 是否被自动检出 ===" ls -la /workspace/yiciheng/ci-test 2>&1 echo "=== /opt/freedom ===" ls -la /opt/freedom echo "=== sock ===" test -S /var/run/docker.sock && echo SOCK_OK || echo SOCK_NO echo "=== host.docker.internal 解析 ===" getent hosts host.docker.internal || echo NOT_RESOLVED wget -q -T 3 -O /dev/null http://host.docker.internal:3000/api/v1/version && echo GITEA_OK || echo GITEA_FAIL echo "=== docker build 冒烟(容器内路径 -> 宿主 daemon)===" mkdir -p /tmp/bt && printf 'FROM alpine:3\nRUN echo build-ok\n' > /tmp/bt/Dockerfile docker build -t ci-smoke:latest /tmp/bt echo "=== compose services ===" cd /opt/freedom/deploy && docker compose config --services