我确实有一个要求,我需要将数据库部署到具有目标环境上特定于应用程序的数据的不同环境中。 例如,我们正在与第三方服务集成,它们确实具有针对目标环境的不同凭据和其他参数。例如用于测试和生产环境的凭据和端点以及其他参数。
当前,我们正在使用针对这些环境的部署后DB脚本并将它们存储在我们的git存储库中。 我了解到,由于存在被黑客入侵和窃取的风险,我们不应该在存储库中提交此类敏感信息。
有人可以在您的CI / CD管道中建议一种更好的方式(最佳实践)来处理此要求吗?
我们在CI / CD流程中使用 TeamCity 和 Octopus 工具。
感谢您在这方面的宝贵建议和反馈。 也可以随时分享最佳的CI / CD实践,以克服开发过程中的此类担忧。
谢谢, RSF
答案 0 :(得分:1)
我本来可以通过将{/ usr}之类的数据作为Octopus
中每个环境的sensitive variables来实现的。
要部署,我将使用sqlpackage.exe passing in the dacpac and the variables(/ v:variable1 = value1)。