【问题标题】:Jenkins CI / CD on an Open Source Github project with confidential properties files [closed]带有机密属性文件的开源 Github 项目上的 Jenkins CI / CD [关闭]
【发布时间】:2020-09-20 11:08:23
【问题描述】:

我正在为具有一组 机密 .properties 文件的 开源项目Jenkins CI/CD 管道

.properties 文件对于 Spring boot 项目的可维护性是必需的,并且某些 .properties 文件是机密文件,因此不得在开源代码库中公开。

对于每个机密 .properties,我们在开源中提供了一个示例 .properties。

问题是,您如何顺利(即自动化)将机密 .properties 或文件合并到 Jenkins CI/CD 管道中,并在这些文件上使用 git 实现出色的版本可控性?这样那些机密的.properties 就可以在每个 CI/CD 阶段等生产中发挥作用。

这似乎是一个难以自动化的挑战,感谢任何 cmet、建议或经验!


我尝试过的

Git secret

这是一个很好的解决方案,但它不支持 Windows,所以我无法接受。 (我发现的所有 git-secret 替代品也不支持跨平台。

【问题讨论】:

标签: jenkins continuous-integration continuous-deployment git-secret


【解决方案1】:

有一个名为Config File Provider Plugin 的插件对我来说是个救命稻草。 它能够将整个配置文件替换为 JK 中存储的配置文件,或者只是 XML、Json 等中的令牌。

在管道中,当你想替换整个文件时,它看起来像这样:

 stage('Add Config files') {
        steps {
            configFileProvider([configFile(fileId: 'IDOfTheFileStoredInJenkins', targetLocation: pathToMyFileRelativeToWorkspace/myPropertiesFile')]) {
            // some block, maybe a nice log message
            }
}
}

类似thread

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-09
    • 1970-01-01
    相关资源
    最近更新 更多