【问题标题】:Heroku-Github Auto Deploy from non-master (only see master branch)Heroku-Github Auto Deploy 从非 master (仅见 master 分支)
【发布时间】:2016-02-10 16:20:36
【问题描述】:

[仅供参考 - 我不打算将我们的 Heroku 帐户升级到 Enterprise 以利用应用分组。我们是一个小团队]

我是 heroku 应用的合作者。我的任务是为应用程序设置 dev-staging-production 环境,我对如何使用 GitHub-Heroku 集成指南正确设置 Auto Deploy 感到困惑。我已经获得了对原始 git repo 的管理员访问权限。

从生产应用程序的“所有者”帐户中,我创建了两个单独的应用程序(开发和登台)。

现在,我有 3 个应用程序是我的合作者:

(1) app.domain.com (2) app-dev.domain.com (3) app-staging.domain.com

我创建了 3 个遥控器,指向 3 个生成的 heroku-git 存储库:

直播 开发者 分期

我可以通过以下方式轻松推送到 3 个 Heroku 应用:

git push 直播大师
git push 开发大师
git push 登台大师

但我想为开发阶段应用设置自动部署。

我已将“自动”分支推送到 dev 和 staging 远程。我的目的是让 Heroku 检测到该分支的推送并“自动”部署代码。但是,heroku 只检测到对“master”分支 afaik 的推送。

git push dev release auto
git push staging release auto

但是当我去管理 Heroku 开发阶段应用程序时,我只能在自动部署部分看到“主”分支。我不应该也看到“自动”分支吗?我没有看到它的原因是因为我没有在 ORIGINAL git repo 上将 auto 作为远程分支推送?在这种情况下,当代码存在于 2 个不同的环境(Heroku 存储库和 GitHub 存储库)中时,我该如何构建这些东西?

最终,计划是设置某种形式的持续集成,并在发布跨开发-暂存-生产区域之前运行测试。

我是不是想多了,还是有更好的方法让这些东西正常工作?欣赏!

【问题讨论】:

    标签: heroku


    【解决方案1】:

    Heroku 仅跟踪远程 master 分支上的更改。

    https://devcenter.heroku.com/articles/git#deploying-from-a-branch-besides-master

    将你的 dev 分支推送到 Heroku master 远程分支:

    git push dev release:master
    

    您可能需要使用-f 标志来强制推送(小心!)

    【讨论】:

      【解决方案2】:

      我认为 Heroku 上的自动部署仅适用于默认分支(通常命名为 master),您可能想查看名为 pipelines 的 Heroku 功能。我自己还没有使用过它,它处于测试阶段,但听起来正是你想要的。不确定我是否读对了,但听起来您创建了 3 个单独的项目,而不是 1 个项目中的分支?您如何管理将更改从一个阶段转移到另一个阶段?

      至于 CI 设置,我想这取决于您正在进行的测试类型和工作流程。我正在我的工作场所创建这样的流程,我将提出如下建议:

      • 在提交和合并到 DEV 分支之前,开发人员在其本地计算机上的功能分支上进行开发和测试
      • 提交或合并到 DEV 分支会触发 CI 服务器、运行构建并执行 PHPUnit 和 Behat 测试
      • 正在将成功的构建部署到服务器(可能是 Heroku 或任何支持自动部署的托管服务提供商)以进行 QA。
      • 经过测试和批准后,我们​​可以将代码移至 STAGING 分支重复 CI 过程,并在成功后移至 MASTER 并上线。

      我们正在使用 gilab.com 来托管我们的项目并执行测试(即使有免费帐户,CI 服务器也是标准配置),将用于 QA 的开发和暂存状态部署到 Heroku,最后托管具有专用企业级的实时版本提供者。

      【讨论】:

        猜你喜欢
        • 2017-07-15
        • 2011-10-13
        • 1970-01-01
        • 2022-01-08
        • 1970-01-01
        • 2014-09-17
        • 1970-01-01
        • 1970-01-01
        • 2012-05-22
        相关资源
        最近更新 更多