diff --git a/.gitea/workflows/build-push.yml b/.gitea/workflows/build-push.yml index eb0670b..8523bd6 100644 --- a/.gitea/workflows/build-push.yml +++ b/.gitea/workflows/build-push.yml @@ -10,28 +10,31 @@ jobs: runs-on: arm64 steps: + # 步骤 1: 手动检出代码 (使用硬编码变量) - name: Manual Checkout run: | - set -e + set -e # 任何命令失败立即退出 - echo "正在手动检出代码..." + echo "正在手动检出代码... (使用硬编码路径)" REPO_DIR="repo" rm -rf $REPO_DIR mkdir $REPO_DIR - echo "检查 Gitea 环境变量..." - if [ -z "$GITEA_REPOSITORY_URL" ] || [ -z "$GITEA_ACTOR" ] || [ -z "$GITEA_REF_NAME" ]; then - echo "::error::一个或多个 Gitea 环境变量未设置!" - exit 1 - fi + # --- 变量硬编码 --- + # 您的 Runner 未提供 $GITEA_REPOSITORY_URL 和 $GITEA_REF_NAME + # 我们在此处手动定义它们 + HARDCODED_REPO_URL="http://192.168.0.75:3000/guanyuankai/bonus-edge-proxy" + HARDCODED_BRANCH="cicd-testing" + # -------------------- # 构造认证 URL - REPO_URL_AUTH=$(echo "$GITEA_REPOSITORY_URL" | sed "s|://|://${GITEA_ACTOR}:${{ secrets.cicd }}@|") + # 我们仍然假设 ${{ gitea.actor }} 和 ${{ secrets.cicd }} 会被 Runner 正确注入 + REPO_URL_AUTH=$(echo "$HARDCODED_REPO_URL" | sed "s|://|://${{ gitea.actor }}:${{ secrets.cicd }}@|") REPO_URL_WITH_CREDS="${REPO_URL_AUTH}.git" - echo "开始克隆分支 $GITEA_REF_NAME 到 $REPO_DIR 目录..." - git clone --quiet --branch $GITEA_REF_NAME $REPO_URL_WITH_CREDS $REPO_DIR + echo "开始克隆分支 $HARDCODED_BRANCH 到 $REPO_DIR 目录..." + git clone --quiet --branch $HARDCODED_BRANCH $REPO_URL_WITH_CREDS $REPO_DIR echo "代码检出成功。检查 './repo' 目录内容:" ls -la $REPO_DIR @@ -40,24 +43,27 @@ jobs: ls -la $REPO_DIR/docker echo "---" + # 步骤 2: 登录 Gitea 容器注册表 - name: Login to Gitea Container Registry run: | - echo ${{ secrets.cicd }} | docker login http://192.180.0.75:3000 -u ${{ gitea.actor }} --password-stdin + echo ${{ secrets.cicd }} | docker login http://192.168.0.75:3000 -u ${{ gitea.actor }} --password-stdin + # 步骤 3: 构建并推送镜像 (使用硬编码版本) - name: Build and Push Image run: | - set -e # 关键:任何命令失败立即退出 + set -e # 任何命令失败立即退出 echo "切换工作目录到 ./repo" cd repo echo "已成功切换目录。当前工作目录 (pwd):" pwd - echo "当前目录内容 (ls -la):" - ls -la + + # --- 变量硬编码 --- + # 您的 Runner 未提供 $GITEA_REF_NAME,因此我们也必须硬编码版本 + VERSION="cicd-testing" + # -------------------- - # 使用 GITEA_REF_NAME 作为版本号 - VERSION=$(echo $GITEA_REF_NAME | sed 's/v//') IMAGE_PATH="192.168.0.75:3000/guanyuankai/bonus-edge-proxy:${VERSION}" LATEST_PATH="192.168.0.75:3000/guanyuankai/bonus-edge-proxy:latest" @@ -65,6 +71,7 @@ jobs: docker buildx build \ --platform linux/arm64 \ + --load \ -t $IMAGE_PATH \ -t $LATEST_PATH \ -f docker/Dockerfile.prod . \