Jenkins的简单使用

本文探讨了jenkins 2.x中pipeline的引入,如何通过代码驱动的构建流程来优化持续集成,减少人为操作错误,并详细介绍了pipeline的结构,包括agent配置、阶段划分(如Build、deploy、restart、AutoTest和SonarAnalysis)以及post阶段的自定义操作。


pipeline

jenkins1.x主要是实现的持续集成过程,集成各个插件,但是终究需要人为手工的操作,如果job太复杂,人为容易出错。于是jenkins2.x开始流行pipeline的写法,以代码的方式来进行job的构建。

pipeline {
    agent any
    stages {       
        stage('Build') {
            steps {
                echo 'Building'
                sh 'cd /xxx;mvn clean  install'
            }
        }
        stage('deploy'){
            steps{
            		 echo 'deploy'
            		 sh 'cd /xxxx;sh deploy.sh'
            }
        }
        stage('restart'){
            steps{
            		 echo 'restart'
            		 sh 'cd /xxx/;sh restart.sh'
            }
        }
         stage('AutoTest'){
            steps{
            		 echo 'AutoTest'
            		 sh '/usr/bin/curl -X post http://remote_user:11903594f9e560e7b4441d0b255029b0bd@1x.xx.xx:8070/jenkins/view/....'
            }
        }
        stage('SonarAnalysis') {
            steps {
                echo 'SonarAnalysis'
                sh 'cd /xx;nohup sh sonar.sh &'
            }
        }  

      
    }
        post {
        always {
          emailext (
            body: '${DEFAULT_CONTENT}', from: '', replyTo: '', subject:'${DEFAULT_SUBJECT}', to: '${DEFAULT_RECIPIENTS}'
                    )
        }
    }
    
}

agent: 在任何可用的机器上执行pipeline
stage:表示这个Pipeline的某一个执行阶段
steps: 包含一个或者多个在stage块中执行的step序列
post:可以根据pipeline的状态来执行一些操作

 

问题

1.Waiting for next available executor 正在等待下一个可用的执行器

原因:节点同时执行多个任务,没有执行器指定当前流水线任务。

解决: Jenkins > 系统管理 > 节点管理 ,左下角找到自己任务的节点,可以看到有很多任务正在执行,可以点击红叉停掉。

增加任务执行器数量:

1.找到页面: Jenkins > 系统管理 > 管理节点 ,
2.找到运行 case 的节点所在行,点击最右边 x 配置按钮,跳转进入节点配置页面,
3.看 “# of executors”选项的配置值为多少? Jenkins 默认是1, 因此如果在该台机器上,你已经有任务在运行了,那么构建第二个任务,就会出现 Wait for next available executor.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值