既存のHeroku appからpipelineを作成し、CLIからStagingとProductionをいじれるようにする

  1. Tech
  2. 0 view

久々にHerokuのPiepelineを使って、情報が散らばってて分かりにくいなぁと思ったので情報を共有いたします。

前提条件

  • Heroku CLIがインストールされている。
  • HerokuにSampleAppという本番用アプリと、SampleApp-stgというステージング用アプリが存在する。
  • プロジェクト(Heroku上のアプリと意味を切り離す意味でプロジェクトとしてます)はGithubをリモートレポジトリとして用いている。

流れ

  • HerokuのCLIにpipelineをインストール
  • Heroku上にpipelineを作成
  • 作成したpipelineにステージング用アプリを紐付け
  • Heroku CLIから本番用アプリとステージング用アプリを操作する

さぁ、やってみよう

HerokuのCLIにpipelineをインストール

まずはpipelinesコマンドをCLIで使えるようにする。

$ heroku labs:enable pipelines

Heroku上にpipelineを作成

次に、Heroku上にpipelineを作成します。

$ heroku pipelines:create -a SampleApp

どこにSampleAppを割り当てるか聞かれますので、Productionを選択し、Enterを押して下さい。

これでSampleAppというパイプラインが作成され、SampleAppアプリがProductionに割り当てられました。

作成したpipelineにステージング用アプリを紐付け

次に、SampleApp-stgをステージング環境に割り当てます。

$ heroku pipelines:add -a SampleApp-stg SampleApp

先程と同様にどこにSampleApp-stgを割り当てるか聞かれますので、Stagingを選択し、Enterを押して下さい。

Heroku CLIから本番用アプリとステージング用アプリを操作する

まずはリモートレポジトリに各アプリを割り当てます。

$ git remote add heroku git@heroku.com:SampleApp.git
$ git remote add heroku-stg git@heroku.com:SampleApp-stg.git

これで事前準備は完了です。
あとはherokuコマンドの実行先をそれぞれ指定してやるだけです。

たとえば、マイグレーションを実行したい場合は…

本番環境の場合

$ heroku run rake db:migrate --remote heroku

ステージング環境の場合

$ heroku run rake db:migrate --remote heroku-stg

これで完了です。

The following two tabs change content below.
株式会社クリエイターズ・ラボ 代表取締役。株式会社078 取締役。 中学生の時に父の自作PCを譲り受け、はじめてのウェブ制作を経験する。見よう見まねで自分のウェブサイトにチャット機能や掲示板を自作で実装したのがはじめてのプログラミング経験。 大学在学中にLinuxとC言語を学ぶ。大学卒業後はエンジニアとして自動車メーカーで油圧制御プログラムの開発や、シミュレーションソフト開発に従事。その後、半導体商社にて組込みソフトエンジニアとして、産業機器や家電、IoT等の組込みソフトウェア開発に従事。 2015年9月に株式会社クリエイターズ・ラボを設立。

株式会社クリエイターズ・ラボ 代表取締役。株式会社078 取締役。

中学生の時に父の自作PCを譲り受け、はじめてのウェブ制作を経験する。見よう見まねで自分のウェブサイトにチャット機能や掲示板を自作で実装したのがはじめてのプログラミング経験。
大学在学中にLinuxとC言語を学ぶ。大学卒業後はエンジニアとして自動車メーカーで油圧制御プログラムの開発や、シミュレーションソフト開発に従事。その後、半導体商社にて組込みソフトエンジニアとして、産業機器や家電、IoT等の組込みソフトウェア開発に従事。
2015年9月に株式会社クリエイターズ・ラボを設立。

記事一覧

関連記事

Macを使ったRaspberry Pi 3 model Bの…

この記事は、実際にRaspberry Piを購入し、Raspberry PiにOSをインストールするところまでを習得することをゴールにしております。この記事の続きは順…

  • 0 view

Raspberry Pi 3とタクトスイッチでLEDを制御す…

今回は、ラズパイを用いて、いわゆるLチカというやつをやってみたいと思います。とはいっても、ただLEDを光らせるだけでは面白くないので、ソフトウェアエンジニアリング…

  • 0 view

Android BLEで指定したService UUIDのデ…

Androidと特定のペリフェラルとBluetooth LEで接続しようとするとき、Service UUIDを指定して、そのUUIDを持ったデバイスを探すのが常套手段かと…

  • 0 view

Raspberry Pi 3でBluetooth LEを導入…

Raspberry Pi 3から、Bluetoothモジュールが標準装備されたモデルが発売されています。今回はその機能を使い、BLEをプログラムで制御する手始めをご説…

  • 0 view

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


%d人のブロガーが「いいね」をつけました。