Files
xsh-assistant-next/Jenkinsfile
Timothy Yin 8dea27d14a
Some checks are pending
aigc/aigc_next_multi/pipeline/pr-main Build queued...
aigc/aigc_next_multi/pipeline/head This commit looks good
ci: 更新 Jenkinsfile,添加部署参数和构建条件
2026-02-09 14:08:10 +08:00

75 lines
1.4 KiB
Groovy
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
pipeline {
agent any
options {
timestamps()
}
parameters {
choice(
name: 'XSH_DEPLOY_TARGET',
choices: ['main'],
description: 'main眩生花线上版本'
)
booleanParam(
name: 'XSH_DEPLOY_TO_PRODUCTION',
defaultValue: true,
description: '是否自动部署到线上环境(否则只构建产物)\n* 仅在 main 分支生效'
)
}
tools {
nodejs 'NodeJS 22.22'
}
libraries {
lib('xsh-common@main')
}
stages {
stage('Checkout') {
steps {
checkout scm
}
}
stage('Lint') {
steps {
sh '''
corepack enable
pnpm install --registry=https://registry.npmmirror.com
pnpm run lint
'''
}
}
stage('Build') {
when {
allOf {
expression { currentBuild.currentResult == 'SUCCESS' }
expression { env.TAG_NAME != null }
}
}
steps {
sh '''
corepack enable
pnpm install --registry=https://registry.npmmirror.com
pnpm run generate
'''
}
}
}
post {
always {
echo "Build finished: ${currentBuild.currentResult}"
}
success {
archiveArtifacts allowEmptyArchive: true, artifacts: 'dist/**', followSymlinks: true, onlyIfSuccessful: true
}
failure {
echo "Build failed"
}
}
}