将Pipeline script放到git,执行的时候从git拉下来执行

1.使用Jenkins本地git库测试,配置如下:

Jenkins Pipeline Script from SCM应用_python

2.新建Pipeline,选择“Pipeline script from SCM”,配置Repositories地址为上图git仓库路径

Jenkins Pipeline Script from SCM应用_scm_02

脚本路径可以按需自定义,此处配置如下:

新加文件需要git add,git commit,否则Jenkins无法从git库拉下来

Jenkins Pipeline Script from SCM应用_python_03

pipe_color.pipeline内容如下:

def skipRemainingStages = false,skipApprove = true,Exec = true,bb=3
pipeline{
    agent any
options {
    ansiColor('xterm')
  }
    stages{
         stage("等待审批"){
            when {
                expression {!skipRemainingStages}
                expression {!skipApprove}
                }
            steps{
                echo 'nihao'
            }
             }

        stage("任务执行"){
            when {
                //expression {!skipRemainingStages}
                expression {Exec}
                }
            steps{
                script{
                    sh  """
                    python3 /data/script/py/__del/test.py $bb

                    """
                     echo "\033[31m 红任务已执行完成 \033[0m"
                     echo "\033[30m 黑任务已执行完成 \033[0m"
                     echo "\033[32m 绿任务已执行完成 \033[0m"
                     echo "\033[33m 黄任务已执行完成 \033[0m"
                     echo "\033[34m 蓝任务已执行完成 \033[0m"
                     echo "\033[35m 紫任务已执行完成 \033[0m"
                     echo "\033[36m 深绿任务已执行完成 \033[0m"
                     echo "\033[37m 白色任务已执行完成 \033[0m"
                }
                }


            }

    }

}

3.保存后即可运行,运行结果如下:

Jenkins Pipeline Script from SCM应用_git_04

 

============================================================================================================================

脚本路径如果改为Jenkinsfile,该文件内容如下:

node {
    stage('build-using-scm'){
     echo 'build';
    }

    stage('test-using-scm'){
     echo 'test';
    }

    stage('deploy-using-scm'){
     echo 'deploy';
    }
}

则保存后运行结果为:

Jenkins Pipeline Script from SCM应用_自定义_05