如何在没有GitHub集成的情况下管理Heroku管道中的两个阶段

时间:2017-11-09 08:54:30

标签: git heroku heroku-cli heroku-pipelines

我在heroku中有一个名为my-app的应用。

我把它变成了一个有两个阶段的管道(staging和prod)。我不想使用GitHub集成。

my-app现已投入生产。

我正在使用GitLab(免费),我将my-app repo分叉到一个名为feature-a的新分支。

我想将此fork添加到管道的暂存阶段。我希望能够在升级到生产之前在此阶段测试代码。

当我从fork(或合并)添加到管道的应用程序时,Heroku CLI告诉我应用程序已经在管道中,这是真的,因为一个版本已经在生产中。

我的问题:

  • 如何在my-app管道的暂存阶段添加同一个应用的不同版本?
  • 舞台可以有不同的环境变量(例如,舞台将有开发键和放大器,生产会有生产钥匙和钥匙)?

2 个答案:

答案 0 :(得分:0)

  

如何在my-app管道的暂存阶段添加同一个应用程序的不同版本?

如果要将相同应用的分支添加到管道,您可以手动创建新应用,将其添加到管道,然后将feature-a分支部署到该应用进行比较。

  

舞台可以有不同的环境变量(例如,舞台将有开发键和放大器,生产会有生产钥匙和钥匙)?

环境变量是特定于应用的,因此您可以为应用指定不同的不同密钥,无论它们位于哪个管道通道中。

答案 1 :(得分:0)

我正在搜索与您提出的完全相同的内容,在Google搜索结果中,我在Heroku文档中看到了一个名为“为应用程序管理多个环境”主题的链接。

对于我所欠的东西,你只想在一个heroku应用程序中使用相同的存储库,但每个版本都在不同的阶段。

嗯,文档没有接近这种管理,我们可以理解这是不可能的。

但它接近另一种管理,你可能在同一个存储库中有许多分支,每个分支都链接到不同的应用程序(我认为这是真正的问题)。

阅读以下文档:https://devcenter.heroku.com/articles/multiple-environments

这种方法在公司的观点中更有意义,因为在软件开发中成熟度较高的公司中,您不会直接在Master分支上进行任何更改(任何错误都可能成为巨大的错误)。

如果你没有使用GitHub集成,你可以做些什么来解决这个问题:你为你的开发分支创建一个特定的应用程序,为你的登台创建一个应用程序,为你的生产(主)分支创建另一个应用程序。 / p>

您可以单独部署它,在测试之后,将代码合并到另一个分支并进行部署。

希望我帮助过你!