gpt4 book ai didi

azure-devops - 在 Azure DevOps (VSTS) 中的发布阶段之间共享文件

转载 作者:行者123 更新时间:2023-12-04 04:36:30 25 4
gpt4 key购买 nike

大图 :我们正在使用 Azure DevOps 发布流程(到目前为止,我们在设计器中创建步骤,而不是 YAML 管道)。我们发布到具有 3 个不同数据库的 3 个环境。该版本的一部分是从 DACPAC 文件部署数据库。由于使用 SqlPackage.exe 直接发布到数据库不是很透明(您没有看到和查看实际的 SQL 脚本),我们希望分 2 个阶段进行发布:

  • 从 DACPAC 创建 SQL 脚本并查看它
  • 批准后,从先前生成的脚本运行 app 和 db deploy。

  • 问题 : 如何在阶段之间共享 sql 脚本文件以及如何查看它以供批准。可以在不同的代理上触发阶段。

    我试过的 :
  • 将脚本发布为构建工件 - 这将无法生成脚本我需要连接到数据库并且连接到它不应该是构建过程的一部分,尤其是连接到生产数据库。
  • 将工件作为发布步骤发布到 Azure Pipelines - 发布时不允许这样做,仅适用于构建
    发布
  • 将工件发布到文件共享 - 我不确定这到底是如何工作的,文档做得不是很好。此外,在我们的基础架构中很难设置常规的 Windows 文件共享,我宁愿避免它。

  • 还有其他建议吗?

    最佳答案

    虽然您不能使用管道人工制品,但您 could use Universal Packages in Package Management to publish arbitrary files for later retrieval .将文件内容转储到管道日志是允许人们检查它的最简单方法。

    您还可以创建一个带有占位符的文件作为构建工件,并在每个阶段的管道变量中合并最终设置,这样您就可以将它们保留为构建工件。这就是我倾向于对这种性质的任何文件做的事情。听起来这不适用于您生成的 SQL 文件。

    或者,如果“查看批准”部分很重要,您可以生成它并将其写入日志,然后将其上传到通用包管理。然后在阶段结束时请求批准。在下一阶段,您可以从 Universal Package Management 下载脚本,或者在执行之前使用完全相同的任务配置重新生成它。

    关于azure-devops - 在 Azure DevOps (VSTS) 中的发布阶段之间共享文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53301052/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com