美文网首页工程效率配置&Shell&打包等
jenkins-流水线语法和基本操作

jenkins-流水线语法和基本操作

作者: 阿当运维 | 来源:发表于2021-05-06 17:30 被阅读0次

    流水线的语法分为: 声明式和脚本式


    image.png image.png

    基本操作

    没有pipeline插件的先安装一下。创建一个流水线项目。
    创建完成后,点击配置,直接拉到最后


    image.png

    之前做过传统的项目配置。回忆一下流程:
    需求:
    参数化构建,选择对应分支。拉取gitlab代码,实现项目更新。
    我们思路还是以前的配置思路,点击那个流水线语法,点击第二项Directive Generator,
    选择parameters (上面的指令表写明了它就是负责提供参数化的),然后就像配置传统项目那样填写信息
    最终点击生成代码。


    image.png

    自动生成流水线代码


    image.png

    复制下来。回到之前的流水线页面
    不清楚语法结构的,可以先生成一个测试脚本语法


    image.png
    pipeline {
        agent any
    
        stages {
            stage('Hello') {
                steps {
                    echo 'Hello World'
                }
            }
        }
    }
    

    agent any ---控制执行的节点
    stage是任务块
    steps 是某一任务中的步骤块

    将刚才生成的git参数化构建(功能是获取git分支列表)的代码粘贴上面


    image.png

    再去代码片短器生成获取git代码的


    image.png
    生成出来的就是 “拉取代码”这个任务块的主要步骤,所以将其粘贴到响应的版块中
    pipeline {
        agent any
        
    
        parameters {
            gitParameter branch: '', branchFilter: 'origin/(.*)', defaultValue: 'master', description: '选择你要的分支', name: 'branch', quickFilterEnabled: false, selectedValue: 'NONE', sortMode: 'NONE', tagFilter: '*', type: 'PT_BRANCH'
        }
        
        stages {
            stage('拉取代码') {
                steps {
                    checkout([$class: 'GitSCM', branches: [[name: '*/$branch']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'd386c248-cf59-45c5-9731-b8f2d42411e9', url: 'http://192.168.1.112:85/webservice/devops_project.git']]])
                }
            }
            stage('打印-查看') {
                steps {   
                    sh label: '', script: 'ls'
                }
            }
        }
    }
    

    PS:默认分支名:最好不带origin/ ,直接写master,不然有时候直接用分支过滤,会不起作用。直接写master更省事。

    运行一次,第一次会失败,执行第二次就会获取到分支列表正常执行了。并且会发现,配置项目里jenkins已经根据流水线代码完成了传统的参数化配置界面。


    image.png

    点击Log可以查看个步骤的执行过程与结果。


    image.png

    if判断

    流水线脚本中还支持条件判断。这要用到开头的指令清单中提到 script 关键字,如


    image.png

    结果:


    image.png

    将脚本文件放在git项目仓库中

    一般来讲,最好是测试没问题的流水线脚本跑通以后,确认无误。将其复制下来,在git仓库中,新建Jenkinsfile 空文件,粘贴上去。提交版本库中。
    运行的时候,引用git仓库中的jenkinsfile文件
    我这里直接在dev创建了一个jenkinsfile. 如果在master创建,以后创建新分支的时候都会自动创建好jenkinsfile为其他分支创建流水线脚本。


    image.png image.png image.png

    相关文章

      网友评论

        本文标题:jenkins-流水线语法和基本操作

        本文链接:https://www.haomeiwen.com/subject/yhzvrltx.html