diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml index 910e1f5b..1ce12579 100644 --- a/.gitea/workflows/dev.yml +++ b/.gitea/workflows/dev.yml @@ -8,28 +8,35 @@ jobs: build-all: runs-on: ubuntu steps: - - name: 拉取代码 + - name: 拉取代码仓库 uses: http://git.missmoc.top/mocheng/checkout@v4 - - name: 配置JDK和Maven + - name: 配置JDK和Maven环境 run: | - # 配置环境变量 + # 配置环境变量路径 export JAVA_HOME="/java17/java17" export MAVEN_HOME="/maven/apache-maven-3.9.11" - # 验证环境 - [ -d "$JAVA_HOME" ] || { echo "JDK不存在: $JAVA_HOME"; exit 1; } - [ -d "$MAVEN_HOME" ] || { echo "Maven不存在: $MAVEN_HOME"; exit 1; } + # 验证环境是否存在 + [ -d "$JAVA_HOME" ] || { echo "错误:JDK目录不存在 - $JAVA_HOME"; exit 1; } + [ -d "$MAVEN_HOME" ] || { echo "错误:Maven目录不存在 - $MAVEN_HOME"; exit 1; } - # 导出环境变量 + # 导出环境变量到工作流 echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV echo "$JAVA_HOME/bin" >> $GITHUB_PATH echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV echo "$MAVEN_HOME/bin" >> $GITHUB_PATH + + # 输出版本信息验证配置 + java -version + mvn -v - - name: 配置Maven仓库 + - name: 配置Maven仓库(阿里云) run: | + # 创建Maven配置目录 mkdir -p ~/.m2 + + # 写入settings.xml配置 cat > ~/.m2/settings.xml << 'EOF' @@ -39,7 +46,7 @@ jobs: aliyun - aliyun + aliyun-public https://maven.aliyun.com/repository/public true true @@ -53,20 +60,21 @@ jobs: EOF - - name: 主POM统一打包 + - name: 主POM统一打包所有模块 run: | - # 从根目录构建所有模块 + # 从根目录执行打包命令 mvn clean package -U -DskipTests -f pom.xml - # 查看构建产物 + # 验证打包结果 + echo "=== 构建产物列表 ===" find . -name "*.jar" -path "*/target/*" - # 阶段2:为每个服务构建并推送镜像 - build-images: + # 阶段2:为每个服务模块构建并推送Docker镜像 + build-and-push-images: needs: build-all runs-on: ubuntu strategy: - fail-fast: false + fail-fast: false # 单个服务失败不影响其他服务构建 matrix: service: - ruoyi-auth @@ -84,31 +92,28 @@ jobs: - ruoyi-sentinel-dashboard - ruoyi-snailjob-server steps: - - name: 拉取代码 + - name: 拉取代码仓库 uses: http://git.missmoc.top/mocheng/checkout@v4 - - name: 配置Docker构建环境 + - name: 配置Docker Buildx构建环境 uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3 - - name: 登录容器仓库 + - name: 登录到容器仓库 uses: http://git.missmoc.top/mocheng/login-action@v3 with: registry: ${{ secrets.REGISTRY_URL }} username: ${{ secrets.REGISTRY_USER }} password: ${{ secrets.REGISTRY_PASS }} - - name: 构建并推送镜像 + - name: 构建并推送服务镜像 uses: http://git.missmoc.top/mocheng/build-push-action@v5 with: - context: . - file: ./${{ matrix.service }}/Dockerfile - tags: | + context: . # 构建上下文为项目根目录 + file: ./${{ matrix.service }}/Dockerfile # 指定模块的Dockerfile路径 + tags: # 镜像标签 ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }} ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:latest - push: true - cache-from: type=gha - cache-to: type=gha,mode=max - paths: - - ${{ matrix.service }}/**/* - - pom.xml + push: true # 推送镜像到仓库 + cache-from: type=gha # 使用GitHub Actions缓存 + cache-to: type=gha,mode=max # 最大化缓存内容 \ No newline at end of file