fix(ci): run staging deploy on host shell

This commit is contained in:
Xiaoxia AI
2026-06-24 19:38:49 +08:00
parent 562381fa40
commit 6d53b001d3
2 changed files with 14 additions and 21 deletions
+8 -21
View File
@@ -10,8 +10,6 @@ jobs:
deploy-staging:
name: Deploy Staging
runs-on: ubuntu-latest
container:
image: docker:27-cli
if: github.ref_name == 'main' || github.ref_name == 'develop'
steps:
@@ -30,40 +28,29 @@ jobs:
shell: sh
run: |
set -eu
tar --exclude=.git -cf - . | docker run --rm -i \
-v /:/host \
docker:27-cli \
sh -lc '
set -eu
mkdir -p /host/var/lib/xiaoxia-saas-staging
rm -rf /host/var/lib/xiaoxia-saas-staging/repo
mkdir -p /host/var/lib/xiaoxia-saas-staging/repo
tar -xf - -C /host/var/lib/xiaoxia-saas-staging/repo
'
mkdir -p /var/lib/xiaoxia-saas-staging
rm -rf /var/lib/xiaoxia-saas-staging/repo
mkdir -p /var/lib/xiaoxia-saas-staging/repo
tar --exclude=.git -cf - . | tar -xf - -C /var/lib/xiaoxia-saas-staging/repo
- name: Verify staging env file
shell: sh
run: |
set -eu
docker run --rm -v /:/host docker:27-cli sh -lc 'test -f /host/var/lib/xiaoxia-saas-staging/.env'
test -f /var/lib/xiaoxia-saas-staging/.env
- name: Prepare staging env
shell: sh
run: |
set -eu
docker run --rm -v /:/host docker:27-cli sh -lc 'cp /host/var/lib/xiaoxia-saas-staging/.env /host/var/lib/xiaoxia-saas-staging/repo/.env'
cp /var/lib/xiaoxia-saas-staging/.env /var/lib/xiaoxia-saas-staging/repo/.env
- name: Deploy staging stack
shell: sh
run: |
set -eu
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /:/host \
docker:27-cli sh -lc '
chmod +x /host/var/lib/xiaoxia-saas-staging/repo/infra/docker/deploy-staging.sh && \
WEB_PORT=3001 /host/var/lib/xiaoxia-saas-staging/repo/infra/docker/deploy-staging.sh
'
chmod +x /var/lib/xiaoxia-saas-staging/repo/infra/docker/deploy-staging.sh
WEB_PORT=3001 /var/lib/xiaoxia-saas-staging/repo/infra/docker/deploy-staging.sh
- name: Verify staging health
shell: sh
+6
View File
@@ -136,3 +136,9 @@ V21 结构:三张套餐 feature 卡片,免费版/专业版/企业版,推
- xiaoxia-ci-python:3.12 本地镜像缺失,runner 尝试从 Docker Hub 拉取不存在/不可达镜像。
- 由于外网代理拉 python:3.12-slim 超时,已临时从服务器已有 xiaoxia-saas-api:dev 派生构建 xiaoxia-ci-python:3.12,补齐 black/isort/flake8/bandit/pytest。
## 2026-06-24 Deploy Workflow 修复记录
- Staging deploy 原 job 使用 container: docker:27-cli,runner 主机本地无该镜像且外网拉取卡住。
- 已改为直接在 runner host shell 执行同步和 infra/docker/deploy-staging.sh,避免依赖外部 Docker CLI 镜像。