10
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

HerokuにGitHubリポジトリの一部だけデプロイする

10
Posted at

つらみ

  • HerokuのGitHub連携、リポジトリ内のすべてをデプロイしてしまう (ので、Procfileなどをリポジトリ直下に配置せねばならない)
  • つらい (GitHubリポジトリのほうを小分けする必要があって)

たとえばこういうディレクトリ構成のとき、 フロントエンドはデプロイしたくなくてAPIだけHerokuにデプロイしたい、とする。
同じHerokuだけどappをフロントエンドとバックエンドで分けてる、みたいな場合も当てはまりそう。

.
├ v2okimochi-apps-frontend
│  └ ...
├ v2okimochi-apps-api
│  └ ... <= これだけ全部デプロイしたい
└ README.mdとか

既に方法は紹介されているが、本稿はそれのGUI版を書く。

Heroku CLIでやる場合の参考 https://qiita.com/amagurix/items/5fad1693752a6ad9e86c

heroku-buildpack-monorepoを使う

Herokuデプロイ時にディレクトリ指定ができる。

  1. Herokuの対象appで、settingsタブからBuildpacksにheroku-buildpack-monorepoを追加する。

heroku1.png

Add buildpackから、直接URLを指定する。今回は https://github.com/lstoll/heroku-buildpack-monorepoでいけた。

※ 言語のbuildpackより上にする必要がある。順番に読まれているのか?

  1. Herokuの環境変数 (Config Vars)に、たとえば APP_BASE = v2okimochi-apps-apiを追加して読み取らせる。

この指定の場合、リポジトリ直下にある v2okimochi-apps-apiディレクトリ内だけをデプロイし、 v2okimochi-apps-api/Procfileなどが読み込まれる。

おまけ

Git側で subtree pushを使う方法が有名らしいが、そこはHerokuに勝手にやってもらうほうが嬉しい。。。

https://qrunch.net/@yumechi/entries/8d7uwLWuOFtA09sn
https://medium.com/@shalandy/deploy-git-subdirectory-to-heroku-ea05e95fce1f

10
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?