【问题标题】:How to run "deploy a package step" on Octopus server same as script task step如何在八达通服务器上运行与脚本任务步骤相同的“部署包步骤”
【发布时间】:2019-01-06 07:10:28
【问题描述】:

我们使用章鱼部署作为持续交付。我们已经在章鱼“部署包步骤”上设置了所有与 Web 相关的配置,我们将 nuget 包部署到章鱼服务器,然后将应用程序部署到多个服务器节点。

现在我们计划在章鱼服务器上使用 DBUP 实现数据库自动化。我们正在创建一个 nuget 包并使用包含 power shell 命令的“Deploy.ps1”在服务器上执行控制台 exe 应用程序。

我们正在使用“部署包步骤”,因为我们不想在数据库服务器上安装触手,我们想使用已经为我们的 Web 应用程序配置的相同连接字符串。我们刚刚创建了具有 DDL 访问权限的 DB 用户(Create,Alter..)。

对于我们的 Web 环境,我们在环境中有多个 VM,因此我们不想在多个环境中执行脚本。

在章鱼上使用“部署包”步骤,我们没有得到任何可以配置在章鱼服务器上执行包的选项。

请分享你的想法。

【问题讨论】:

    标签: octopus-deploy dbup


    【解决方案1】:

    免责声明:我是八达通员工。

    我建议您对 SQL 部署使用“运行脚本”步骤而不是“部署包”。此步骤允许您在八达通服务器上运行脚本,并且脚本仍然可以在包中。

    您也可以通过我们常用的支持渠道(例如我们的支持论坛或电子邮件)与我们联系。详情https://octopus.com/support

    【讨论】:

      【解决方案2】:

      2 个选项:

      • 正如@JaydenPlatell 提到的,Run a script 步骤,然后您可以选择提要和包。但在这种情况下,您的部署脚本必须是包本身的一部分。
      • 在 1 台部署机器上安装了一个 tentacle(例如可能与 Octopus Server 相同)。给它一个“数据库部署者”或类似的角色并将其用于部署。这样做的好处是您可以为不同的部署项目共享一个数据库部署“Script module

      【讨论】:

      • 我有多个脚本,我将它们分组到 nuget 包中。在运行脚本步骤中,我无法找到可以选择提要作为包的位置。我们试图在章鱼服务器上安装触手,但问题作业继续运行而没有抛出任何异常。
      • 我尝试通过添加运行脚本步骤并能够选择包。但我面临章鱼作业的问题,因为在执行它继续运行的脚本后没有停止。我不得不手动取消作业。
      • 听起来像是脚本本身的问题?您刚刚尝试过手动运行脚本吗?从那个盒子手动?
      • 感谢 Alex .. 问题出在控制台应用程序上。删除了 console.readline()
      猜你喜欢
      • 2022-10-19
      • 1970-01-01
      • 2014-02-24
      • 1970-01-01
      • 2020-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多