我计划使用Azkaban https://azkaban.github.io/来运行批处理作业。根据CI的思想,我们有很少的环境,如开发,测试,阶段,生产和工作,当然,每个环境应该有不同的配置。
根据Azkaban文档,当发现${ http://azkaban.github.io/azkaban/docs/latest/#job-configuration }时,Azkaban允许替换参数。解决方案如下:
system.properties
myFlow/
dev.properties
....
prod.properties
foo.job
#system.properties
env=dev
#dev.properties
dev.database=localhost:2181
#prod.properties
prod.database=aws:port
#foo.job
some command --db ${${env}.database}稍后,在每个环境中,我们可以重写env变量。在我看来,这个解决方案看起来很奇怪。我可以告诉Azkaban应该在环境中使用哪个属性文件吗?
做这件事的最佳方法是什么?
发布于 2017-10-26 18:36:24
https://stackoverflow.com/questions/46939571
复制相似问题