• Jenkins Pipeline项目构建


    一、项目搭建、配置

    Jenkins除了创建之前的自由风格的项目,还可以进行流水线项目的创建,相比较于自由风格的项目,流水线的功能更为强大,通过Jenkins流水线的代码定义了整个的构建过程, 它通常包括构建, 测试和交付应用程序的阶段 。

     然后进入配置页面,它也有很多可选,如General、构建触发器、高级项目选项以及流水线,不过我们可以直接来到流水线这里,来进行构建项目,然后有两种写Pipeline脚本的方式:

    • Pipeline script(直接在页面上写)
    • Pipeline script from SCM(在项目根目录下新建Jenkinsfile文件,然后写脚本,推荐使用)

     使用第二种方式:

     接着主要就是在Jenkinsfile文件中写入Jenkins语法了,它有两种写法方式:

    • 声明式
    Jenkinsfile (Declarative Pipeline)
    pipeline {
        agent any 
        stages {
            stage('Build') { 
                steps {
                    // 
                }
            }
            stage('Test') { 
                steps {
                    // 
                }
            }
            stage('Deploy') { 
                steps {
                    // 
                }
            }
        }
    }
    • 脚本式
    Jenkinsfile (Scripted Pipeline)
    node {  
        stage('Build') { 
            // 
        }
        stage('Test') { 
            // 
        }
        stage('Deploy') { 
            // 
        }
    }

    声明式容易上手,所以可以采用声明式语法,详情查看官网:https://www.jenkins.io/zh/doc/book/pipeline/

    在项目根目录下创建Jenkinsfile文件:

    // Jenkinsfile
    
    pipeline {
        agent any
        stages {
            stage("auto_test_script") {
                steps {
                    sh '''echo "https://mirrors.ustc.edu.cn/alpine/v3.6/main/" > /etc/apk/repositories
                        echo "https://mirrors.ustc.edu.cn/alpine/v3.6/community/" >> /etc/apk/repositories
                        apk update
                        apk add python3
                        python3 main.py'''
                }
            }
    
            stage("show_info") {
                steps {
                    echo "执行成功"
                }
            }
        }
        post {
          always {
            // One or more steps need to be included within each condition's block.
            echo "${env.JOB_BASE_NAME}" //使用内置变量
          }
    }
    
    }

    二、项目测试

    在Pipeline项目中只是在流水线步骤中添加了SCM仓的地址,以及指明了Jenkinsfile方式运行构建过程。所以代码首先会从GitLab上被拉取下来,接着执行Jenkinsfile文件中构建过程。

  • 相关阅读:
    通过三个DEMO学会SignalR的三种实现方式
    [Asp.net]SignalR实现实时日志监控
    SignalR -- server push 利器
    Microsoft ASP.NET SignalR
    在 Asp.NET MVC 中使用 SignalR 实现推送功能
    asp.net signalR 专题—— 第一篇 你需要好好掌握的实时通讯利器
    asp.net signalR 专题—— 第二篇 对PersistentConnection持久连接的快速讲解
    后台管理UI推荐
    ASP.NET通用权限系统快速开发框架
    .NET通用基本权限系统框架源代码
  • 原文地址:https://www.cnblogs.com/shenjianping/p/16690690.html
Copyright © 2020-2023  润新知