Heroku での継続的デリバリ

Heroku プラットフォームは、アプリケーションの最初のビルドから、運用、さらにその先まで、開発者の生産性を最大化し、すばらしい経験を提供することを目的に設計されています。この目的の一環として、Heroku は、継続的デリバリなど、最新の開発習慣をサポートするさまざまなツールでプラットフォームを強化しています。

Heroku Flow—アプリケーションを第一に考えて最適化。

Heroku Flow は、構造化されたデプロイワークフローです。GitHub、視覚的に表現されるパイプライン、使い捨ての「レビューアプリケーション」、Heroku CI が緊密に統合され、視覚的かつ効率的で簡単な継続的デリバリを実現することにより、アプリケーションのリリースを無駄なく、合理化できるように設計されています。

Heroku Flow は次のコンポーネントで構成されています。
Heroku Pipelines

Heroku Pipeline ドキュメントを読む

同じコードベースを共有する Heroku アプリケーションを 1 つにまとめたデプロイパイプラインです。ビジュアルインターフェースを使い、次のステージへの昇格や管理を簡単に行えます。

Heroku CI

Heroku CI

Heroku CI Read docs

Heroku CI は、Heroku Pipeline に統合された、セットアップの少ない、視覚的なテスト実行ツールです。GitHub へのプッシュのたびに、開発環境と本番環境の一致を保ちながら、使い捨てのアプリケーションを使ってテストが自動的に実行されます。

Heroku Review Apps

Review Apps

開発中、テスト用に一時的なアプリケーションを開発者が作成し、チームはこれを利用して、コードベースに変更をマージするかどうかをレビュー、検討、決定することができます。

Heroku GitHub Integration

GitHub Integration

Heroku アプリケーションとその GitHub リポジトリを緊密に連携させると、GitHub と Heroku の両方に通知した上で、マージ後のブランチを自動でも、手作業でもデプロイできるようになります。

Heroku ChatOps

Heroku ChatOps

Heroku ChatOps は、Heroku Pipeline と Slack を接続することによりチームの円滑なコラボレーションを促進します。Heroku ChatOps を使用すると、Slack からステージング環境にデプロイしたり、本番環境へ昇格させたりすることが可能になります。また、Slack チャネルで、プルリクエスト、マージ、CI のビルド結果を確認できるようになります。

Heroku Release Phase

Release Phase

リリースフェーズでは、リリースを本番環境にデプロイする前に、データベース移行などのタスクを自動的に実行できます。これにより、手作業によるデプロイステップを省略し、それに伴うリスクを排除できます。