Jenkins实战中的一些技巧

在隔离期间,看了下Jenkins,虽然没有用到Pipline等功能,但通过基础的配置,也能将CI/CD做的不错(理解General、源码管理、触发器构建、构建环境、构建、构建后的操作等步骤),其实其最大的特点就是插件全、支持灵活的shell操作,下面列举用到的一些功能。

1:Parameterized Trigger

https://plugins.jenkins.io/parameterized-trigger/

这个插件很有用,但你完成一个构建后,可以触发下一个构建并传递新的参数。比如说Go构建完成后,可以触发发送邮件。

2:Envi ronment Injector

https://plugins.jenkins.io/envinject/

这个插件的作用就是能够创造环境变量,在多个构建过程中能复用变量。具体做法就是变量保存在一个文件中。

Desc=`curl "https://gitlab.com?branch=${GIT_BRANCH}"`
echo "Desc=${BranchDesc2}" >/var/lib/jenkins/env.properties

3:Upload to pgyer with apiV2

https://plugins.jenkins.io/upload-pgyer/

这个插件主要是Android打包后,将apk文件上传到蒲公英中下载。

在该例子中,shell修改了上一个步骤说到的注入环境变量,然后payer插件能读取,如果不用注入环境变量,shell修改变量值是不会生效的。

4:构 建,选择执行shell

shell非常强大,可以完成很多工作,比如:

git clone git@ip:项目/仓库.git $articlepath
cd $articlepath
git checkout master 

cd ${WORKSPACE}
./cmd/build.sh

在这个例子中,可以看到一个仓库的构建过程还依赖另外一个仓库,可以选择clone下来进行编译,不过好像git submodule就是解决这个问题的

5:Email Extension

https://plugins.jenkins.io/email-ext/

这个插件能够让你配置更多的邮件参数,可以自定义参数等等。

不过需要注意的是,Jenkins中自带的邮件设置也要做更改。

6:Publish Over SSH

在构建过程中,可以利用SSH做一些事情,比如执行命令或者发送文件(其实用shell更方便)

  • Send files or execute commands over SSH before the build starts
  • Send files or execute commands over SSH after the build runs

对于ssh和git来说,可以采用私钥免登录。

7:全局属性和环境变量

可以在设置中配置一些全局的变量,比如软件的编译位置等等。

8:Manager Credentials

这个对安全性很重要,任何形式的密钥(邮箱,gitlab密码)都可以以票据的方式保存,非常方便和安全。

9:Parameterized Build

https://wiki.jenkins.io/display/JENKINS/Parameterized+Build

参数化构建,可以作为全局变量传递,但这个值shell是不能更改的(除非使用注入环境变量),Parameterized Trigger传递参数的时候,在下一个构建任务中也要新建参数用于接收上一个构建的变量。

10:GitLab

https://plugins.jenkins.io/gitlab-plugin/

GitLab插件很有用,通过配置,在提交代码的时候Gialab会调用jenkins webhook事件给Jenkins(token验证),然后开启构建过程,比如:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值