1

我有一个使用 yeoman angular-fullstack 生成器构建的项目。此设置的一部分是创建dist部署目录的 grunt 'build' 任务。

所以我只想将该目录部署到 Heroku,并认为这将是 git 子模块的实际用途。无需担心拉下外部更改,子模块允许将 dist 目录设置为单独的存储库,我可以独立部署到 Heroku。

这一切都在 localhost 上运行良好,我可以在 grunt 完成构建后 cd 进入子模块目录,然后提交更改并将它们推送到子模块的存储库。Heroku 正在监视 repo 并自动部署。

我的问题是,当我尝试在 CircleCI 中做同样的事情时,我似乎无法cd进入子模块目录以添加/提交/推送构建的发行版。

一种想法是我从 dist 'repo' 运行 CircleCI,但这将要求我将所有测试包含在我不想部署到 heroku 的 repo 中。

我正在寻找符合以下条件的人:

  1. 知道如何只提交/推送 CircleCI 中的子模块,或者
  2. 更好地了解如何将 dist 目录(仅)部署到 Heroku。
4

1 回答 1

1

为面临类似问题的任何人更新。我最终使用了 grunt-buildcontrol 插件,它获取 dist 目录并将其提交到不同的 repo——这正是我试图通过子模块实现的。

所以在完成一个 grunt build 后,我使用 grunt buildcontrol 将 dist 目录推送到 github。我的 Heroku 应用程序监视 master 分支并在 master 更新时自动部署新版本。

于 2015-05-31T13:50:11.523 回答