Archived
forked from admin/userbase
ci: mavenbuild join infra-infra-net + mirror HTTP repo to nexus:8081 maven-public (bypass unreachable Caddy path); clear stale yh.platform cache at correct path /root/.m2/repository/ — fixes serverName crash from 08-05 stale yh-auth
This commit is contained in:
+10
-9
@@ -57,19 +57,20 @@ jobs:
|
|||||||
# 而 act 工作区是宿主上的 docker volume,容器内 $PWD 对宿主不可见,
|
# 而 act 工作区是宿主上的 docker volume,容器内 $PWD 对宿主不可见,
|
||||||
# 直接 -v $PWD:/build 会绑成空目录导致找不到 pom.xml。
|
# 直接 -v $PWD:/build 会绑成空目录导致找不到 pom.xml。
|
||||||
# 故改为:起 maven 容器 -> docker cp 源码入容器 -> exec 构建 -> cp 产物回工作区。
|
# 故改为:起 maven 容器 -> docker cp 源码入容器 -> exec 构建 -> cp 产物回工作区。
|
||||||
# nexus.yunhaixingtong.com 仅在用户本机 hosts 指向 160 的 nexus 容器,
|
# mavenbuild 加入 infra-infra-net,用容器名 nexus 直连 Nexus(8081 maven-public)。
|
||||||
# 160 上该域名不可解析,故在 maven 容器内用 --add-host 映射到宿主(Caddy:80),
|
# 之前用 --add-host=nexus.yunhaixingtong.com:host-gateway 经 Caddy:80 反代,但该路径在
|
||||||
# 由 Caddy 反代到 nexus:8081 的 maven-public(匿名可读,已验证 200)。
|
# CI 容器内不可达,maven 回退到 /opt/docker/ubs-m2 里 08-05 的旧 yh-auth 缓存(缺
|
||||||
# 等真实域名就绪、公网可解析后,删除下面 --add-host 这一行即可。
|
# CasSsoAutoConfiguration),镜像启动报 serverName 崩溃。现改用 settings.xml mirror 把
|
||||||
|
# pom 的 HTTP 仓库重定向到 http://nexus:8081/repository/maven-public/(已验证 -7 可达)。
|
||||||
docker run -d --name mavenbuild \
|
docker run -d --name mavenbuild \
|
||||||
--add-host=nexus.yunhaixingtong.com:host-gateway \
|
--network infra-infra-net \
|
||||||
-v /opt/docker/ubs-m2:/root/.m2 \
|
-v /opt/docker/ubs-m2:/root/.m2 \
|
||||||
-w /build maven:3.6.3-jdk-8 sleep 3600
|
-w /build maven:3.6.3-jdk-8 sleep 3600
|
||||||
docker cp "${PWD}/." mavenbuild:/build/
|
docker cp "${PWD}/." mavenbuild:/build/
|
||||||
# 强制清掉宿主 m2 中已缓存的 yh.platform 全部 SNAPSHOT(mavenbuild 的 /root/.m2
|
# 写 settings.xml:HTTP 仓库 mirror 到 nexus:8081 maven-public(infra-infra-net 内容器名直连)
|
||||||
# 即宿主 /opt/docker/ubs-m2,通过 docker.sock 作用于宿主),确保本次重新拉取用户刚
|
docker exec mavenbuild sh -c "echo '<settings><mirrors><mirror><id>nexus-direct</id><mirrorOf>external:http:*</mirrorOf><url>http://nexus:8081/repository/maven-public/</url></mirror></mirrors></settings>' > /root/.m2/settings.xml"
|
||||||
# re-deploy 的最新 yh-auth(含 CasSsoAutoConfiguration),避免解析到旧的 SNAPSHOT 构建。
|
# 清掉宿主 m2 真实缓存路径(/root/.m2/repository/)下的旧 yh.platform SNAPSHOT
|
||||||
docker exec mavenbuild rm -rf /root/.m2/com/yunhai/platform
|
docker exec mavenbuild rm -rf /root/.m2/repository/com/yunhai/platform
|
||||||
docker exec mavenbuild sh -c 'cd /build/service && mvn -U -B -DskipTests clean package'
|
docker exec mavenbuild sh -c 'cd /build/service && mvn -U -B -DskipTests clean package'
|
||||||
mkdir -p "${PWD}/service/target"
|
mkdir -p "${PWD}/service/target"
|
||||||
docker cp mavenbuild:/build/service/target/userbase.jar "${PWD}/service/target/userbase.jar"
|
docker cp mavenbuild:/build/service/target/userbase.jar "${PWD}/service/target/userbase.jar"
|
||||||
|
|||||||
Reference in New Issue
Block a user