维护多个存储库中存在的文件

时间:2018-09-26 14:59:30

标签: gradle microservices devops

我们有15个微服务存储库中的 gradle.properties 。如果我们(开发人员)需要更改属性,则需要遍历所有微服务,提交更改并进行推送。如何应对这种维护噩梦?

请注意,gradle.properties中的字段不是可通过配置服务器集中的application.properties或Yaml内的配置。

1 个答案:

答案 0 :(得分:1)

我们公司有类似的要求:例如,将内部存储库URL设置在一个中央位置,而不要在每个项目的所有repositories {}块中重复该URL。

为实现此目的,我们将Gardle Wrapper功能与Init Script功能一起使用:

  • 我们已经实现了一个初始化脚本,该脚本负责设置一些常用属性(回购网址等)
  • 我们打包了一个自定义的Gradle发行版,其中将此初始化脚本包含在GRADLE_HOME/init.d/目录中
  • 我们所有的项目都配置为使用--gradle-distribution-url指向我们的自定义发行版的Gradle Wrapper。

设置一个属性的初始化脚本示例:

$ GRADLE_HOME / init.d / init-properties.gradle

 rootProject{ p ->
      p.ext.artifactoryUrl = 'https://mycompany.artifactory.com'
 }

EDIT :Gradle提供了一个示例项目,该示例项目说明了如何构建自定义发行版:请参见https://github.com/gradle/gradle/tree/master/subprojects/docs/src/samples/customDistribution