当前位置:网站首页>Introduction to Jenkins (2) declarative pipeline
Introduction to Jenkins (2) declarative pipeline
2020-11-06 22:33:00 【Super_ Charles】
1. Jenkins Pipeline Basic concepts
Pipeline is a user-defined CD Pipeline model . The pipeline code defines the entire build process , It usually involves building , The phase of testing and delivering an application . Jenkins Pipeline
( Or for short "Pipeline") It's a set of plug-ins , Integrate the implementation and implementation of continuous delivery into Jenkins in . Continuous delivery Pipeline
Automation expresses such a process : Continuous delivery of software based on version control management . Jenkins Pipeline The definition of is usually written into a Jenkinsfile
In the text file , This file can be placed in the project's source code control library .
2.Jenkinsfile Basic grammar
pipeline { // Specific grammar ,pipeline The block defines all the work done in the pipeline
agent any // agent Assign an actuator to the entire pipeline ( On the node ) And the work area
stages { // All processes ( state ) The outer block of , There is only one
stage('Build') { // Every stage It's a process , Definition name
steps { // Step block , Internal contains specific operations
sh 'make' // sh operation , The words between the quotation marks will look like shell Direct execution
}
}
stage('Test'){
steps {
sh 'make check'
junit 'reports/**/*.xml' //junit Use matching definitions to test xml Unit test
}
}
stage('Deploy') {
steps {
sh 'make publish'
}
}
}
}
3. establish Hello World Assembly line
- Sign in
Jenkins
, A new task (New Item), choiceAssembly line
, Enter the project nameHello Pipeline
, determine . - Fill in the description , Check
Parametric build process (This project is parameterized)
. - Add parameter , choice
Character parameters (String parameter)
, And set the string parameter ( name , The default value is , describe ), So we are Jenkinsfile You can get this value in . - Slide down to
Assembly line
, Define choicePipeline script
, The script inputs the following , Then save .
pipeline {
agent any
environment { // environment variable
GREETING="Hello"
}
stages{
stage(' Say hello ') {
steps{
sh 'echo "$GREETING $TITLE"'
}
}
}
post { // After the build is completed, the post operation
aborted { // If the build breaks , execute
echo ' Build aborted !'
}
success { // Build successfully executed
echo ' Building a successful !'
}
failure { // Build failed execution
echo ' Build failed !'
}
}
}
-
Click on
Build with Parameters( Parametric construction )
, thenBegin to build
. -
Build the output interface :
-
Put the mouse on the green box under the greeting , The dot appears
logs
, You can see that the expected value is output . -
Find the... In the lower left corner
Build History( Building history )
The build version number of , If it is at present#1
, Click in , choiceConsole Output
View the detailed execution log .
# success Console Output
Started by user charles
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /home/jenkins/root/workspace/Hello Pipeline
[Pipeline] {
[Pipeline] withEnv
[Pipeline] {
[Pipeline] stage
[Pipeline] { ( Say hello )
[Pipeline] sh
+ echo 'Hello Jenkins Pipeline'
Hello Jenkins Pipeline
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Declarative: Post Actions)
[Pipeline] echo
Building a successful !
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // withEnv
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS
版权声明
本文为[Super_ Charles]所创,转载请带上原文链接,感谢
边栏推荐
- How to create an interactive kernel density chart
- 预留电池接口,内置充放电电路及电量计,迅为助力轻松搞定手持应用
- Summary of common SQL statements
- 条形码识别性能低,如何优化Dynamsoft Barcode Reader解码性能
- 条形码识别器Dynamsoft Barcode Reader v7.5全新上线!
- The isolation level of transaction and its problems
- LEADTOOLS如何检测,读取和写入条形码
- Configuration of AP hotspot on xunwei-imx6ull development board
- 南京标志设计,logo设计公司
- Interviewer: how about shardingsphere
猜你喜欢
What grammar is it? ]
STM32F030C6T6兼容替换MM32SPIN05PF
Practice of Xiaoxiong school development board: real equipment access of smart street lamp sandbox experiment
非易失性MRAM存储器应用于各级高速缓存
ImageMagick - 添加水印
Composition of MRAM cache
Google browser realizes video playback acceleration function
VARCHART XGantt入门教程
移动端像素适配方案
Git SSH bad permissions
随机推荐
VARCHART XGantt入门教程
Windows 10 蓝牙管理页面'添加蓝牙或其他设备'选项点击无响应的解决方案
2020 database technology conference helps technology upgrade
“非洲用户的付费意愿并不低”——专访四达时代研发总监张亮
Method of code refactoring -- Analysis of method refactoring
How to deploy Gantt chart quickly and correctly
20 XR projects roadshows, nearly 20 capital institutions attended! We sincerely invite you to attend the 2020 qcomm XR eco Partner Conference
Stm32f030k6t6 compatible replacement smart mm32f031k6t6
Web API interface design: swaggerui document / unified response format / unified exception handling / unified authority verification
Bluetooth broadcast chip for Shanghai giant micro
List to map (split the list according to the key, and the value of the same key is a list)
Unexpected element.. required element
[graffiti Internet of things footprints] panoramic introduction of graffiti cloud platform
How to start the hidden preferences in coda 2 on the terminal?
小熊派开发板实践:智慧路灯沙箱实验之真实设备接入
RFID fixed assets management system for fire equipment
如何才能快速正确的部署甘特图
Application layer software development Godfather teaches you how to refactor, senior programmers must professional skills
confd
Ora-02292: complete constraint violation (midbjdev2.sys_ C0020757) - subrecord found