ci: derive web target from Jenkins job
这个提交包含在:
父节点
d44016276f
当前提交
545b860bc4
14
Jenkinsfile
vendored
14
Jenkinsfile
vendored
@ -40,7 +40,17 @@ pipeline {
|
|||||||
stage('Resolve Build Plan') {
|
stage('Resolve Build Plan') {
|
||||||
steps {
|
steps {
|
||||||
script {
|
script {
|
||||||
switch (params.APP) {
|
// 两个独立 Jenkins job 共用一份流水线,job 名是部署目标的权威来源;
|
||||||
|
// 只有通用/手工 job 才读取 APP 参数,避免 ops job 首次加载参数时误发 tenant。
|
||||||
|
def jobName = env.JOB_NAME.tokenize('/').last()
|
||||||
|
def resolvedApp = jobName == 'xuqmgroup-tenant-web'
|
||||||
|
? 'tenant-platform'
|
||||||
|
: jobName == 'xuqmgroup-ops-web'
|
||||||
|
? 'ops-platform'
|
||||||
|
: params.APP
|
||||||
|
echo "Job: ${env.JOB_NAME} → APP=${resolvedApp}"
|
||||||
|
|
||||||
|
switch (resolvedApp) {
|
||||||
case 'tenant-platform':
|
case 'tenant-platform':
|
||||||
env.IMAGE_NAME = 'tenant-web'
|
env.IMAGE_NAME = 'tenant-web'
|
||||||
env.DOCKERFILE = 'Dockerfile.tenant'
|
env.DOCKERFILE = 'Dockerfile.tenant'
|
||||||
@ -56,7 +66,7 @@ pipeline {
|
|||||||
env.BUILD_ARGS = '--build-arg OPS_APP_BASE=/ --build-arg OPS_API_BASE_URL=/api'
|
env.BUILD_ARGS = '--build-arg OPS_APP_BASE=/ --build-arg OPS_API_BASE_URL=/api'
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
error("Unsupported APP: ${params.APP}")
|
error("Unsupported APP: ${resolvedApp}")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 自动递增版本号(与后端 Jenkinsfile 保持一致)
|
// 自动递增版本号(与后端 Jenkinsfile 保持一致)
|
||||||
|
|||||||
@ -188,3 +188,5 @@ location /api/ {
|
|||||||
|
|
||||||
Windows Jenkins 节点通过 `jenkins-ssh-key` 私钥凭据生成构建期临时
|
Windows Jenkins 节点通过 `jenkins-ssh-key` 私钥凭据生成构建期临时
|
||||||
`git-ssh.cmd` 执行版本提交推送,作用域结束后立即删除该脚本。
|
`git-ssh.cmd` 执行版本提交推送,作用域结束后立即删除该脚本。
|
||||||
|
`xuqmgroup-tenant-web` 与 `xuqmgroup-ops-web` 共用 Jenkinsfile 时,以 job 名确定
|
||||||
|
构建目标;`APP` 参数仅供其它通用手工 job 使用,避免首次加载参数时误发另一应用。
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户