我们有 gradle.properties 存在于 15 个微服务存储库中。如果我们(devops)需要更改一个属性,我们需要遍历该微服务,提交更改并推送。如何应对这种维护噩梦?
请注意,gradle.properties 中的字段不是您可以使用配置服务器集中的 application.properties 或 yaml 中的配置。
最佳答案
我们在我的公司也有类似的要求:例如,将我们的内部存储库 URL 设置在一个中心位置,并且不要在所有 repositories {}
中重复此 URL。阻止每个项目。
为了实现这一点,我们使用了 Gardle Wrapper功能与 Init Script特征:
GRADLE_HOME/init.d/
中打包了一个包含此初始化脚本的自定义 Gradle 发行版目录 --gradle-distribution-url
的 Gradle Wrapper指向我们的自定义分布。 设置一个属性的初始化脚本示例:
$GRADLE_HOME/init.d/init-properties.gradle
rootProject{ p ->
p.ext.artifactoryUrl = 'https://mycompany.artifactory.com'
}
编辑:Gradle 提供了一个示例项目,解释了如何构建自定义分发:请参阅 https://github.com/gradle/gradle/tree/master/subprojects/docs/src/samples/customDistribution
关于gradle - 维护存在于多个存储库中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52520782/