From f4706ad097a2a2af3d17d53d3f48fc16548ba6e4 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Wed, 13 Aug 2025 16:42:19 +0800
Subject: [PATCH 01/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 0740af1b..a49e0ace 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,9 +1,9 @@
-name: Build and Push Microservices Images
+run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
on:
push:
branches:
- - [main] # 替换为要监听的分支
+ - [master] # 替换为要监听的分支
jobs:
build-and-push:
From e41944c90872d55433f19be98c470666e3ddcd89 Mon Sep 17 00:00:00 2001
From: mocheng <3057647414@qq.com>
Date: Wed, 13 Aug 2025 16:50:03 +0800
Subject: [PATCH 02/36] cicd
---
.gitea/workflows/dev.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index a49e0ace..5f15f2d7 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -3,7 +3,7 @@ run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
on:
push:
branches:
- - [master] # 替换为要监听的分支
+ - master # 替换为要监听的分支
jobs:
build-and-push:
@@ -63,4 +63,4 @@ jobs:
context: .
file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
- push: true
\ No newline at end of file
+ push: true
From 6c4a404799c3834b53189f08d5d9379b87c70793 Mon Sep 17 00:00:00 2001
From: mocheng <3057647414@qq.com>
Date: Wed, 13 Aug 2025 17:56:12 +0800
Subject: [PATCH 03/36] cicd
---
.gitea/workflows/dev.yml | 26 +++++++++++++++++++++-----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 5f15f2d7..557660f5 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -27,22 +27,36 @@ jobs:
- ruoyi-snailjob-server
steps:
- name: Checkout Repository
- uses: actions/checkout@v3
+ # 使用本地Gitea仓库的checkout action
+ uses: http://47.109.37.87:3000/bichangxiong/checkout@v3
+ # 如果是私有仓库,可能需要令牌
+ with:
+ token: ${{ secrets.GITEA_TOKEN }}
- name: Set Up JDK
- uses: actions/setup-java@v3
+ # 使用本地Gitea仓库的setup-java action
+ uses: http://47.109.37.87:3000/bichangxiong/java-setup@v3
with:
java-version: '17' # 按项目实际Java版本调整
distribution: 'temurin'
+ # 如果需要从本地Maven仓库拉取依赖,可以添加以下配置
+ server-id: gitea
+ server-username: ${{ secrets.REGISTRY_USER }}
+ server-password: ${{ secrets.REGISTRY_PASS }}
- name: Build Project with Maven
run: mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
+ env:
+ # 配置Maven使用本地仓库
+ MAVEN_OPTS: "-Dmaven.repo.local=.m2/repository"
- name: Set Up Docker Buildx
- uses: docker/setup-buildx-action@v2
+ # 使用本地Gitea仓库的setup-buildx-action
+ uses: http://47.109.37.87:3000/cicd/setup-buildx-action@v2
- name: Login to Gitea Container Registry
- uses: docker/login-action@v2
+ # 使用本地Gitea仓库的login-action
+ uses: http://47.109.37.87:3000/cicd/login-action@v2
with:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USER }}
@@ -58,9 +72,11 @@ jobs:
fi
- name: Build and Push Docker Image
- uses: docker/build-push-action@v4
+ # 使用本地Gitea仓库的build-push-action
+ uses: http://47.109.37.87:3000/cicd/build-push-action@v4
with:
context: .
file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
push: true
+
From 727e984726fb87640e6692b836d8de9fd72b7513 Mon Sep 17 00:00:00 2001
From: mocheng <3057647414@qq.com>
Date: Wed, 13 Aug 2025 18:31:34 +0800
Subject: [PATCH 04/36] cicd
---
.gitea/workflows/dev.yml | 30 +++++++-----------------------
1 file changed, 7 insertions(+), 23 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 557660f5..6d71a015 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -3,7 +3,7 @@ run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
on:
push:
branches:
- - master # 替换为要监听的分支
+ - master # 监听master分支
jobs:
build-and-push:
@@ -27,36 +27,22 @@ jobs:
- ruoyi-snailjob-server
steps:
- name: Checkout Repository
- # 使用本地Gitea仓库的checkout action
- uses: http://47.109.37.87:3000/bichangxiong/checkout@v3
- # 如果是私有仓库,可能需要令牌
- with:
- token: ${{ secrets.GITEA_TOKEN }}
+ uses: actions/checkout@v4
- name: Set Up JDK
- # 使用本地Gitea仓库的setup-java action
- uses: http://47.109.37.87:3000/bichangxiong/java-setup@v3
+ uses: actions/setup-java@v4
with:
- java-version: '17' # 按项目实际Java版本调整
+ java-version: '17'
distribution: 'temurin'
- # 如果需要从本地Maven仓库拉取依赖,可以添加以下配置
- server-id: gitea
- server-username: ${{ secrets.REGISTRY_USER }}
- server-password: ${{ secrets.REGISTRY_PASS }}
- name: Build Project with Maven
run: mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
- env:
- # 配置Maven使用本地仓库
- MAVEN_OPTS: "-Dmaven.repo.local=.m2/repository"
- name: Set Up Docker Buildx
- # 使用本地Gitea仓库的setup-buildx-action
- uses: http://47.109.37.87:3000/cicd/setup-buildx-action@v2
+ uses: docker/setup-buildx-action@v3
- name: Login to Gitea Container Registry
- # 使用本地Gitea仓库的login-action
- uses: http://47.109.37.87:3000/cicd/login-action@v2
+ uses: docker/login-action@v3
with:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USER }}
@@ -72,11 +58,9 @@ jobs:
fi
- name: Build and Push Docker Image
- # 使用本地Gitea仓库的build-push-action
- uses: http://47.109.37.87:3000/cicd/build-push-action@v4
+ uses: docker/build-push-action@v5
with:
context: .
file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
push: true
-
From d971fa0b92828daec54e3efeccb4bf7e976f0425 Mon Sep 17 00:00:00 2001
From: mocheng <3057647414@qq.com>
Date: Wed, 13 Aug 2025 19:15:23 +0800
Subject: [PATCH 05/36] cicd
---
.gitea/workflows/dev.yml | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 6d71a015..4af6e8c7 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,13 +1,11 @@
run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
-
on:
push:
branches:
- master # 监听master分支
-
jobs:
build-and-push:
- runs-on: ubuntu-latest
+ runs-on: ubuntu
strategy:
matrix:
service:
From 018714f3525a0f80d1e5549864913db8a91a84b6 Mon Sep 17 00:00:00 2001
From: mocheng <3057647414@qq.com>
Date: Wed, 13 Aug 2025 19:19:19 +0800
Subject: [PATCH 06/36] cicd
---
.gitea/workflows/dev.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 4af6e8c7..8615566d 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -25,10 +25,10 @@ jobs:
- ruoyi-snailjob-server
steps:
- name: Checkout Repository
- uses: actions/checkout@v4
+ uses: gitee/checkout@v4
- name: Set Up JDK
- uses: actions/setup-java@v4
+ uses: gitee/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
From ae4969dad841473fc35e5364f85899bdc81f745f Mon Sep 17 00:00:00 2001
From: mocheng <3057647414@qq.com>
Date: Wed, 13 Aug 2025 20:45:58 +0800
Subject: [PATCH 07/36] cicd
---
.gitea/workflows/dev.yml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 8615566d..9c57825a 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -25,10 +25,10 @@ jobs:
- ruoyi-snailjob-server
steps:
- name: Checkout Repository
- uses: gitee/checkout@v4
+ uses: http://git.missmoc.top/mocheng/checkout@v4
- name: Set Up JDK
- uses: gitee/setup-java@v4
+ uses: http://git.missmoc.top/mocheng/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
@@ -37,10 +37,10 @@ jobs:
run: mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
- name: Set Up Docker Buildx
- uses: docker/setup-buildx-action@v3
+ uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
- name: Login to Gitea Container Registry
- uses: docker/login-action@v3
+ uses: http://git.missmoc.top/mocheng/login-action@v3
with:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USER }}
@@ -56,7 +56,7 @@ jobs:
fi
- name: Build and Push Docker Image
- uses: docker/build-push-action@v5
+ uses: http://git.missmoc.top/mocheng/build-push-action@v5
with:
context: .
file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
From fb80f4bba660cfbec3fa9b5b3f52f0b295105fdb Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Wed, 13 Aug 2025 21:38:57 +0800
Subject: [PATCH 08/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 9c57825a..a0a2ca3b 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -28,7 +28,7 @@ jobs:
uses: http://git.missmoc.top/mocheng/checkout@v4
- name: Set Up JDK
- uses: http://git.missmoc.top/mocheng/setup-java@v4
+ uses: http://git.missmoc.top/mocheng/setup-java
with:
java-version: '17'
distribution: 'temurin'
From 26c292ea96954089e4e8525654586d24f2a5577f Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Wed, 13 Aug 2025 21:43:40 +0800
Subject: [PATCH 09/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index a0a2ca3b..9c57825a 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -28,7 +28,7 @@ jobs:
uses: http://git.missmoc.top/mocheng/checkout@v4
- name: Set Up JDK
- uses: http://git.missmoc.top/mocheng/setup-java
+ uses: http://git.missmoc.top/mocheng/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
From 4130a863ded27bac2f4f270ebe66c9aeb0a9066e Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Wed, 13 Aug 2025 23:47:59 +0800
Subject: [PATCH 10/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 9c57825a..c9cc2d37 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -24,6 +24,10 @@ jobs:
- ruoyi-sentinel-dashboard
- ruoyi-snailjob-server
steps:
+ - name: Set up Node.js
+ uses: http://git.missmoc.top/mocheng/setup-node@v3
+ with:
+ node-version: '16' # 指定需要的 Node.js 版本
- name: Checkout Repository
uses: http://git.missmoc.top/mocheng/checkout@v4
From b09ba939ae4dd25f57a28dd196253b9c14c3cbab Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:18:25 +0800
Subject: [PATCH 11/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 25 ++++++++++++++++++++-----
1 file changed, 20 insertions(+), 5 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index c9cc2d37..501aae4d 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -31,11 +31,26 @@ jobs:
- name: Checkout Repository
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: Set Up JDK
- uses: http://git.missmoc.top/mocheng/setup-java@v4
- with:
- java-version: '17'
- distribution: 'temurin'
+ # - name: Set Up JDK
+ # uses: http://git.missmoc.top/mocheng/setup-java@v4
+ # with:
+ # java-version: '17'
+ # distribution: 'temurin'
+ # 移除原有的 uses: actions/setup-java@v3 步骤,替换为以下内容
+ - name: 使用本地 JDK(ARM 架构)
+ run: |
+ # 设置 JAVA_HOME 为本地 JDK 路径
+ echo "JAVA_HOME=/java17" >> $GITHUB_ENV
+ # 将 JDK 的 bin 目录添加到 PATH,确保命令可直接调用(如 java、javac)
+ echo "$JAVA_HOME/bin" >> $GITHUB_PATH
+
+ - name: 验证 JDK 配置
+ run: |
+ # 检查 Java 版本,确认是否正确指向本地 JDK
+ java -version
+ # 检查 JAVA_HOME 环境变量
+ echo "JAVA_HOME: $JAVA_HOME"
+
- name: Build Project with Maven
run: mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
From cf60740347c881f621ad9759d7035fa91c95809b Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:19:06 +0800
Subject: [PATCH 12/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 501aae4d..c94cf192 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -37,7 +37,7 @@ jobs:
# java-version: '17'
# distribution: 'temurin'
# 移除原有的 uses: actions/setup-java@v3 步骤,替换为以下内容
- - name: 使用本地 JDK(ARM 架构)
+ - name: use JDK
run: |
# 设置 JAVA_HOME 为本地 JDK 路径
echo "JAVA_HOME=/java17" >> $GITHUB_ENV
From abc1fdbc7abbf67ce66a6ed6c677a970a18ee5f5 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:20:00 +0800
Subject: [PATCH 13/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index c94cf192..93746941 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -36,17 +36,17 @@ jobs:
# with:
# java-version: '17'
# distribution: 'temurin'
- # 移除原有的 uses: actions/setup-java@v3 步骤,替换为以下内容
+
- name: use JDK
run: |
- # 设置 JAVA_HOME 为本地 JDK 路径
+
echo "JAVA_HOME=/java17" >> $GITHUB_ENV
- # 将 JDK 的 bin 目录添加到 PATH,确保命令可直接调用(如 java、javac)
+
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- - name: 验证 JDK 配置
+ - name: test jdk
run: |
- # 检查 Java 版本,确认是否正确指向本地 JDK
+
java -version
# 检查 JAVA_HOME 环境变量
echo "JAVA_HOME: $JAVA_HOME"
From aa94f476b61dc7f6cf34057b249fa6da41a3486d Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:24:28 +0800
Subject: [PATCH 14/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 93746941..6a55f66f 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -40,7 +40,7 @@ jobs:
- name: use JDK
run: |
- echo "JAVA_HOME=/java17" >> $GITHUB_ENV
+ echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
From c6e482b498a0b990b9629c01f38f3533cfd6b143 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:32:07 +0800
Subject: [PATCH 15/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 3 ---
1 file changed, 3 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 6a55f66f..b5831712 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -39,14 +39,11 @@ jobs:
- name: use JDK
run: |
-
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
-
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- name: test jdk
run: |
-
java -version
# 检查 JAVA_HOME 环境变量
echo "JAVA_HOME: $JAVA_HOME"
From 284d7a938c366d3dc90cf427bad3425f1984497d Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:36:59 +0800
Subject: [PATCH 16/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index b5831712..f7fdc205 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -41,12 +41,15 @@ jobs:
run: |
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
+ echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
+ echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- name: test jdk
run: |
java -version
# 检查 JAVA_HOME 环境变量
echo "JAVA_HOME: $JAVA_HOME"
+ mvn -v
- name: Build Project with Maven
From 86939591f5d66cad0efed0ff48679b3ab4ee9164 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:43:20 +0800
Subject: [PATCH 17/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index f7fdc205..bad5708c 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -49,7 +49,8 @@ jobs:
java -version
# 检查 JAVA_HOME 环境变量
echo "JAVA_HOME: $JAVA_HOME"
- mvn -v
+ ls $MAVEN_HOME/bin/mvn
+ $MAVEN_HOME/bin/mvn -v
- name: Build Project with Maven
From dcda333d437575312175e8f81550cbdf76b6d117 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:44:35 +0800
Subject: [PATCH 18/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index bad5708c..59297ff4 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -54,7 +54,7 @@ jobs:
- name: Build Project with Maven
- run: mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
+ run: $MAVEN_HOME/bin/mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
- name: Set Up Docker Buildx
uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
From 03fc2de13be0239fb97b496d89c41ffd1e0947da Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:52:42 +0800
Subject: [PATCH 19/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 174 +++++++++++++++++++++++++++++++++------
1 file changed, 149 insertions(+), 25 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 59297ff4..53f57cd6 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,10 +1,98 @@
+#
run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
on:
push:
branches:
- master # 监听master分支
+
jobs:
+ # 前置任务:构建并安装项目通用模块(解决内部依赖问题)
+ build-common-modules:
+ runs-on: ubuntu
+ steps:
+ - name: Checkout Repository
+ uses: http://git.missmoc.top/mocheng/checkout@v4
+
+ - name: Set up environment (JDK + Maven)
+ run: |
+ # 配置JDK(确保路径与runner中实际安装路径一致)
+ echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
+ echo "$JAVA_HOME/bin" >> $GITHUB_PATH
+ # 配置Maven
+ echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
+ echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+ # 验证环境配置
+ echo "Java version:"
+ java -version
+ echo "Maven version:"
+ $MAVEN_HOME/bin/mvn -v
+ echo "JAVA_HOME: $JAVA_HOME"
+ echo "MAVEN_HOME: $MAVEN_HOME"
+
+ - name: Configure Maven settings
+ run: |
+ # 创建Maven配置文件,添加必要仓库
+ mkdir -p ~/.m2
+ cat > ~/.m2/settings.xml << EOF
+
+
+
+
+
+ central
+ https://repo1.maven.org/maven2
+ central
+
+
+
+ dromara-repo
+ https://maven.dromara.org/repository/releases/
+ dromara
+
+
+
+
+
+ EOF
+
+ - name: Build and install common modules
+ run: |
+ # 构建并安装项目通用模块(根据实际项目结构调整)
+ # 核心通用模块
+ if [ -f "./ruoyi-common/pom.xml" ]; then
+ $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./ruoyi-common/pom.xml
+ else
+ echo "Warning: ruoyi-common module not found"
+ fi
+
+ # API模块
+ if [ -f "./ruoyi-api/pom.xml" ]; then
+ $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./ruoyi-api/pom.xml
+ else
+ echo "Warning: ruoyi-api module not found"
+ fi
+
+ # BOM模块
+ if [ -f "./ruoyi-common-bom/pom.xml" ]; then
+ $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./ruoyi-common-bom/pom.xml
+ else
+ echo "Warning: ruoyi-common-bom module not found"
+ fi
+
+ # 其他通用模块(根据实际情况添加)
+ # if [ -f "./other-common-module/pom.xml" ]; then
+ # $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./other-common-module/pom.xml
+ # fi
+
+ # 主任务:构建并推送各服务镜像
build-and-push:
+ needs: build-common-modules # 依赖通用模块构建完成
runs-on: ubuntu
strategy:
matrix:
@@ -24,37 +112,53 @@ jobs:
- ruoyi-sentinel-dashboard
- ruoyi-snailjob-server
steps:
- - name: Set up Node.js
- uses: http://git.missmoc.top/mocheng/setup-node@v3
- with:
- node-version: '16' # 指定需要的 Node.js 版本
- name: Checkout Repository
uses: http://git.missmoc.top/mocheng/checkout@v4
- # - name: Set Up JDK
- # uses: http://git.missmoc.top/mocheng/setup-java@v4
- # with:
- # java-version: '17'
- # distribution: 'temurin'
-
- - name: use JDK
- run: |
- echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
- echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
- echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+ - name: Set up Node.js (if needed)
+ uses: http://git.missmoc.top/mocheng/setup-node@v3
+ with:
+ node-version: '16'
+ if: ${{ contains(matrix.service, 'frontend') || contains(matrix.service, 'vue') }}
- - name: test jdk
+ - name: Set up environment (JDK + Maven)
run: |
+ # 配置环境变量
+ echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
+ echo "$JAVA_HOME/bin" >> $GITHUB_PATH
+ echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
+ echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+ # 验证环境
+ echo "Java version:"
java -version
- # 检查 JAVA_HOME 环境变量
- echo "JAVA_HOME: $JAVA_HOME"
- ls $MAVEN_HOME/bin/mvn
+ echo "Maven version:"
$MAVEN_HOME/bin/mvn -v
-
- name: Build Project with Maven
- run: $MAVEN_HOME/bin/mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
+ run: |
+ # 检查服务目录是否存在
+ if [ ! -d "./${{ matrix.service }}" ]; then
+ echo "Error: Service directory ${{ matrix.service }} not found"
+ exit 1
+ fi
+
+ # 检查pom.xml是否存在
+ if [ ! -f "./${{ matrix.service }}/pom.xml" ]; then
+ echo "Error: pom.xml not found in ${{ matrix.service }}"
+ exit 1
+ fi
+
+ # 执行构建
+ $MAVEN_HOME/bin/mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
+
+ # 检查构建结果
+ if [ ! -d "./${{ matrix.service }}/target" ]; then
+ echo "Error: Build failed, target directory not found"
+ exit 1
+ fi
+
+ echo "Build successful for ${{ matrix.service }}"
+ ls -la ./${{ matrix.service }}/target/
- name: Set Up Docker Buildx
uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
@@ -69,10 +173,21 @@ jobs:
- name: Determine Dockerfile Path
id: dockerfile-path
run: |
- if [ "${{ matrix.service }}" = "ruoyi-visual/ruoyi-nacos" ]; then
- echo "dockerfile_path=./ruoyi-visual/ruoyi-nacos/Dockerfile" >> $GITHUB_OUTPUT
+ service_path="${{ matrix.service }}"
+ # 检查默认路径
+ default_dockerfile="$service_path/Dockerfile"
+ # 检查通用路径
+ common_dockerfile="Dockerfile"
+
+ if [ -f "$default_dockerfile" ]; then
+ echo "dockerfile_path=$default_dockerfile" >> $GITHUB_OUTPUT
+ echo "Using Dockerfile at $default_dockerfile"
+ elif [ -f "$common_dockerfile" ]; then
+ echo "dockerfile_path=$common_dockerfile" >> $GITHUB_OUTPUT
+ echo "Using root Dockerfile for $service_path"
else
- echo "dockerfile_path=./${{ matrix.service }}/Dockerfile" >> $GITHUB_OUTPUT
+ echo "Error: Dockerfile not found for $service_path"
+ exit 1
fi
- name: Build and Push Docker Image
@@ -82,3 +197,12 @@ jobs:
file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
push: true
+ # 启用缓存加速构建
+ cache-from: type=gha
+ cache-to: type=gha,mode=max
+ # 构建参数
+ build-args: |
+ SERVICE_NAME=${{ matrix.service }}
+ BUILD_TIMESTAMP=$(date +%Y%m%d%H%M%S)
+ # 显示构建详情
+ progress: plain
From 4341c88b1ca08331ce1929909bd35551ee406d9f Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:52:56 +0800
Subject: [PATCH 20/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 1 -
1 file changed, 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 53f57cd6..7184d59e 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,4 +1,3 @@
-#
run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
on:
push:
From d0f825e4c9db07afa6185ca11ae490b9bb489781 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 00:56:23 +0800
Subject: [PATCH 21/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 7184d59e..29bb3f78 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -18,6 +18,9 @@ jobs:
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
# 配置Maven
+ echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
+ echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+
echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
# 验证环境配置
From 507c2e4d8d7c91ebec1edaf2263a80ed8313a52c Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:00:01 +0800
Subject: [PATCH 22/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 15 ++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 29bb3f78..a80e8f00 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -5,29 +5,22 @@ on:
- master # 监听master分支
jobs:
- # 前置任务:构建并安装项目通用模块(解决内部依赖问题)
build-common-modules:
runs-on: ubuntu
steps:
- name: Checkout Repository
uses: http://git.missmoc.top/mocheng/checkout@v4
-
- name: Set up environment (JDK + Maven)
run: |
- # 配置JDK(确保路径与runner中实际安装路径一致)
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
# 配置Maven
echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
-
- echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
- echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- # 验证环境配置
echo "Java version:"
java -version
echo "Maven version:"
- $MAVEN_HOME/bin/mvn -v
+ /maven/apache-maven-3.9.11/bin/mvn -v
echo "JAVA_HOME: $JAVA_HOME"
echo "MAVEN_HOME: $MAVEN_HOME"
@@ -68,21 +61,21 @@ jobs:
# 构建并安装项目通用模块(根据实际项目结构调整)
# 核心通用模块
if [ -f "./ruoyi-common/pom.xml" ]; then
- $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./ruoyi-common/pom.xml
+ /maven/apache-maven-3.9.11/bin/mvn clean install -DskipTests -f ./ruoyi-common/pom.xml
else
echo "Warning: ruoyi-common module not found"
fi
# API模块
if [ -f "./ruoyi-api/pom.xml" ]; then
- $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./ruoyi-api/pom.xml
+ /maven/apache-maven-3.9.11/bin/mvn clean install -DskipTests -f ./ruoyi-api/pom.xml
else
echo "Warning: ruoyi-api module not found"
fi
# BOM模块
if [ -f "./ruoyi-common-bom/pom.xml" ]; then
- $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./ruoyi-common-bom/pom.xml
+ /maven/apache-maven-3.9.11/bin/mvn clean install -DskipTests -f ./ruoyi-common-bom/pom.xml
else
echo "Warning: ruoyi-common-bom module not found"
fi
From f2d66263af8aab9c7c193f367c5dd27e3bc4420d Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:06:52 +0800
Subject: [PATCH 23/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 217 +++++++++++++++++----------------------
1 file changed, 97 insertions(+), 120 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index a80e8f00..56ee1a13 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,93 +1,111 @@
-run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
+run-name: ${{ gitea.actor }} is building with parent POM first 🚀
on:
push:
branches:
- - master # 监听master分支
+ - master
jobs:
- build-common-modules:
+ # 步骤1:构建项目主POM(父模块),安装到本地仓库
+ build-parent-pom:
runs-on: ubuntu
steps:
- name: Checkout Repository
uses: http://git.missmoc.top/mocheng/checkout@v4
+
- name: Set up environment (JDK + Maven)
run: |
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- # 配置Maven
echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- echo "Java version:"
java -version
- echo "Maven version:"
- /maven/apache-maven-3.9.11/bin/mvn -v
- echo "JAVA_HOME: $JAVA_HOME"
- echo "MAVEN_HOME: $MAVEN_HOME"
+ $MAVEN_HOME/bin/mvn -v
- - name: Configure Maven settings
+ - name: Configure Maven settings (本地优先 + 官方仓库)
run: |
- # 创建Maven配置文件,添加必要仓库
mkdir -p ~/.m2
cat > ~/.m2/settings.xml << EOF
-
-
-
- central
- https://repo1.maven.org/maven2
- central
-
-
-
- dromara-repo
- https://maven.dromara.org/repository/releases/
- dromara
-
-
-
-
+ ${user.home}/.m2/repository
+
+
+ local-first
+
+
+ local-repo
+ file://${user.home}/.m2/repository
+ true
+ true
+
+
+ dromara-releases
+ https://maven.dromara.org/repository/releases/
+
+
+ public
+ https://mirrors.huaweicloud.com/repository/maven/
+ false
+
+
+
+
+
+ local-first
+
EOF
+ - name: Build and install parent POM (主POM)
+ run: |
+ # 主POM路径(通常在项目根目录)
+ MAIN_POM_PATH="./pom.xml"
+ if [ ! -f "$MAIN_POM_PATH" ]; then
+ echo "Error: 主POM文件 $MAIN_POM_PATH 不存在"
+ exit 1
+ fi
+ # -N 表示只构建当前模块(不构建子模块),仅安装父POM到本地仓库
+ $MAVEN_HOME/bin/mvn clean install -N -U -DskipTests -f $MAIN_POM_PATH
+ # 验证父POM是否安装成功
+ ls ~/.m2/repository/org/dromara/ruoyi-cloud-plus/${{ github.sha }}/ # 替换为实际groupId/artifactId
+
+ # 步骤2:构建通用模块(依赖主POM)
+ build-common-modules:
+ needs: build-parent-pom
+ runs-on: ubuntu
+ steps:
+ - name: Checkout Repository
+ uses: http://git.missmoc.top/mocheng/checkout@v4
+
+ - name: Set up environment
+ run: |
+ echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
+ echo "$JAVA_HOME/bin" >> $GITHUB_PATH
+ echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
+ echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+
- name: Build and install common modules
run: |
- # 构建并安装项目通用模块(根据实际项目结构调整)
- # 核心通用模块
- if [ -f "./ruoyi-common/pom.xml" ]; then
- /maven/apache-maven-3.9.11/bin/mvn clean install -DskipTests -f ./ruoyi-common/pom.xml
- else
- echo "Warning: ruoyi-common module not found"
- fi
-
- # API模块
- if [ -f "./ruoyi-api/pom.xml" ]; then
- /maven/apache-maven-3.9.11/bin/mvn clean install -DskipTests -f ./ruoyi-api/pom.xml
- else
- echo "Warning: ruoyi-api module not found"
- fi
-
- # BOM模块
- if [ -f "./ruoyi-common-bom/pom.xml" ]; then
- /maven/apache-maven-3.9.11/bin/mvn clean install -DskipTests -f ./ruoyi-common-bom/pom.xml
- else
- echo "Warning: ruoyi-common-bom module not found"
- fi
-
- # 其他通用模块(根据实际情况添加)
- # if [ -f "./other-common-module/pom.xml" ]; then
- # $MAVEN_HOME/bin/mvn clean install -DskipTests -f ./other-common-module/pom.xml
- # fi
+ # 通用模块列表(根据项目结构调整)
+ COMMON_MODULES=(
+ "ruoyi-common"
+ "ruoyi-api"
+ "ruoyi-common-bom"
+ "ruoyi-common-alibaba-bom"
+ )
+ for module in "${COMMON_MODULES[@]}"; do
+ POM_PATH="./$module/pom.xml"
+ if [ -f "$POM_PATH" ]; then
+ echo "Building $module..."
+ $MAVEN_HOME/bin/mvn clean install -U -DskipTests -f $POM_PATH
+ else
+ echo "Warning: 通用模块 $module 不存在(路径:$POM_PATH)"
+ fi
+ done
- # 主任务:构建并推送各服务镜像
- build-and-push:
- needs: build-common-modules # 依赖通用模块构建完成
+ # 步骤3:分服务构建镜像(依赖通用模块)
+ build-and-push-services:
+ needs: build-common-modules
runs-on: ubuntu
strategy:
matrix:
@@ -110,55 +128,30 @@ jobs:
- name: Checkout Repository
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: Set up Node.js (if needed)
- uses: http://git.missmoc.top/mocheng/setup-node@v3
- with:
- node-version: '16'
- if: ${{ contains(matrix.service, 'frontend') || contains(matrix.service, 'vue') }}
-
- - name: Set up environment (JDK + Maven)
+ - name: Set up environment
run: |
- # 配置环境变量
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- # 验证环境
- echo "Java version:"
- java -version
- echo "Maven version:"
- $MAVEN_HOME/bin/mvn -v
- - name: Build Project with Maven
+ - name: Build service with Maven (依赖主POM和通用模块)
run: |
- # 检查服务目录是否存在
- if [ ! -d "./${{ matrix.service }}" ]; then
- echo "Error: Service directory ${{ matrix.service }} not found"
+ SERVICE_PATH="${{ matrix.service }}"
+ POM_PATH="./$SERVICE_PATH/pom.xml"
+ if [ ! -f "$POM_PATH" ]; then
+ echo "Error: 服务 $SERVICE_PATH 的POM文件不存在"
exit 1
fi
-
- # 检查pom.xml是否存在
- if [ ! -f "./${{ matrix.service }}/pom.xml" ]; then
- echo "Error: pom.xml not found in ${{ matrix.service }}"
- exit 1
- fi
-
- # 执行构建
- $MAVEN_HOME/bin/mvn clean package -DskipTests -f ./${{ matrix.service }}/pom.xml
-
- # 检查构建结果
- if [ ! -d "./${{ matrix.service }}/target" ]; then
- echo "Error: Build failed, target directory not found"
- exit 1
- fi
-
- echo "Build successful for ${{ matrix.service }}"
- ls -la ./${{ matrix.service }}/target/
+ # 构建服务(依赖已安装的主POM和通用模块)
+ $MAVEN_HOME/bin/mvn clean package -U -DskipTests -f $POM_PATH
+ # 检查构建产物
+ ls ./$SERVICE_PATH/target/
- name: Set Up Docker Buildx
uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
- - name: Login to Gitea Container Registry
+ - name: Login to Registry
uses: http://git.missmoc.top/mocheng/login-action@v3
with:
registry: ${{ secrets.REGISTRY_URL }}
@@ -168,21 +161,12 @@ jobs:
- name: Determine Dockerfile Path
id: dockerfile-path
run: |
- service_path="${{ matrix.service }}"
- # 检查默认路径
- default_dockerfile="$service_path/Dockerfile"
- # 检查通用路径
- common_dockerfile="Dockerfile"
-
- if [ -f "$default_dockerfile" ]; then
- echo "dockerfile_path=$default_dockerfile" >> $GITHUB_OUTPUT
- echo "Using Dockerfile at $default_dockerfile"
- elif [ -f "$common_dockerfile" ]; then
- echo "dockerfile_path=$common_dockerfile" >> $GITHUB_OUTPUT
- echo "Using root Dockerfile for $service_path"
+ SERVICE_PATH="${{ matrix.service }}"
+ DOCKERFILE="$SERVICE_PATH/Dockerfile"
+ if [ -f "$DOCKERFILE" ]; then
+ echo "dockerfile_path=$DOCKERFILE" >> $GITHUB_OUTPUT
else
- echo "Error: Dockerfile not found for $service_path"
- exit 1
+ echo "dockerfile_path=./Dockerfile" >> $GITHUB_OUTPUT
fi
- name: Build and Push Docker Image
@@ -192,12 +176,5 @@ jobs:
file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
push: true
- # 启用缓存加速构建
cache-from: type=gha
- cache-to: type=gha,mode=max
- # 构建参数
- build-args: |
- SERVICE_NAME=${{ matrix.service }}
- BUILD_TIMESTAMP=$(date +%Y%m%d%H%M%S)
- # 显示构建详情
- progress: plain
+ cache-to: type=gha,mode=max
\ No newline at end of file
From 22dadcfdd9c4d75c1c353f0a83245971e154e64e Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:08:21 +0800
Subject: [PATCH 24/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 73 ++++++++++++++++++++--------------------
1 file changed, 37 insertions(+), 36 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 56ee1a13..05b91aa3 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -5,7 +5,6 @@ on:
- master
jobs:
- # 步骤1:构建项目主POM(父模块),安装到本地仓库
build-parent-pom:
runs-on: ubuntu
steps:
@@ -14,14 +13,31 @@ jobs:
- name: Set up environment (JDK + Maven)
run: |
+ # 配置 JDK(确认路径正确,与实际安装一致)
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
- echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+
+ # 修复 Maven 路径:先确认 runner 中 Maven 的实际安装位置
+ # 常见路径:/usr/local/maven、/opt/maven、/maven 等,根据实际情况修改
+ MAVEN_ACTUAL_PATH="/maven/apache-maven-3.9.11" # 关键:替换为 runner 中 Maven 的真实路径
+
+ # 验证 Maven 可执行文件是否存在
+ if [ ! -f "$MAVEN_ACTUAL_PATH/bin/mvn" ]; then
+ echo "Error: Maven 可执行文件不存在于 $MAVEN_ACTUAL_PATH/bin/mvn"
+ exit 1
+ fi
+
+ # 配置 Maven 环境变量
+ echo "MAVEN_HOME=$MAVEN_ACTUAL_PATH" >> $GITHUB_ENV
+ echo "$MAVEN_ACTUAL_PATH/bin" >> $GITHUB_PATH
+
+ # 验证配置
+ echo "Java 版本:"
java -version
- $MAVEN_HOME/bin/mvn -v
+ echo "Maven 版本:"
+ mvn -v # 此处若仍报错,说明路径确实错误,需重新确认
- - name: Configure Maven settings (本地优先 + 官方仓库)
+ - name: Configure Maven settings
run: |
mkdir -p ~/.m2
cat > ~/.m2/settings.xml << EOF
@@ -35,18 +51,11 @@ jobs:
local-repo
file://${user.home}/.m2/repository
- true
- true
dromara-releases
https://maven.dromara.org/repository/releases/
-
- public
- https://mirrors.huaweicloud.com/repository/maven/
- false
-
@@ -56,20 +65,15 @@ jobs:
EOF
- - name: Build and install parent POM (主POM)
+ - name: Build and install parent POM
run: |
- # 主POM路径(通常在项目根目录)
MAIN_POM_PATH="./pom.xml"
if [ ! -f "$MAIN_POM_PATH" ]; then
- echo "Error: 主POM文件 $MAIN_POM_PATH 不存在"
+ echo "Error: 主POM文件不存在"
exit 1
fi
- # -N 表示只构建当前模块(不构建子模块),仅安装父POM到本地仓库
- $MAVEN_HOME/bin/mvn clean install -N -U -DskipTests -f $MAIN_POM_PATH
- # 验证父POM是否安装成功
- ls ~/.m2/repository/org/dromara/ruoyi-cloud-plus/${{ github.sha }}/ # 替换为实际groupId/artifactId
+ mvn clean install -N -U -DskipTests -f $MAIN_POM_PATH
- # 步骤2:构建通用模块(依赖主POM)
build-common-modules:
needs: build-parent-pom
runs-on: ubuntu
@@ -81,29 +85,27 @@ jobs:
run: |
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
- echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+ MAVEN_ACTUAL_PATH="/maven/apache-maven-3.9.11" # 与上文一致
+ echo "MAVEN_HOME=$MAVEN_ACTUAL_PATH" >> $GITHUB_ENV
+ echo "$MAVEN_ACTUAL_PATH/bin" >> $GITHUB_PATH
+ mvn -v # 验证
- name: Build and install common modules
run: |
- # 通用模块列表(根据项目结构调整)
COMMON_MODULES=(
"ruoyi-common"
"ruoyi-api"
"ruoyi-common-bom"
- "ruoyi-common-alibaba-bom"
)
for module in "${COMMON_MODULES[@]}"; do
POM_PATH="./$module/pom.xml"
if [ -f "$POM_PATH" ]; then
- echo "Building $module..."
- $MAVEN_HOME/bin/mvn clean install -U -DskipTests -f $POM_PATH
+ mvn clean install -U -DskipTests -f $POM_PATH
else
- echo "Warning: 通用模块 $module 不存在(路径:$POM_PATH)"
+ echo "Warning: 模块 $module 不存在"
fi
done
- # 步骤3:分服务构建镜像(依赖通用模块)
build-and-push-services:
needs: build-common-modules
runs-on: ubuntu
@@ -132,21 +134,20 @@ jobs:
run: |
echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- echo "MAVEN_HOME=/maven/apache-maven-3.9.11" >> $GITHUB_ENV
- echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
+ MAVEN_ACTUAL_PATH="/maven/apache-maven-3.9.11" # 与上文一致
+ echo "MAVEN_HOME=$MAVEN_ACTUAL_PATH" >> $GITHUB_ENV
+ echo "$MAVEN_ACTUAL_PATH/bin" >> $GITHUB_PATH
+ mvn -v # 验证
- - name: Build service with Maven (依赖主POM和通用模块)
+ - name: Build service with Maven
run: |
SERVICE_PATH="${{ matrix.service }}"
POM_PATH="./$SERVICE_PATH/pom.xml"
if [ ! -f "$POM_PATH" ]; then
- echo "Error: 服务 $SERVICE_PATH 的POM文件不存在"
+ echo "Error: POM文件不存在"
exit 1
fi
- # 构建服务(依赖已安装的主POM和通用模块)
- $MAVEN_HOME/bin/mvn clean package -U -DskipTests -f $POM_PATH
- # 检查构建产物
- ls ./$SERVICE_PATH/target/
+ mvn clean package -U -DskipTests -f $POM_PATH
- name: Set Up Docker Buildx
uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
From 7bbf011dcfaeb9cf9fcdbee0c131173209833b28 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:11:07 +0800
Subject: [PATCH 25/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 173 ++++++++++++++++++++++++---------------
1 file changed, 109 insertions(+), 64 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 05b91aa3..889a5863 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,43 +1,47 @@
-run-name: ${{ gitea.actor }} is building with parent POM first 🚀
+run-name: ${{ gitea.actor }} 构建主POM并分模块打包 🚀
on:
push:
branches:
- master
jobs:
+ # 第一步:构建主POM(父模块)并安装到本地仓库
build-parent-pom:
runs-on: ubuntu
steps:
- - name: Checkout Repository
+ - name: 拉取代码仓库
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: Set up environment (JDK + Maven)
+ - name: 配置环境变量(使用绝对路径)
run: |
- # 配置 JDK(确认路径正确,与实际安装一致)
- echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
- echo "$JAVA_HOME/bin" >> $GITHUB_PATH
+ # 配置JDK绝对路径(必须与runner中实际路径一致)
+ export JAVA_HOME="/java17/java17"
+ # 配置Maven绝对路径(必须与runner中实际路径一致)
+ export MAVEN_HOME="/maven/apache-maven-3.9.11"
- # 修复 Maven 路径:先确认 runner 中 Maven 的实际安装位置
- # 常见路径:/usr/local/maven、/opt/maven、/maven 等,根据实际情况修改
- MAVEN_ACTUAL_PATH="/maven/apache-maven-3.9.11" # 关键:替换为 runner 中 Maven 的真实路径
-
- # 验证 Maven 可执行文件是否存在
- if [ ! -f "$MAVEN_ACTUAL_PATH/bin/mvn" ]; then
- echo "Error: Maven 可执行文件不存在于 $MAVEN_ACTUAL_PATH/bin/mvn"
+ # 验证JDK和Maven可执行文件是否存在
+ if [ ! -f "$JAVA_HOME/bin/java" ]; then
+ echo "错误:JDK可执行文件不存在于 $JAVA_HOME/bin/java"
+ exit 1
+ fi
+ if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
+ echo "错误:Maven可执行文件不存在于 $MAVEN_HOME/bin/mvn"
exit 1
fi
- # 配置 Maven 环境变量
- echo "MAVEN_HOME=$MAVEN_ACTUAL_PATH" >> $GITHUB_ENV
- echo "$MAVEN_ACTUAL_PATH/bin" >> $GITHUB_PATH
+ # 写入环境变量(确保后续步骤可用)
+ 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
- # 验证配置
- echo "Java 版本:"
- java -version
- echo "Maven 版本:"
- mvn -v # 此处若仍报错,说明路径确实错误,需重新确认
+ # 验证环境配置
+ echo "=== JDK版本 ==="
+ "$JAVA_HOME/bin/java" -version
+ echo "=== Maven版本 ==="
+ "$MAVEN_HOME/bin/mvn" -v
- - name: Configure Maven settings
+ - name: 配置Maven仓库(本地优先)
run: |
mkdir -p ~/.m2
cat > ~/.m2/settings.xml << EOF
@@ -51,6 +55,8 @@ jobs:
local-repo
file://${user.home}/.m2/repository
+ true
+ true
dromara-releases
@@ -65,47 +71,72 @@ jobs:
EOF
- - name: Build and install parent POM
+ - name: 构建并安装主POM(父模块)
run: |
- MAIN_POM_PATH="./pom.xml"
- if [ ! -f "$MAIN_POM_PATH" ]; then
- echo "Error: 主POM文件不存在"
+ # 主POM绝对路径
+ MAIN_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/pom.xml"
+ echo "主POM路径:$MAIN_POM_ABSOLUTE_PATH"
+
+ if [ ! -f "$MAIN_POM_ABSOLUTE_PATH" ]; then
+ echo "错误:主POM文件不存在于 $MAIN_POM_ABSOLUTE_PATH"
exit 1
fi
- mvn clean install -N -U -DskipTests -f $MAIN_POM_PATH
+
+ # 使用绝对路径执行Maven命令,仅构建父模块(-N)
+ "$MAVEN_HOME/bin/mvn" clean install -N -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"
+
+ # 验证主POM是否安装成功
+ echo "=== 验证主POM安装 ==="
+ ls -la ~/.m2/repository/org/dromara/ruoyi-cloud-plus/
+ # 第二步:构建通用模块(依赖主POM)
build-common-modules:
needs: build-parent-pom
runs-on: ubuntu
steps:
- - name: Checkout Repository
+ - name: 拉取代码仓库
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: Set up environment
+ - name: 配置环境变量(绝对路径)
run: |
- echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
+ export JAVA_HOME="/java17/java17"
+ export MAVEN_HOME="/maven/apache-maven-3.9.11"
+ echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- MAVEN_ACTUAL_PATH="/maven/apache-maven-3.9.11" # 与上文一致
- echo "MAVEN_HOME=$MAVEN_ACTUAL_PATH" >> $GITHUB_ENV
- echo "$MAVEN_ACTUAL_PATH/bin" >> $GITHUB_PATH
- mvn -v # 验证
+ echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV
+ echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- - name: Build and install common modules
+ - name: 构建并安装通用模块
run: |
+ # 通用模块列表(根据实际项目结构调整)
COMMON_MODULES=(
"ruoyi-common"
"ruoyi-api"
"ruoyi-common-bom"
+ "ruoyi-common-alibaba-bom"
+ "ruoyi-api-bom"
)
+
for module in "${COMMON_MODULES[@]}"; do
- POM_PATH="./$module/pom.xml"
- if [ -f "$POM_PATH" ]; then
- mvn clean install -U -DskipTests -f $POM_PATH
- else
- echo "Warning: 模块 $module 不存在"
+ # 模块POM的绝对路径
+ MODULE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${module}/pom.xml"
+ echo "=== 构建模块:$module ==="
+ echo "POM路径:$MODULE_POM_ABSOLUTE_PATH"
+
+ if [ ! -f "$MODULE_POM_ABSOLUTE_PATH" ]; then
+ echo "警告:模块 $module 的POM文件不存在,跳过"
+ continue
fi
+
+ # 使用Maven绝对路径执行命令
+ "$MAVEN_HOME/bin/mvn" clean install -U -DskipTests -f "$MODULE_POM_ABSOLUTE_PATH"
+
+ # 验证模块是否安装成功
+ MODULE_GROUP_ID="org.dromara"
+ ls -la ~/.m2/repository/"${MODULE_GROUP_ID//.//}"/"$module"/
done
+ # 第三步:分服务构建镜像并上传(依赖通用模块)
build-and-push-services:
needs: build-common-modules
runs-on: ubuntu
@@ -127,55 +158,69 @@ jobs:
- ruoyi-sentinel-dashboard
- ruoyi-snailjob-server
steps:
- - name: Checkout Repository
+ - name: 拉取代码仓库
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: Set up environment
+ - name: 配置环境变量(绝对路径)
run: |
- echo "JAVA_HOME=/java17/java17" >> $GITHUB_ENV
+ export JAVA_HOME="/java17/java17"
+ export MAVEN_HOME="/maven/apache-maven-3.9.11"
+ echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
echo "$JAVA_HOME/bin" >> $GITHUB_PATH
- MAVEN_ACTUAL_PATH="/maven/apache-maven-3.9.11" # 与上文一致
- echo "MAVEN_HOME=$MAVEN_ACTUAL_PATH" >> $GITHUB_ENV
- echo "$MAVEN_ACTUAL_PATH/bin" >> $GITHUB_PATH
- mvn -v # 验证
+ echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV
+ echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- - name: Build service with Maven
+ - name: 构建服务模块
run: |
- SERVICE_PATH="${{ matrix.service }}"
- POM_PATH="./$SERVICE_PATH/pom.xml"
- if [ ! -f "$POM_PATH" ]; then
- echo "Error: POM文件不存在"
+ SERVICE_NAME="${{ matrix.service }}"
+ # 服务POM的绝对路径
+ SERVICE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/pom.xml"
+ echo "=== 构建服务:$SERVICE_NAME ==="
+ echo "POM路径:$SERVICE_POM_ABSOLUTE_PATH"
+
+ if [ ! -f "$SERVICE_POM_ABSOLUTE_PATH" ]; then
+ echo "错误:服务 $SERVICE_NAME 的POM文件不存在"
exit 1
fi
- mvn clean package -U -DskipTests -f $POM_PATH
+
+ # 使用Maven绝对路径执行打包命令
+ "$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$SERVICE_POM_ABSOLUTE_PATH"
+
+ # 验证构建产物
+ echo "=== 构建产物 ==="
+ ls -la "${GITHUB_WORKSPACE}/${SERVICE_NAME}/target/"
- - name: Set Up Docker Buildx
+ - name: 配置Docker Buildx
uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
- - name: Login to Registry
+ - name: 登录到容器仓库
uses: http://git.missmoc.top/mocheng/login-action@v3
with:
registry: ${{ secrets.REGISTRY_URL }}
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_PASS }}
- - name: Determine Dockerfile Path
+ - name: 确定Dockerfile路径
id: dockerfile-path
run: |
- SERVICE_PATH="${{ matrix.service }}"
- DOCKERFILE="$SERVICE_PATH/Dockerfile"
- if [ -f "$DOCKERFILE" ]; then
- echo "dockerfile_path=$DOCKERFILE" >> $GITHUB_OUTPUT
+ SERVICE_NAME="${{ matrix.service }}"
+ DOCKERFILE_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/Dockerfile"
+
+ if [ -f "$DOCKERFILE_ABSOLUTE_PATH" ]; then
+ echo "dockerfile_path=$DOCKERFILE_ABSOLUTE_PATH" >> $GITHUB_OUTPUT
+ echo "使用Dockerfile:$DOCKERFILE_ABSOLUTE_PATH"
else
- echo "dockerfile_path=./Dockerfile" >> $GITHUB_OUTPUT
+ echo "dockerfile_path=${GITHUB_WORKSPACE}/Dockerfile" >> $GITHUB_OUTPUT
+ echo "使用根目录Dockerfile:${GITHUB_WORKSPACE}/Dockerfile"
fi
- - name: Build and Push Docker Image
+ - name: 构建并推送Docker镜像
uses: http://git.missmoc.top/mocheng/build-push-action@v5
with:
- context: .
+ context: "${GITHUB_WORKSPACE}"
file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
push: true
cache-from: type=gha
- cache-to: type=gha,mode=max
\ No newline at end of file
+ cache-to: type=gha,mode=max
+
\ No newline at end of file
From 33ea126b95f9225f875aa5fca8dd980d2b73a570 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:17:03 +0800
Subject: [PATCH 26/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 889a5863..a2305c1c 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -47,14 +47,14 @@ jobs:
cat > ~/.m2/settings.xml << EOF
- ${user.home}/.m2/repository
+ /root/.m2/repository
local-first
local-repo
- file://${user.home}/.m2/repository
+ file:///root/.m2/repository
true
true
From 43f07b739653018b820bedce6a2b02fd3d45deda Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:22:44 +0800
Subject: [PATCH 27/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 252 +++++++++++++++++++++------------------
1 file changed, 137 insertions(+), 115 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index a2305c1c..0d2e7861 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,103 +1,138 @@
-run-name: ${{ gitea.actor }} 构建主POM并分模块打包 🚀
+run-name: ${{ gitea.actor }} 构建镜像并推送(不含JAR依赖上传)🚀
on:
push:
branches:
- master
jobs:
- # 第一步:构建主POM(父模块)并安装到本地仓库
build-parent-pom:
- runs-on: ubuntu
- steps:
- - name: 拉取代码仓库
- uses: http://git.missmoc.top/mocheng/checkout@v4
-
- - name: 配置环境变量(使用绝对路径)
- run: |
- # 配置JDK绝对路径(必须与runner中实际路径一致)
- export JAVA_HOME="/java17/java17"
- # 配置Maven绝对路径(必须与runner中实际路径一致)
- export MAVEN_HOME="/maven/apache-maven-3.9.11"
-
- # 验证JDK和Maven可执行文件是否存在
- if [ ! -f "$JAVA_HOME/bin/java" ]; then
- echo "错误:JDK可执行文件不存在于 $JAVA_HOME/bin/java"
- exit 1
- fi
- if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
- echo "错误:Maven可执行文件不存在于 $MAVEN_HOME/bin/mvn"
- exit 1
- fi
-
- # 写入环境变量(确保后续步骤可用)
- 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
-
- # 验证环境配置
- echo "=== JDK版本 ==="
- "$JAVA_HOME/bin/java" -version
- echo "=== Maven版本 ==="
- "$MAVEN_HOME/bin/mvn" -v
-
- - name: 配置Maven仓库(本地优先)
- run: |
- mkdir -p ~/.m2
- cat > ~/.m2/settings.xml << EOF
-
-
- /root/.m2/repository
-
-
- local-first
-
-
- local-repo
- file:///root/.m2/repository
- true
- true
-
-
- dromara-releases
- https://maven.dromara.org/repository/releases/
-
-
-
-
-
- local-first
-
-
- EOF
-
- - name: 构建并安装主POM(父模块)
- run: |
- # 主POM绝对路径
- MAIN_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/pom.xml"
- echo "主POM路径:$MAIN_POM_ABSOLUTE_PATH"
-
- if [ ! -f "$MAIN_POM_ABSOLUTE_PATH" ]; then
- echo "错误:主POM文件不存在于 $MAIN_POM_ABSOLUTE_PATH"
- exit 1
- fi
-
- # 使用绝对路径执行Maven命令,仅构建父模块(-N)
- "$MAVEN_HOME/bin/mvn" clean install -N -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"
-
- # 验证主POM是否安装成功
- echo "=== 验证主POM安装 ==="
- ls -la ~/.m2/repository/org/dromara/ruoyi-cloud-plus/
-
- # 第二步:构建通用模块(依赖主POM)
- build-common-modules:
- needs: build-parent-pom
runs-on: ubuntu
steps:
- name: 拉取代码仓库
uses: http://git.missmoc.top/mocheng/checkout@v4
- name: 配置环境变量(绝对路径)
+ run: |
+ export JAVA_HOME="/java17/java17"
+ export MAVEN_HOME="/maven/apache-maven-3.9.11"
+
+ if [ ! -f "$JAVA_HOME/bin/java" ]; then
+ echo "错误:JDK可执行文件不存在于 $JAVA_HOME/bin/java"
+ exit 1
+ fi
+ if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
+ echo "错误:Maven可执行文件不存在于 $MAVEN_HOME/bin/mvn"
+ exit 1
+ fi
+
+ 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_HOME/bin/java" -version
+ "$MAVEN_HOME/bin/mvn" -v
+
+ - name: 配置Maven仓库
+ run: |
+ mkdir -p ~/.m2
+ cat > ~/.m2/settings.xml << EOF
+
+
+ $HOME/.m2/repository
+
+
+ multi-repo
+
+
+ local-repo
+ file://$HOME/.m2/repository
+
+
+ dromara-releases
+ https://maven.dromara.org/repository/releases/
+
+
+ aliyun-public
+ https://maven.aliyun.com/repository/public
+
+
+
+
+
+ multi-repo
+
+
+ EOF
+
+ - name: 手动安装必要BOM依赖
+ run: |
+ mkdir -p /tmp/maven-dependencies
+
+ declare -A BOM_ARTIFACTS=(
+ ["ruoyi-common-alibaba-bom"]="2.4.0"
+ ["ruoyi-common-bom"]="2.4.0"
+ ["ruoyi-api-bom"]="2.4.0"
+ )
+
+ for artifact in "${!BOM_ARTIFACTS[@]}"; do
+ version=${BOM_ARTIFACTS[$artifact]}
+ group_id="org.dromara"
+ local_path="$HOME/.m2/repository/${group_id//.//}/$artifact/$version/$artifact-$version.pom"
+
+ if [ -f "$local_path" ]; then
+ echo "本地已存在 $artifact:$version,跳过"
+ continue
+ fi
+
+ repos=(
+ "https://maven.dromara.org/repository/releases"
+ "https://maven.aliyun.com/repository/public"
+ )
+
+ downloaded=false
+ for repo in "${repos[@]}"; do
+ url="$repo/${group_id//.//}/$artifact/$version/$artifact-$version.pom"
+ if wget -q -O "/tmp/maven-dependencies/$artifact-$version.pom" "$url"; then
+ "$MAVEN_HOME/bin/mvn" install:install-file \
+ -Dfile="/tmp/maven-dependencies/$artifact-$version.pom" \
+ -DgroupId="$group_id" \
+ -DartifactId="$artifact" \
+ -Dversion="$version" \
+ -Dpackaging=pom
+ downloaded=true
+ break
+ fi
+ done
+ done
+
+ - name: 构建主POM(仅本地安装,不上传)
+ run: |
+ MAIN_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/pom.xml"
+ if [ ! -f "$MAIN_POM_ABSOLUTE_PATH" ]; then
+ echo "错误:主POM文件不存在"
+ exit 1
+ fi
+
+ retries=3
+ count=0
+ until "$MAVEN_HOME/bin/mvn" clean install -N -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
+ count=$((count + 1))
+ if [ $count -ge $retries ]; then
+ echo "错误:主POM构建失败"
+ exit 1
+ fi
+ sleep 10
+ done
+
+ build-common-modules:
+ needs: build-parent-pom
+ runs-on: ubuntu
+ steps:
+ - name: 拉取代码仓库
+ uses: http://git.missmoc.top/mocheng/checkout@v4
+
+ - name: 配置环境变量
run: |
export JAVA_HOME="/java17/java17"
export MAVEN_HOME="/maven/apache-maven-3.9.11"
@@ -106,9 +141,8 @@ jobs:
echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- - name: 构建并安装通用模块
+ - name: 构建通用模块(仅本地使用,不上传)
run: |
- # 通用模块列表(根据实际项目结构调整)
COMMON_MODULES=(
"ruoyi-common"
"ruoyi-api"
@@ -118,25 +152,24 @@ jobs:
)
for module in "${COMMON_MODULES[@]}"; do
- # 模块POM的绝对路径
MODULE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${module}/pom.xml"
- echo "=== 构建模块:$module ==="
- echo "POM路径:$MODULE_POM_ABSOLUTE_PATH"
-
if [ ! -f "$MODULE_POM_ABSOLUTE_PATH" ]; then
- echo "警告:模块 $module 的POM文件不存在,跳过"
+ echo "警告:模块 $module 不存在,跳过"
continue
fi
- # 使用Maven绝对路径执行命令
- "$MAVEN_HOME/bin/mvn" clean install -U -DskipTests -f "$MODULE_POM_ABSOLUTE_PATH"
-
- # 验证模块是否安装成功
- MODULE_GROUP_ID="org.dromara"
- ls -la ~/.m2/repository/"${MODULE_GROUP_ID//.//}"/"$module"/
+ retries=3
+ count=0
+ until "$MAVEN_HOME/bin/mvn" clean install -U -DskipTests -f "$MODULE_POM_ABSOLUTE_PATH"; do
+ count=$((count + 1))
+ if [ $count -ge $retries ]; then
+ echo "错误:模块 $module 构建失败"
+ exit 1
+ fi
+ sleep 10
+ done
done
- # 第三步:分服务构建镜像并上传(依赖通用模块)
build-and-push-services:
needs: build-common-modules
runs-on: ubuntu
@@ -161,7 +194,7 @@ jobs:
- name: 拉取代码仓库
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: 配置环境变量(绝对路径)
+ - name: 配置环境变量
run: |
export JAVA_HOME="/java17/java17"
export MAVEN_HOME="/maven/apache-maven-3.9.11"
@@ -170,25 +203,16 @@ jobs:
echo "MAVEN_HOME=$MAVEN_HOME" >> $GITHUB_ENV
echo "$MAVEN_HOME/bin" >> $GITHUB_PATH
- - name: 构建服务模块
+ - name: 构建服务模块(仅用于镜像构建,不上传JAR)
run: |
SERVICE_NAME="${{ matrix.service }}"
- # 服务POM的绝对路径
SERVICE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/pom.xml"
- echo "=== 构建服务:$SERVICE_NAME ==="
- echo "POM路径:$SERVICE_POM_ABSOLUTE_PATH"
-
if [ ! -f "$SERVICE_POM_ABSOLUTE_PATH" ]; then
echo "错误:服务 $SERVICE_NAME 的POM文件不存在"
exit 1
fi
- # 使用Maven绝对路径执行打包命令
"$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$SERVICE_POM_ABSOLUTE_PATH"
-
- # 验证构建产物
- echo "=== 构建产物 ==="
- ls -la "${GITHUB_WORKSPACE}/${SERVICE_NAME}/target/"
- name: 配置Docker Buildx
uses: http://git.missmoc.top/mocheng/setup-buildx-action@v3
@@ -208,13 +232,11 @@ jobs:
if [ -f "$DOCKERFILE_ABSOLUTE_PATH" ]; then
echo "dockerfile_path=$DOCKERFILE_ABSOLUTE_PATH" >> $GITHUB_OUTPUT
- echo "使用Dockerfile:$DOCKERFILE_ABSOLUTE_PATH"
else
echo "dockerfile_path=${GITHUB_WORKSPACE}/Dockerfile" >> $GITHUB_OUTPUT
- echo "使用根目录Dockerfile:${GITHUB_WORKSPACE}/Dockerfile"
fi
- - name: 构建并推送Docker镜像
+ - name: 构建并推送Docker镜像(仅推送镜像,不上传JAR)
uses: http://git.missmoc.top/mocheng/build-push-action@v5
with:
context: "${GITHUB_WORKSPACE}"
From d7c4b2ba54588445a1079957939a51bdebc80e3b Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:27:48 +0800
Subject: [PATCH 28/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 5 -----
1 file changed, 5 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 0d2e7861..3382d22f 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -48,10 +48,6 @@ jobs:
local-repo
file://$HOME/.m2/repository
-
- dromara-releases
- https://maven.dromara.org/repository/releases/
-
aliyun-public
https://maven.aliyun.com/repository/public
@@ -86,7 +82,6 @@ jobs:
fi
repos=(
- "https://maven.dromara.org/repository/releases"
"https://maven.aliyun.com/repository/public"
)
From 8bbf5f0eca97d75b87f618cf6025bb9eaa0f76a9 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:30:54 +0800
Subject: [PATCH 29/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 42 +---------------------------------------
1 file changed, 1 insertion(+), 41 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 3382d22f..272bd88c 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -61,46 +61,6 @@ jobs:
EOF
- - name: 手动安装必要BOM依赖
- run: |
- mkdir -p /tmp/maven-dependencies
-
- declare -A BOM_ARTIFACTS=(
- ["ruoyi-common-alibaba-bom"]="2.4.0"
- ["ruoyi-common-bom"]="2.4.0"
- ["ruoyi-api-bom"]="2.4.0"
- )
-
- for artifact in "${!BOM_ARTIFACTS[@]}"; do
- version=${BOM_ARTIFACTS[$artifact]}
- group_id="org.dromara"
- local_path="$HOME/.m2/repository/${group_id//.//}/$artifact/$version/$artifact-$version.pom"
-
- if [ -f "$local_path" ]; then
- echo "本地已存在 $artifact:$version,跳过"
- continue
- fi
-
- repos=(
- "https://maven.aliyun.com/repository/public"
- )
-
- downloaded=false
- for repo in "${repos[@]}"; do
- url="$repo/${group_id//.//}/$artifact/$version/$artifact-$version.pom"
- if wget -q -O "/tmp/maven-dependencies/$artifact-$version.pom" "$url"; then
- "$MAVEN_HOME/bin/mvn" install:install-file \
- -Dfile="/tmp/maven-dependencies/$artifact-$version.pom" \
- -DgroupId="$group_id" \
- -DartifactId="$artifact" \
- -Dversion="$version" \
- -Dpackaging=pom
- downloaded=true
- break
- fi
- done
- done
-
- name: 构建主POM(仅本地安装,不上传)
run: |
MAIN_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/pom.xml"
@@ -111,7 +71,7 @@ jobs:
retries=3
count=0
- until "$MAVEN_HOME/bin/mvn" clean install -N -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
+ until "$MAVEN_HOME/bin/mvn" clean package install -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
count=$((count + 1))
if [ $count -ge $retries ]; then
echo "错误:主POM构建失败"
From cf473bcbc85d6ecc23c7318010e494987b58ab71 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:41:25 +0800
Subject: [PATCH 30/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 272bd88c..23deaf32 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -71,7 +71,7 @@ jobs:
retries=3
count=0
- until "$MAVEN_HOME/bin/mvn" clean package install -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
+ until "$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
count=$((count + 1))
if [ $count -ge $retries ]; then
echo "错误:主POM构建失败"
From 51c6dd2cc1b624856803d40d9d9df7954680156a Mon Sep 17 00:00:00 2001
From: mocheng <3057647414@qq.com>
Date: Thu, 14 Aug 2025 01:57:52 +0800
Subject: [PATCH 31/36] =?UTF-8?q?=E7=89=A9=E4=B8=9A=E6=A8=A1=E5=9D=97?=
=?UTF-8?q?=E6=89=93=E5=8C=85=E9=94=99=E8=AF=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ruoyi-modules/pom.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/ruoyi-modules/pom.xml b/ruoyi-modules/pom.xml
index 3e55175f..267aca5a 100644
--- a/ruoyi-modules/pom.xml
+++ b/ruoyi-modules/pom.xml
@@ -14,8 +14,8 @@
ruoyi-job
ruoyi-resource
ruoyi-workflow
- Property
- Sis
+
+
ruoyi-modules
From e52ee15f0f4fd21893ac8ae32bc20680f63e0030 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 02:19:06 +0800
Subject: [PATCH 32/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 168 ++++++++++-----------------------------
1 file changed, 40 insertions(+), 128 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 23deaf32..9de1eb6e 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,134 +1,72 @@
-run-name: ${{ gitea.actor }} 构建镜像并推送(不含JAR依赖上传)🚀
+run-name: ${{ gitea.actor }} 构建并推送服务镜像 🚀
on:
push:
- branches:
- - master
+ branches: [master]
jobs:
- build-parent-pom:
+ # 阶段1:通过主POM统一构建所有模块
+ build-all:
runs-on: ubuntu
steps:
- - name: 拉取代码仓库
+ - name: 拉取代码
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: 配置环境变量(绝对路径)
+ - name: 配置JDK和Maven
run: |
+ # 配置环境变量
export JAVA_HOME="/java17/java17"
export MAVEN_HOME="/maven/apache-maven-3.9.11"
- if [ ! -f "$JAVA_HOME/bin/java" ]; then
- echo "错误:JDK可执行文件不存在于 $JAVA_HOME/bin/java"
- exit 1
- fi
- if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
- echo "错误:Maven可执行文件不存在于 $MAVEN_HOME/bin/mvn"
- exit 1
- fi
+ # 验证环境
+ [ -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_HOME/bin/java" -version
- "$MAVEN_HOME/bin/mvn" -v
- name: 配置Maven仓库
run: |
mkdir -p ~/.m2
- cat > ~/.m2/settings.xml << EOF
+ cat > ~/.m2/settings.xml << 'EOF'
- $HOME/.m2/repository
+ ${user.home}/.m2/repository
- multi-repo
+ aliyun
- local-repo
- file://$HOME/.m2/repository
-
-
- aliyun-public
+ aliyun
https://maven.aliyun.com/repository/public
+ true
+ true
- multi-repo
+ aliyun
EOF
- - name: 构建主POM(仅本地安装,不上传)
+ - name: 主POM统一打包
run: |
- MAIN_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/pom.xml"
- if [ ! -f "$MAIN_POM_ABSOLUTE_PATH" ]; then
- echo "错误:主POM文件不存在"
- exit 1
- fi
+ # 从根目录构建所有模块
+ mvn clean package -U -DskipTests -f pom.xml
- retries=3
- count=0
- until "$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
- count=$((count + 1))
- if [ $count -ge $retries ]; then
- echo "错误:主POM构建失败"
- exit 1
- fi
- sleep 10
- done
+ # 查看构建产物
+ find . -name "*.jar" -path "*/target/*"
- build-common-modules:
- needs: build-parent-pom
- runs-on: ubuntu
- steps:
- - name: 拉取代码仓库
- uses: http://git.missmoc.top/mocheng/checkout@v4
-
- - name: 配置环境变量
- run: |
- export JAVA_HOME="/java17/java17"
- export MAVEN_HOME="/maven/apache-maven-3.9.11"
- 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
-
- - name: 构建通用模块(仅本地使用,不上传)
- run: |
- COMMON_MODULES=(
- "ruoyi-common"
- "ruoyi-api"
- "ruoyi-common-bom"
- "ruoyi-common-alibaba-bom"
- "ruoyi-api-bom"
- )
-
- for module in "${COMMON_MODULES[@]}"; do
- MODULE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${module}/pom.xml"
- if [ ! -f "$MODULE_POM_ABSOLUTE_PATH" ]; then
- echo "警告:模块 $module 不存在,跳过"
- continue
- fi
-
- retries=3
- count=0
- until "$MAVEN_HOME/bin/mvn" clean install -U -DskipTests -f "$MODULE_POM_ABSOLUTE_PATH"; do
- count=$((count + 1))
- if [ $count -ge $retries ]; then
- echo "错误:模块 $module 构建失败"
- exit 1
- fi
- sleep 10
- done
- done
-
- build-and-push-services:
- needs: build-common-modules
+ # 阶段2:为每个服务构建并推送镜像
+ build-images:
+ needs: build-all
runs-on: ubuntu
strategy:
+ fail-fast: false
matrix:
service:
- ruoyi-auth
@@ -146,58 +84,32 @@ jobs:
- ruoyi-sentinel-dashboard
- ruoyi-snailjob-server
steps:
- - name: 拉取代码仓库
+ - name: 拉取代码
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: 配置环境变量
- run: |
- export JAVA_HOME="/java17/java17"
- export MAVEN_HOME="/maven/apache-maven-3.9.11"
- 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
-
- - name: 构建服务模块(仅用于镜像构建,不上传JAR)
- run: |
- SERVICE_NAME="${{ matrix.service }}"
- SERVICE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/pom.xml"
- if [ ! -f "$SERVICE_POM_ABSOLUTE_PATH" ]; then
- echo "错误:服务 $SERVICE_NAME 的POM文件不存在"
- exit 1
- fi
-
- "$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$SERVICE_POM_ABSOLUTE_PATH"
-
- - name: 配置Docker Buildx
+ - name: 配置Docker构建环境
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: 确定Dockerfile路径
- id: dockerfile-path
- run: |
- SERVICE_NAME="${{ matrix.service }}"
- DOCKERFILE_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/Dockerfile"
-
- if [ -f "$DOCKERFILE_ABSOLUTE_PATH" ]; then
- echo "dockerfile_path=$DOCKERFILE_ABSOLUTE_PATH" >> $GITHUB_OUTPUT
- else
- echo "dockerfile_path=${GITHUB_WORKSPACE}/Dockerfile" >> $GITHUB_OUTPUT
- fi
-
- - name: 构建并推送Docker镜像(仅推送镜像,不上传JAR)
+ - name: 构建并推送镜像
uses: http://git.missmoc.top/mocheng/build-push-action@v5
with:
- context: "${GITHUB_WORKSPACE}"
- file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
- tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
+ context: .
+ file: ./${{ matrix.service }}/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
+ # 仅当Dockerfile或相关目录变化时构建
+ paths:
+ - ${{ matrix.service }}/**
+ - pom.xml
\ No newline at end of file
From 573bd4cb8cd9fa6f0208b8f840dbaa39dc92ade3 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 02:24:24 +0800
Subject: [PATCH 33/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 9de1eb6e..910e1f5b 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -108,8 +108,7 @@ jobs:
push: true
cache-from: type=gha
cache-to: type=gha,mode=max
- # 仅当Dockerfile或相关目录变化时构建
paths:
- - ${{ matrix.service }}/**
+ - ${{ matrix.service }}/**/*
- pom.xml
\ No newline at end of file
From 269c105282bdfe9f9c7d120ad781730c313549bc Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 02:26:30 +0800
Subject: [PATCH 34/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 61 ++++++++++++++++++++++------------------
1 file changed, 33 insertions(+), 28 deletions(-)
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
From afc0e69319863b17f30a3786d6b79668429c7e45 Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 02:36:55 +0800
Subject: [PATCH 35/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 156 +++++++++++++++++++--------------------
1 file changed, 74 insertions(+), 82 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index 1ce12579..fb64956e 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,80 +1,13 @@
-run-name: ${{ gitea.actor }} 构建并推送服务镜像 🚀
+run-name: ${{ gitea.actor }} 打包并构建镜像 🚀
on:
push:
- branches: [master]
+ branches:
+ - master
jobs:
- # 阶段1:通过主POM统一构建所有模块
- build-all:
- runs-on: ubuntu
- steps:
- - name: 拉取代码仓库
- uses: http://git.missmoc.top/mocheng/checkout@v4
-
- - 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; }
-
- # 导出环境变量到工作流
- 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仓库(阿里云)
- run: |
- # 创建Maven配置目录
- mkdir -p ~/.m2
-
- # 写入settings.xml配置
- cat > ~/.m2/settings.xml << 'EOF'
-
-
- ${user.home}/.m2/repository
-
-
- aliyun
-
-
- aliyun-public
- https://maven.aliyun.com/repository/public
- true
- true
-
-
-
-
-
- aliyun
-
-
- EOF
-
- - name: 主POM统一打包所有模块
- run: |
- # 从根目录执行打包命令
- mvn clean package -U -DskipTests -f pom.xml
-
- # 验证打包结果
- echo "=== 构建产物列表 ==="
- find . -name "*.jar" -path "*/target/*"
-
- # 阶段2:为每个服务模块构建并推送Docker镜像
- build-and-push-images:
- needs: build-all
+ build-and-push:
runs-on: ubuntu
strategy:
- fail-fast: false # 单个服务失败不影响其他服务构建
matrix:
service:
- ruoyi-auth
@@ -95,25 +28,84 @@ jobs:
- name: 拉取代码仓库
uses: http://git.missmoc.top/mocheng/checkout@v4
- - name: 配置Docker Buildx构建环境
+ - name: 配置环境变量
+ run: |
+ # 配置JDK和Maven绝对路径
+ export JAVA_HOME="/java17/java17"
+ export MAVEN_HOME="/maven/apache-maven-3.9.11"
+
+ # 验证路径有效性
+ if [ ! -f "$JAVA_HOME/bin/java" ]; then
+ echo "错误:JDK不存在于 $JAVA_HOME"
+ exit 1
+ fi
+ if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
+ echo "错误:Maven不存在于 $MAVEN_HOME"
+ exit 1
+ fi
+
+ # 配置环境变量
+ 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仓库(仅华为镜像)
+ run: |
+ mkdir -p ~/.m2
+ cat > ~/.m2/settings.xml << EOF
+
+
+ $HOME/.m2/repository
+
+
+ huawei
+ https://mirrors.huaweicloud.com/repository/maven/
+ *
+
+
+
+ EOF
+
+ - name: 执行mvn clean package打包
+ run: |
+ SERVICE_NAME="${{ matrix.service }}"
+ POM_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/pom.xml"
+
+ # 检查POM文件是否存在
+ if [ ! -f "$POM_PATH" ]; then
+ echo "错误:$SERVICE_NAME 的POM文件不存在于 $POM_PATH"
+ exit 1
+ fi
+
+ # 直接执行打包命令
+ mvn clean package -U -DskipTests -f "$POM_PATH"
+
+ # 验证打包结果
+ echo "=== 打包产物 ==="
+ ls -la "${GITHUB_WORKSPACE}/${SERVICE_NAME}/target/"
+
+ - 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: 构建并推送Docker镜像
uses: http://git.missmoc.top/mocheng/build-push-action@v5
with:
- 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 # 使用GitHub Actions缓存
- cache-to: type=gha,mode=max # 最大化缓存内容
+ context: "${GITHUB_WORKSPACE}"
+ file: "${{ matrix.service }}/Dockerfile"
+ tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
+ push: true
+ cache-from: type=gha
+ cache-to: type=gha,mode=max
\ No newline at end of file
From edf514b25d98b4eede2bb0c27fe7e0d3222e8cef Mon Sep 17 00:00:00 2001
From: bichangxiong <3057647414@qq.com>
Date: Thu, 14 Aug 2025 02:40:47 +0800
Subject: [PATCH 36/36] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20.gitea/workflows/dev?=
=?UTF-8?q?.yml?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.gitea/workflows/dev.yml | 194 +++++++++++++++++++++++++++++----------
1 file changed, 143 insertions(+), 51 deletions(-)
diff --git a/.gitea/workflows/dev.yml b/.gitea/workflows/dev.yml
index fb64956e..13c24388 100644
--- a/.gitea/workflows/dev.yml
+++ b/.gitea/workflows/dev.yml
@@ -1,11 +1,132 @@
-run-name: ${{ gitea.actor }} 打包并构建镜像 🚀
+run-name: ${{ gitea.actor }} 构建镜像并推送(不含JAR依赖上传)🚀
on:
push:
branches:
- master
jobs:
- build-and-push:
+ build-parent-pom:
+ runs-on: ubuntu
+ steps:
+ - name: 拉取代码仓库
+ uses: http://git.missmoc.top/mocheng/checkout@v4
+
+ - name: 配置环境变量(绝对路径)
+ run: |
+ export JAVA_HOME="/java17/java17"
+ export MAVEN_HOME="/maven/apache-maven-3.9.11"
+
+ if [ ! -f "$JAVA_HOME/bin/java" ]; then
+ echo "错误:JDK可执行文件不存在于 $JAVA_HOME/bin/java"
+ exit 1
+ fi
+ if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
+ echo "错误:Maven可执行文件不存在于 $MAVEN_HOME/bin/mvn"
+ exit 1
+ fi
+
+ 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_HOME/bin/java" -version
+ "$MAVEN_HOME/bin/mvn" -v
+
+ - name: 配置Maven仓库
+ run: |
+ mkdir -p ~/.m2
+ cat > ~/.m2/settings.xml << EOF
+
+
+ $HOME/.m2/repository
+
+
+ multi-repo
+
+
+ local-repo
+ file://$HOME/.m2/repository
+
+
+ aliyun-public
+ https://maven.aliyun.com/repository/public
+
+
+
+
+
+ multi-repo
+
+
+ EOF
+
+ - name: 构建主POM(仅本地安装,不上传)
+ run: |
+ MAIN_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/pom.xml"
+ if [ ! -f "$MAIN_POM_ABSOLUTE_PATH" ]; then
+ echo "错误:主POM文件不存在"
+ exit 1
+ fi
+
+ retries=3
+ count=0
+ until "$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$MAIN_POM_ABSOLUTE_PATH"; do
+ count=$((count + 1))
+ if [ $count -ge $retries ]; then
+ echo "错误:主POM构建失败"
+ exit 1
+ fi
+ sleep 10
+ done
+
+ build-common-modules:
+ needs: build-parent-pom
+ runs-on: ubuntu
+ steps:
+ - name: 拉取代码仓库
+ uses: http://git.missmoc.top/mocheng/checkout@v4
+
+ - name: 配置环境变量
+ run: |
+ export JAVA_HOME="/java17/java17"
+ export MAVEN_HOME="/maven/apache-maven-3.9.11"
+ 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
+
+ - name: 构建通用模块(仅本地使用,不上传)
+ run: |
+ COMMON_MODULES=(
+ "ruoyi-common"
+ "ruoyi-api"
+ "ruoyi-common-bom"
+ "ruoyi-common-alibaba-bom"
+ "ruoyi-api-bom"
+ )
+
+ for module in "${COMMON_MODULES[@]}"; do
+ MODULE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${module}/pom.xml"
+ if [ ! -f "$MODULE_POM_ABSOLUTE_PATH" ]; then
+ echo "警告:模块 $module 不存在,跳过"
+ continue
+ fi
+
+ retries=3
+ count=0
+ until "$MAVEN_HOME/bin/mvn" clean install -U -DskipTests -f "$MODULE_POM_ABSOLUTE_PATH"; do
+ count=$((count + 1))
+ if [ $count -ge $retries ]; then
+ echo "错误:模块 $module 构建失败"
+ exit 1
+ fi
+ sleep 10
+ done
+ done
+
+ build-and-push-services:
+ needs: build-common-modules
runs-on: ubuntu
strategy:
matrix:
@@ -30,80 +151,51 @@ jobs:
- name: 配置环境变量
run: |
- # 配置JDK和Maven绝对路径
export JAVA_HOME="/java17/java17"
export MAVEN_HOME="/maven/apache-maven-3.9.11"
-
- # 验证路径有效性
- if [ ! -f "$JAVA_HOME/bin/java" ]; then
- echo "错误:JDK不存在于 $JAVA_HOME"
- exit 1
- fi
- if [ ! -f "$MAVEN_HOME/bin/mvn" ]; then
- echo "错误:Maven不存在于 $MAVEN_HOME"
- exit 1
- fi
-
- # 配置环境变量
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仓库(仅华为镜像)
- run: |
- mkdir -p ~/.m2
- cat > ~/.m2/settings.xml << EOF
-
-
- $HOME/.m2/repository
-
-
- huawei
- https://mirrors.huaweicloud.com/repository/maven/
- *
-
-
-
- EOF
-
- - name: 执行mvn clean package打包
+ - name: 构建服务模块
run: |
SERVICE_NAME="${{ matrix.service }}"
- POM_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/pom.xml"
-
- # 检查POM文件是否存在
- if [ ! -f "$POM_PATH" ]; then
- echo "错误:$SERVICE_NAME 的POM文件不存在于 $POM_PATH"
+ SERVICE_POM_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/pom.xml"
+ if [ ! -f "$SERVICE_POM_ABSOLUTE_PATH" ]; then
+ echo "错误:服务 $SERVICE_NAME 的POM文件不存在"
exit 1
fi
- # 直接执行打包命令
- mvn clean package -U -DskipTests -f "$POM_PATH"
-
- # 验证打包结果
- echo "=== 打包产物 ==="
- ls -la "${GITHUB_WORKSPACE}/${SERVICE_NAME}/target/"
+ "$MAVEN_HOME/bin/mvn" clean package -U -DskipTests -f "$SERVICE_POM_ABSOLUTE_PATH"
- 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: 构建并推送Docker镜像
+ - name: 确定Dockerfile路径
+ id: dockerfile-path
+ run: |
+ SERVICE_NAME="${{ matrix.service }}"
+ DOCKERFILE_ABSOLUTE_PATH="${GITHUB_WORKSPACE}/${SERVICE_NAME}/Dockerfile"
+
+ if [ -f "$DOCKERFILE_ABSOLUTE_PATH" ]; then
+ echo "dockerfile_path=$DOCKERFILE_ABSOLUTE_PATH" >> $GITHUB_OUTPUT
+ else
+ echo "dockerfile_path=${GITHUB_WORKSPACE}/Dockerfile" >> $GITHUB_OUTPUT
+ fi
+
+ - name: 构建并推送Docker镜像(仅推送镜像,不上传JAR)
uses: http://git.missmoc.top/mocheng/build-push-action@v5
with:
context: "${GITHUB_WORKSPACE}"
- file: "${{ matrix.service }}/Dockerfile"
+ file: ${{ steps.dockerfile-path.outputs.dockerfile_path }}
tags: ${{ secrets.REGISTRY_URL }}/by2025/${{ matrix.service }}:${{ github.sha }}
push: true
cache-from: type=gha