Help us understand the problem. What is going on with this article?

Heroku で既存の本番環境をコピーしてステージング環境を作る

More than 5 years have passed since last update.

すでに本番環境がHerokuにあって、ステージング環境もHerokuに作りたい場合

既にある Heroku の本番環境を fork してコピーする

Forking Existing Apps | Heroku Dev Center

heroku fork -a APPNAME APPNAME-stg
  • これだけでいろんなアドオンや DB の中身もコピーされて、ステージング環境が出来上がる。アラ簡単。(http://APPNAME-stg.herokuapp.com でもう確認できる状態になってる)
  • Collaborator 権限はコピーされないので、新たに追加し直す必要がある
  • hook もコピーされないので、新たに追加する必要がある

お手元のローカル環境に git remote add する

ちょっと余談なのだが、このとき、herokuとかheroku-stgとかではなく、そのアプリケーションの名前でgit add しておくと、デプロイがプロジェクトによって違うコマンドになるので、例えば慌ててウッカリ違うプロジェクトのディレクトリで git push heroku master って打ってしまって、違うプロジェクトをデプロイしちゃった…という悲しい事故を防止できる。

cd APPNAME
git remote add APPNAME-stg git@heroku.com:APPNAME-stg.git

これで、デプロイするときは

git push APPNAME-stg master

てな感じになる

ステージングだけではなく、本番のリモートリポジトリもアプリケーションの名前に変えておくとよい。
既に、「heroku」とかになってるリモートリポジトリをリネームするには、

git remote rename heroku APPNAME

て、やるといい。
これでデプロイする時は、

git push APPNAME master

てな感じになり、この世から悲しみが減る。

Basic認証つけたければ

heroku config:set BASIC_AUTH_USERNAME="id" BASIC_AUTH_PASSWORD="password" --app APPNAME-stg

ってやればできるよ( ˘ω˘)"

esaLLC
esa.io や pplog.net などのWebサービスを開発・デザイン・運営しています
https://team.esa.io
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした