修复预览部署可选提交参数
修复 Checkout 阶段在严格 shell 下展开未定义 COMMIT_HASH 的失败 增加预览流水线参数归一化防回归门禁 同步预览部署参数合同与项目决策文档
This commit is contained in:
@@ -55,6 +55,31 @@ assertIncludes(
|
||||
"string(name: 'DEPLOYMENT_ID'",
|
||||
'Jenkins 必须暴露 DEPLOYMENT_ID。',
|
||||
);
|
||||
assertIncludes(
|
||||
jenkinsfile,
|
||||
'SOURCE_BRANCH="${SOURCE_BRANCH:-}"',
|
||||
'Jenkins 目标源码 checkout 必须兼容旧构建缺少 SOURCE_BRANCH 环境变量。',
|
||||
);
|
||||
assertIncludes(
|
||||
jenkinsfile,
|
||||
'COMMIT_HASH="${COMMIT_HASH:-}"',
|
||||
'Jenkins 目标源码 checkout 必须兼容可选 COMMIT_HASH 未物化。',
|
||||
);
|
||||
assertIncludes(
|
||||
jenkinsfile,
|
||||
'GIT_REMOTE_URL="${GIT_REMOTE_URL:-}"',
|
||||
'Jenkins 目标源码 checkout 必须在严格 shell 下安全读取固定 Git 地址。',
|
||||
);
|
||||
assertExcludes(
|
||||
jenkinsfile,
|
||||
'COMMIT_HASH="${COMMIT_HASH}"',
|
||||
'Jenkins 不得在 set -u 下严格展开可选 COMMIT_HASH。',
|
||||
);
|
||||
assertIncludes(
|
||||
jenkinsfile,
|
||||
`if [ "${'${ACTION}'}" = 'DEPLOY' ] && [ -z "${'${SOURCE_BRANCH}'}" ]; then`,
|
||||
'Jenkins DEPLOY 缺少 SOURCE_BRANCH 时必须失败关闭。',
|
||||
);
|
||||
assertIncludes(
|
||||
jenkinsfile,
|
||||
"archiveArtifacts artifacts: 'preview-result.json'",
|
||||
|
||||
Reference in New Issue
Block a user