Skip to main content

継続的インテグレーションと継続的配信について学ぶ

学習の目的

この単元を完了すると、次のことができるようになります。

  • 継続的インテグレーションと継続配信の説明と比較を行う。
  • 継続的配信の利点を挙げる。

「Heroku Enterprise の基本」モジュールを受講していない場合、完了してから、このモジュールを開始することを強くお勧めします。

アプリケーションを継続的に開発する手法

最新の開発用プラクティスを導入すると、チームは、市場の中でも非常に有用で洗練されたアプリケーションを構築およびリリースできるようになります。このようなプラクティスとして、継続的インテグレーションや継続的リリースがあります。こうした手法により、リリースサイクルの短縮、自動化、ソースコードリポジトリへの直接の関連付けが可能になります。また、チームは増分コード更新をすばやく安全に本番にプッシュできます。これらの手法が適切に利用されると、アプリケーションライフサイクルの早い段階でバグや問題を見つけて、短期間で質の高い製品をリリースできるようになります。

継続的インテグレーション

継続的インテグレーションによってチームは問題を早期に検出できます。複雑な製品では、自己完結型で単純に見える変更が、意図しない結果を招くことがあります。開発者が複数の分離したコードブランチに対して並行して作業する場合、共通の main ブランチへの変更のマージが予期しない結果を生むことがあります。こうした結果が発生すると、多くの場合、回帰テストやバグ修正を何度も行うことになります。 

継続的インテグレーション (CI) では、開発者があらゆるコミットのあらゆるコード変更を定期的に main ブランチに統合できます。CI ではテストを破棄可能なアプリケーションに対して実行し、マージされるコードにバグがないことが検証します。 

継続的配信

継続的配信では、あらゆる変更を本番と似た環境 (ステージング) に手動でプッシュして、コードをすばやく安全に本番にリリースできます。各変更はステージングに配信されるため、適宜ボタンを操作して、アプリケーションを本番環境にリリースできます。

コードをステージングにプッシュするという追加のステップが、継続的インテグレーションと継続的配信で異なる点です。CI でビルドに問題がなかったとしても、コードが本番対応できているとは限りません。コードは、本番環境と同じステージングアプリケーションにプッシュし、テストして初めて本番への準備ができた状態になります。

上記の概念を把握できたところで、次はこれらをサポートする、Heroku プラットフォームで使用可能な機能について学習しましょう。

リソース 

無料で学習を続けましょう!
続けるにはアカウントにサインアップしてください。
サインアップすると次のような機能が利用できるようになります。
  • 各自のキャリア目標に合わせてパーソナライズされたおすすめが表示される
  • ハンズオン Challenge やテストでスキルを練習できる
  • 進捗状況を追跡して上司と共有できる
  • メンターやキャリアチャンスと繋がることができる