一个声明式Jenkins流水线完整小案例

pipeline {
    // 通过agent指定执行节点
    // agent any告诉Jenkins该流水线可以运行在任何一个定义好的代理节点上,而不关心它具有什么标签
    agent any
    
    environment {
        TIMEZONE = "eastern"
        TIMEZONE_DS = "${TIMEZONE}_daylight_savings"
    }

    // 指定全局配置当中的工具
    tools {
        maven 'maven3.6'
    }
    
    options {
        // 构建清理配置
        buildDiscarder(logRotator(numToKeepStr:'3'))
        // 如果流水线中一个阶段把流水线的状态置为了不稳定状态,系统就不会处理剩余的阶段
        skipStagesAfterUnstable()
        // 打印时间搓
        timestamps()
	}
	
	triggers {
        // 定期执行任务 从周一到周五上午8点开始执行流水线
	    cron('H 3 * * 1-5')
	}
    
    parameters {
        string(defaultValue:'Linux',description:'What platform?',name:'platform')
        string(defaultValue:'maintainer',description:'Enter user role:',name:'userRole')
    }
    
    stages {
        
        stage('echo') {
            steps {
                // 在流水线中使用参数
                echo "User's role = ${params.userRole}"
            }
        }	
        
        stage('Build1') {
            steps {
                // Get some code from a GitHub repository
                git credentialsId: '4738826e-3d34-41f8-8ee7-fb19743952f3', url: 'git@172.19.6.63:heng-tai/xams-bom.git'

                // Run Maven on a Unix agent.
                sh "mvn clean deploy"

                // To run Maven on a Windows agent, use
                // bat "mvn -Dmaven.test.failure.ignore=true clean package"
            }
        }
        
        
        stage('Build2') {
            steps {
                // Get some code from a GitHub repository
                git credentialsId: '4738826e-3d34-41f8-8ee7-fb19743952f3', url: 'git@172.19.6.63:heng-tai/xams-common-starter.git'

                // Run Maven on a Unix agent.
                sh "mvn clean deploy"

                // To run Maven on a Windows agent, use
                // bat "mvn -Dmaven.test.failure.ignore=true clean package"
            }
        }
    }
    
    // 构建后事件 这个post也可以用于每个stage内最后
    post{
        always {
            echo 'Build stage complete'
            // 发送邮件
            mail to: 'guanglai.zhou@xquant.com',subject:"Status of pipeline:${currentBuild.fullDisplayName}",body:"${env.BUILD_URL} has result ${currentBuild.result}"
        }
        success {
            echo 'Build successed'
        }
    }
}

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lang20150928

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值