123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- // 所有脚本命令包含在pipeline{}中
- pipeline {
- // 指定任务在哪个节点执行(Jenkins支持分布式)
- agent any
- // 配置全局环境,指定变量名=变量值信息
- // environment{
- // host = '172.17.1.22'
- // }
- triggers {
- GenericTrigger(
- genericVariables: [
- [key: 'ref', value: '$.ref']
- ],
- causeString: 'Triggered on $ref',
- token: 'android-cloud-h5',
- tokenCredentialId: '',
- silentResponse: false,
- printPostContent: true,
- printContributedVariables: true,
- regexpFilterExpression: 'refs/heads/' + env.BRANCH_NAME,
- regexpFilterText: '$ref'
- )
- }
- // 存放所有任务的合集
- stages {
- // 实现任务的具体流程
- stage('初始化构建环境') {
- steps {
- // echo 'env.BRANCH_NAME: ' + env.BRANCH_NAME
- // echo 'env.BUILD_NUMBER: ' + env.BUILD_NUMBER
- // echo 'env.BUILD_ID: ' + env.BUILD_ID
- // echo 'env.BUILD_DISPLAY_NAME: ' + env.BUILD_DISPLAY_NAME
- // echo 'env.JOB_NAME: ' + env.JOB_NAME
- // echo 'env.JOB_BASE_NAME: ' + env.JOB_BASE_NAME
- // echo 'env.BUILD_TAG: ' + env.BUILD_TAG
- nodejs('v16') {
- sh '''
- node -v
- npm -v
- npm install
- '''
- }
- }
- }
- stage('构建项目') {
- steps {
- script {
- if ( env.TAG_NAME ) {
- nodejs('v16') {
- sh 'npm run build:prod'
- }
- } else if ( env.BRANCH_NAME == 'master' ) {
- nodejs('v16') {
- sh 'npm run build:prod'
- }
- } else if ( env.BRANCH_NAME == 'uat' ) {
- nodejs('v16') {
- sh 'npm run build:uat'
- }
- } else {
- nodejs('v16') {
- sh 'npm run build:test'
- }
- }
- }
- }
- }
- stage('构建docker镜像') {
- when {
- anyOf {
- branch 'master'
- branch 'uat'
- branch 'develop'
- branch 'feature/jenkinsfile'
- }
- }
- environment {
- BUILD_DOCKER_JOB = 'cloud_build_docker_nginx_powerful_test'
- }
- steps {
- // echo '开始构建docker镜像'
- script {
- if ( env.BRANCH_NAME == 'master' ) {
- BUILD_DOCKER_JOB = 'cloud_build_docker_nginx_prod'
- } else if ( env.BRANCH_NAME == 'uat' ) {
- BUILD_DOCKER_JOB = 'cloud_build_docker_nginx_pre'
- } else {
- BUILD_DOCKER_JOB = 'cloud_build_docker_nginx_powerful_test'
- }
- }
- build job: BUILD_DOCKER_JOB, parameters: [string(name: 'version', value: env.BUILD_TAG), extendedChoice(name: 'service', value: 'manage_H5')]
- }
- }
- }
- }
|