From 996102e77db0d4e0daad69b9d0488be55799495e Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Sat, 22 Aug 2026 12:20:26 +0800 Subject: [PATCH] ci: use internal Java base image --- Jenkinsfile | 2 +- Jenkinsfile.service | 2 +- deploy/docker/Dockerfile | 2 +- scripts/test-environment-pipeline-contract.test.mjs | 13 +++++++++++++ 4 files changed, 16 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index f75cae1f8..4eca49b5a 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -76,7 +76,7 @@ pipeline { booleanParam(name: 'INITIALIZE_TEST_DATABASE', defaultValue: false, description: '仅 test:调度服务前幂等初始化测试数据库') booleanParam(name: 'SKIP_TESTS', defaultValue: false, description: '是否跳过测试;生产构建不建议勾选') string(name: 'IMAGE_REPOSITORY', defaultValue: '172.31.198.7:10082/java-project/baiyue-firstleg', description: '内网共享镜像仓库地址') - string(name: 'DOCKER_BASE_IMAGE', defaultValue: 'docker.m.daocloud.io/library/eclipse-temurin:17-jre-alpine', description: 'Java 17 基础镜像') + string(name: 'DOCKER_BASE_IMAGE', defaultValue: '172.31.198.7:10082/java-project/eclipse-temurin:17-jre-alpine', description: '内网 Java 17 基础镜像') string(name: 'DOWNSTREAM_JOB_PREFIX', defaultValue: downstreamJobPrefixForJob(env.JOB_BASE_NAME), description: '单服务 Jenkins Job 名称前缀;开发总控自动使用 dev 专属 Job') } diff --git a/Jenkinsfile.service b/Jenkinsfile.service index a38b7503b..e1088c7f5 100644 --- a/Jenkinsfile.service +++ b/Jenkinsfile.service @@ -40,7 +40,7 @@ pipeline { booleanParam(name: 'SKIP_TESTS', defaultValue: false, description: '是否跳过测试') choice(name: 'EVENT_BRIDGE_REGION', choices: ['CN', 'OVERSEAS'], description: '仅 event-bridge-service 使用;通常由总控 Job 传入') string(name: 'IMAGE_REPOSITORY', defaultValue: '172.31.198.7:10082/java-project/baiyue-firstleg', description: '内网共享镜像仓库基础路径,不包含服务名和标签') - string(name: 'DOCKER_BASE_IMAGE', defaultValue: 'docker.m.daocloud.io/library/eclipse-temurin:17-jre-alpine', description: 'Java 17 基础镜像') + string(name: 'DOCKER_BASE_IMAGE', defaultValue: '172.31.198.7:10082/java-project/eclipse-temurin:17-jre-alpine', description: '内网 Java 17 基础镜像') } environment { diff --git a/deploy/docker/Dockerfile b/deploy/docker/Dockerfile index 62542d939..4e7c1d79a 100644 --- a/deploy/docker/Dockerfile +++ b/deploy/docker/Dockerfile @@ -1,4 +1,4 @@ -ARG BASE_IMAGE=docker.m.daocloud.io/library/eclipse-temurin:17-jre-alpine +ARG BASE_IMAGE=172.31.198.7:10082/java-project/eclipse-temurin:17-jre-alpine FROM ${BASE_IMAGE} AS extractor WORKDIR /workspace diff --git a/scripts/test-environment-pipeline-contract.test.mjs b/scripts/test-environment-pipeline-contract.test.mjs index 1e074dfbd..71e027dee 100644 --- a/scripts/test-environment-pipeline-contract.test.mjs +++ b/scripts/test-environment-pipeline-contract.test.mjs @@ -10,6 +10,8 @@ const directDeployScript = (await readFile(new URL('../deploy/scripts/deploy-bui .replaceAll('\r\n', '\n') const ciMavenSettings = (await readFile(new URL('../deploy/maven/settings-ci.xml', import.meta.url), 'utf8')) .replaceAll('\r\n', '\n') +const serviceDockerfile = (await readFile(new URL('../deploy/docker/Dockerfile', import.meta.url), 'utf8')) + .replaceAll('\r\n', '\n') test('test deployments compile packages without rerunning the full unit test suite', () => { assert.match(pipeline, /params\.ENVIRONMENT == 'test' \|\| params\.SKIP_TESTS/) @@ -69,3 +71,14 @@ test('shared builders use a reachable public Maven mirror instead of the retired assert.match(ciMavenSettings, /https:\/\/maven\.aliyun\.com\/repository\/public/) assert.doesNotMatch(ciMavenSettings, /:18081/) }) + +test('Java service images use the internal registry base image by default', () => { + const internalBaseImage = '172.31.198.7:10082/java-project/eclipse-temurin:17-jre-alpine' + + assert.match(coordinatorPipeline, new RegExp(internalBaseImage.replaceAll('.', '\\.'))) + assert.match(pipeline, new RegExp(internalBaseImage.replaceAll('.', '\\.'))) + assert.match(serviceDockerfile, new RegExp(internalBaseImage.replaceAll('.', '\\.'))) + assert.doesNotMatch(coordinatorPipeline, /docker\.m\.daocloud\.io\/library\/eclipse-temurin/) + assert.doesNotMatch(pipeline, /docker\.m\.daocloud\.io\/library\/eclipse-temurin/) + assert.doesNotMatch(serviceDockerfile, /docker\.m\.daocloud\.io\/library\/eclipse-temurin/) +})