编写jenkins脚本jenkinsfile过程中的一些难点

作为一个以前几乎没写过脚本的菜鸟,第一次写jenkinsfile着实有些困难,而且jenkins官方文档中关于语法的介绍特别窄,几乎只是告诉你有这个东西,该怎么用就寥寥几笔,百度上的相关资料也比较少,所以就在这总结一下这次编写jenkinfile中遇到的一些问题和解决办法

第一个: jenkins打印日志的问题

首先我的情况是想尽量将jenkinsfile简化,方便后期维护和增加新节点,所以会把大部分的逻辑都放在shared lib 库中,类似于jenkinsfile为Controller层,而大部分的逻辑都放在了shared lib库中,日志打印也同样是放在shared lib库中。
这个lib库并没有像官方规定的那样去定义,就一个src下包含了一个groovy类,然后该类定义了一些类方法,这些类方法就是我在jenkinsfile中要调用的逻辑接口。
在这里插入图片描述
原本调研的是在类方法中直接 print 打印出来的日志会同步打印到jenkins的 console output上,后来发现无效。然后发现jenkinsfile在启动时会创建一个workflowScript对象,pipeline jenkinsfile中的打印(如 print, echo)都是隐式的通过该对象调用(this.echo, this.print),所以为所有的类方法多传了一个workflowScript对象 dls,在Jenkinsfile中传入this,然后在类方法中通过dls.print或dls.echo就能将日志同步打印到console output上了。

shared lib 库中
在这里插入图片描述
在这里插入图片描述
jenkinsfile中
在这里插入图片描述
后来发现通过这种方式打印在jenkins的console output上中文会出现乱码的情况 ,

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值