51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3161|回复: 4
打印 上一主题 下一主题

[转贴] Jenkins 2.7 pipeline 功能使用介绍

[复制链接]
  • TA的每日心情
    无聊
    昨天 09:07
  • 签到天数: 11 天

    连续签到: 2 天

    [LV.3]测试连长

    跳转到指定楼层
    1#
    发表于 2017-6-22 14:59:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    安装现在的jenkins版本+pipeline插件
    pipeline这是jenkins2.0的核心特性. 也是最适合持续交付的feature.
    与以往的通过Web交互来配置流程不同, Jenkins也走向了正规的工程化交付方式即使用配置文件. 这本身也印证了行业的经验everything is code
    这样就再也不用每个项目都手工配置或者搞各种恶心的项目模板了.
    jenkins的pipeline主要是通过一个配置文件或者job里面的pipeline配置来设定每个job的步骤.
    pipeline定义了几乎所有要用到的流程, 比如执行shell, 存档, 生成测试报告, 发布报告等.

    持续交付 as codehttps://jenkins.io/doc/book/pipeline-as-code/
    1. node(‘linux’){
    2.   git url: 'https://github.com/jglick/simple-maven-project-with-tests.git'
    3.   def mvnHome = tool 'M3'
    4.   env.PATH = "${mvnHome}/bin:${env.PATH}"
    5.   sh 'mvn -B clean verify'
    6. }

    7. 举一个sonar的例子

    8. node {
    9.     stage "auth"
    10.     sshagent(['xxxx-xxxx-xxx-xxxx-xxxx']){
    11.        stage 'Checkout'
    12.        git url: 'git@git.tonghuashun.com:tonghuashun/tonghuashun-income.git'
    13.     }
    14.    stage 'Build'
    15.    sh "mvn clean install -Dmaven.test.skip=true"
    16.    stage "Sonar"
    17.    sh "mvn sonar:sonar"

    18. }
    复制代码


    建议是在每个项目里面让研发放一个Jenkinsfile, jenkins的其他插件可以自动读取这些配置批量导入已有的项目.
    pipeline-syntax这是一个Jenkinsfile的命令查询工具. 辅助新手编写持续交付的配置指令. 非常好用.


    分析测试结果
    1. node {
    2.    git url: 'https://github.com/joe_user/simple-maven-project-with-tests.git'
    3.    def mvnHome = tool 'M3'
    4.    sh "${mvnHome}/bin/mvn -B -Dmaven.test.failure.ignore verify"
    5.    step([$class: 'ArtifactArchiver', artifacts: '**/target/*.jar', fingerprint: true])
    6.    step([$class: 'JUnitResultArchiver', testResults: '**/target/surefire-reports/TEST-*.xml'])
    7. }
    复制代码


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    该用户从未签到

    2#
    发表于 2017-6-22 15:07:07 | 只看该作者
    这是一个和web配置并行的配置方式?相较于web上配置有什么优势呢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    昨天 09:07
  • 签到天数: 11 天

    连续签到: 2 天

    [LV.3]测试连长

    3#
     楼主| 发表于 2017-6-22 15:08:07 | 只看该作者
    悠悠小仙仙 发表于 2017-6-22 15:07
    这是一个和web配置并行的配置方式?相较于web上配置有什么优势呢

    如果类比的话, 可以理解为 是从 Maven -> Gradle的改进. Jenkinsfile本身是个groovy脚本. 跟gradle很像. 这样就可以做便捷的做各种判断和循环处理了. 有了统一的Jenkinsfile以后批量的导入项目到Jenkins也方便了.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2019-1-7 15:37:42 | 只看该作者
    Jenkins Pipeline可以发布C#中的DEbug版本的代码么、
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-20 10:52 , Processed in 0.073588 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表