使用Jenkins在属性文件中区分部署ENV

时间:2018-09-03 16:30:44

标签: jenkins

所以我有一个Python脚本,该脚本确实向Websphere授予访问权限(白名单)用户。 我已经将其与Jenkins和具有用户列表的GIT中的属性文件集成在一起。 当我执行在设置中限制的从属计算机上运行的jenkins作业时。 我现在需要做的是将部署环境与非产品和产品区分开来。

1 个答案:

答案 0 :(得分:1)

产品目录系统的

白名单/密码不应作为回购协议的一部分存储,而应存储在目标计算机/产品目录系统上的其他位置,或者如果不经常部署,则应存储为目标位置的manual input

话虽如此,您可以使用conditional pipeline steps。仅当表达式的值为真时,才会执行 when 关键字之后的块:示例:env.TARGET_SYSTEM = 'prod' or GIT_BRANCH.startsWith("PROD")

对于 非生产 系统,您可以有一个块,将白名单文件复制到应用程序目标目录中,而对于 prod ,只需检查文件是否存在(如果不存在,您可以请求手动交互并发送电子邮件以在此处和此处复制文件)

如果对您来说,将生产数据作为存储库的一部分完全没问题,然后只需使用良好的旧文件名约定即可:

sh "cp whitelist.${params.TARGET_SYSTEM}.properties /my/target/dir"

其中的文件名如下:whitelist.non-prod.properties和whitelist.prod.properties。 TARGET_SYSTEM是作业的参数