最近在为公司搭建CI平台过程中,以及在具体项目实施过程中使用过的一些插件的具体用法:
1. ant插件
这个插件可能是我们最为经常使用的,若构建脚本是使用build.xml的,那构建引擎肯定会选择ant,在我们公司后台主要是C++和存储过程开发的,前台主要是C#。
因此编译打包我都选择了ant进行。通过master-slaver这种模式,通常需要将构建脚本拷贝到slaver机器上,因此有时需要更改一下build.xml中的一些内容就比较麻烦,需要
在slaver机器上面去更改。为了方便配置管理人员可以直接在jenkins job配置管理页面进行更改,因此将build.xml中一些需要更改的内容按照ant的property target进行参数化。
ant本身还有一个propertyfile的target,如下面代码所示:
<!--replace属性文件 --> <target name="generateConf"> <echo message="create deploy file"/> <propertyfile file="${ses.dir}\deploy_env.properties" comment="deploy config file"> <entry key="DeployMode" value="${DeployMode}"/> <entry key="BroadCastIPSegment" value="${BroadCastIPSegment}"/> <entry key="SystemName" value="${SystemName}"/> <entry key="DBServer" value="${DBServer}"/> <entry key="DBSchema" value="${DBSchema}"/> <entry key="DBUser" value="${DBUser}"/> <entry key="arb" value="${arb}"/> <entry key="compositor1" value="${compositor1}"/> <entry key="compositor2" value="${compositor2}"/> <entry key="s_server1" value="${s_server1}"/> <entry key="s_server2" value="${s_server2}"/> <entry key="u_server1" value="${u_server1}"/> <entry key="u_server2" value="${u_server2}"/> <entry key="front1" value="${front1}"/> <entry key="front2" value="${front2}"/> <entry key="binit" value="${binit}"/> </propertyfile> </target>
每个key-value对都通过属性值对应起来。
而jenkins ant plugin页面设置如下图所示:
jenkins ant plugin提供一个properties的参数输入项,通过该项可以把一些配置参数放在里面,在执行build的时候jenkins会把这些属性值传递到后台的build.xml,这样使用起来就方便了,配置管理人员也不用去后台更改build.xml了。
2.ssh publisher
这个插件主要是用来执行linux 都shell脚本,也可以上传文件到后台服务器上。具体就不介绍了。
3. role based strategy
这个插件是用来配置用户权限和任务权限的,通过正则表达是可以控制用户只能访问和查看与自己权限相关的任务和页面。
具体配置如下图所示:
4. sidebar links
个人觉得这个插件不错,可以添加一些链接到jenkins上,比如把fitnesse的测试集链接添加到上面,方便访问。
5.wall display
可以展示所有项目的构建matrics,有windows metro 风格
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· Blazor Hybrid适配到HarmonyOS系统
· 万字调研——AI生成内容检测
· 解决跨域问题的这6种方案,真香!
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库