目前的做法是
1、使用Jenkins拉取在gitlab中master的最新代码
2、Jenkins会在测试完成并且成功后将项目打包成war并部署
那么问题是:
1、在项目中的配置文件如队列地址,数据库地址用户名密码,这些信息目前直接push到了master上,直觉告诉我这肯定是不对的,那么发布的时候怎么保证他能一起打包进去?
2、如果不是用的打包的方法,对配置文件的分发有什么工具?
3、我们知道当一个web项目丢到了tomcat,他自动去进行部署,如果先把代码编译成.class文件包丢进去再分发配置文件,岂不是一定会先部署失败?
4、如果以上的假设都是不对的,那么现在一般是怎么管理的?
受够了重复打包上传的工作所以部署了Jenkins,那么我想对配置文件的管理必然也有便捷的方式,遂来请各位指点迷津。
如果楼主使用的是 maven 来进行依赖管理,可以使用 profile 来配置,在build期使用不同的配置。
1、pom.xml中添加如下配置:
上述配置,共配置了三个不同的环境,local、online以及test,并且默认使用的是local。
2、配置文件引入方式:
配置文件在 profile 目录下,目录结构:
3、war 打包方式
上述命令将打包online下的配置文件,可以替换
-P
后的参数来打包不同目录下的配置文件。