Jenkins pipeline POST 根据结果执行动作,如构建后发送邮件通知本次构建状态(pipeline示例)

 post { 
		always{
		//always部分 pipeline运行结果为任何状态都运行
            emailext body: 
            	'''<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
    					<table width="95%" cellpadding="0" cellspacing="0"  style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
        					<tr>
            					<td>
            						<b><font color="#0B610B">Build Summary</font></b>
            						<hr size="2" width="100%" align="center" />
            					</td>
        					</tr>
        					<tr>
            					<td>
                					<ul>
                    					<li>Project Name: ${PROJECT_NAME}</li>
                    					<li>Build Number: # ${BUILD_NUMBER}</li>
                    					<li>Build Cause: ${CAUSE}</li>
                    					<li>Build Status: ${BUILD_STATUS}</li>
                    					<li>Build Log: <a href="${BUILD_URL}console">${BUILD_URL}console</a></li>
                    					<li>Build Url: <a href="${BUILD_URL}">${BUILD_URL}</a></li>
                    					<li>Project Url: <a href="${PROJECT_URL}">${PROJECT_URL}</a></li>
                					</ul>
            					</td>
        					</tr>
    					</table>
				   </body>''', 
			subject: '[Jenkins Build Notification] ${PROJECT_NAME} - Build # ${BUILD_NUMBER} - ${BUILD_STATUS}!', 
			to: '[email protected];', 
			from: '[email protected]'
        }
		*/
        success {
            //当此Pipeline成功时打印消息
            echo 'success'
        }
        failure {
            //当此Pipeline失败时打印消息
            echo 'failure'
        }
		unstable {
            //当此Pipeline 为不稳定时打印消息
            echo 'unstable'		
		}
		aborted {
		    //当此Pipeline 终止时打印消息
            echo 'aborted'	
		}
		changed {
		    //当pipeline的状态与上一次build状态不同时打印消息
            echo 'changed'			
		}        
    }

猜你喜欢

转载自blog.csdn.net/qq_31977125/article/details/89176153
今日推荐