关于 Jenkins 的参数化构建,有没有更好的方式?

2019-11-05 13:04:29 +08:00
 ayanmw
目前 jenkins 的方式是 你配置什么就显示什么,而且弱到爆:

1 choice 是下拉方式,怎么搞成全部显示的方式;

2 不能根据一个 choice 来显示后续的选项,比如 option-A option-B 我需要使用不同的选项,只要能隐藏不相关的参数就好了,但是貌似 jenkins 不支持;

3 无法动态展示参数,有一些插件比如 list git branch parameter, list filesystem ,我就希望能够提前运行我写的 shell,然后返回数组 (比如选择一个 scp/sftp/ftp 的远程文件 作为参数) ,你给我展示出来 这样 给你选择,但是 jenkins 没这样的插件或不支持;

4 默认居然只允许一个项目只有一个版本库, 要么全 git,要么全 svn? 我有需求是 从 svn 拷贝到 git,或者反向操作的部分,只能 shell 来做;
5976 次点击
所在节点    DevOps
10 条回复
ayanmw
2019-11-05 13:09:25 +08:00
ps: 我司是做 mmo 游戏的,项目基本是 server.git client.git design.svn,而且策划要经常修改配置的,版本出的特别勤快; 我服务器用 go 的,还好,客户端就麻烦,H5 的,服务器多,客户端还比较大,git 十几个 GB,出包 1.8GB;

jenkins 仅仅作为前端来用了, 全靠我写的脚本 和 提前部署好的环境来快速发布 部署了~
tomczhen
2019-11-05 13:13:50 +08:00
太复杂的需求可以自己做页面调用 Jenkins API,或者直接自己开发插件。记得可以用
dif
2019-11-05 13:41:24 +08:00
可以啊,Jenkins 有个插件支持参数的联动 Active Choices,然后写点 Groovy Script 判断下即可。
mritd
2019-11-05 13:59:17 +08:00
虽然有点跑题,但是我真的推荐 gitlab ci
ayanmw
2019-11-05 14:34:07 +08:00
@dif 感谢,这个插件 貌似可用,回头研究下~ 参数其实挺多的,组合的情况都可能有,为了效率,有时候就要选择适当的效率,而不是全部打包这种;
binfengxy
2019-11-05 19:22:44 +08:00
@mritd 有没有代码看看
mritd
2019-11-05 19:33:14 +08:00
@binfengxy #6 https://mritd.me/2017/11/28/ci-cd-gitlab-ci/ 17 年的,不过现在没多大变动
autotesting
2019-11-05 22:47:42 +08:00
@dif 我也准备推荐这个插件的。只是这个插件不支持 pipeline 的方式使用。
tiancaiyong
2020-04-17 14:30:14 +08:00
@autotesting 挖个坟。支持 pipeline,我就在用。
autotesting
2021-02-22 09:31:33 +08:00
@tiancaiyong 这个支持也会有问题,比如你的改动需要生效的话,需要先提交完代码,然后手动刷新一下一个新的构建,重新拉取代码才可以吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/616441

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX