sqitch:跨多个环境部署更改

Posted

技术标签:

【中文标题】sqitch:跨多个环境部署更改【英文标题】:sqitch: deploying changes across multiple environments 【发布时间】:2020-05-11 15:32:23 【问题描述】:

在查看 sqitch 文档时,有一种情况我无法立即理解如何处理。

可能与许多组织一样,我们会在多个环境中进行更改,然后再投入生产。在我们的情况下,我们在每个环境的不同 Oracle 服务器上都有不同的 DBA 用户,每个用户都有自己的凭据。

据我了解,sqitch 使用数据库表来跟踪对服务器应用了哪些更改。也许我很笨,但它只是没有让我跳出来,sqitch 如何告诉我更改是否已应用于 UAT 服务器,但尚未应用于生产服务器。

所以基本上,我想组织一个存储库来将更改从一个数据库环境转移到下一个环境。这可能是“sqitch target”和计划文件的用途吗?有没有可以看的例子?

【问题讨论】:

【参考方案1】:

如果我是你,我会创建一个集中式数据库,其中包含指向每个数据库的数据库链接。之后,我将创建一个所有 Repositories 的 Union 和一个 View(带有 PIVOT 功能)来查看每个补丁的部署路径。

【讨论】:

以上是关于sqitch:跨多个环境部署更改的主要内容,如果未能解决你的问题,请参考以下文章

使用 Sqitch Rework 命令更改表

使用 sqitch 生成更改表脚本

AWS Beanstalk 跨多个 AWS 账户部署

如何使用 sqitch 部署雪花数据库?

Sqitch 部署到雪花 DW 失败

同时部署到 Amazon Elastic Beanstalk 上的多个环境