AWS CodePipeline を試用する

継続的デリバリーとは、DevOps ソフトウェア開発手法の 1 つで、コード変更が発生すると、自動的にビルド、テスト、および本番へのリリース準備が実行されるというものです。これは継続的インテグレーションを拡張したもので、すべてのコード変更が、ビルド段階の後にテスト環境または運用環境 (あるいはその両方) にデプロイされます。継続的デリバリーを適切に実装すると、開発者は、標準化されたテストプロセスに合格し、デプロイ準備の整ったビルドの成果物を常に手元に持つことになります。

継続的デリバリーでは、すべてのコード変更は、ビルドとテストを実行した後、非運用テスト環境またはステージング環境にプッシュされます。その後、運用環境にデプロイする前に、複数の並列したテスト段階を設けることができます。開発者は、準備ができた時点で、最後のステップとして運用環境への更新を承認します。これは、運用へのプッシュが明示的な承認なしで自動的に行われる継続的デプロイとは異なります。

継続的デリバリーを実施すると、開発者は単なる単体テストを超えたテストを自動的に実行できるため、お客様にデプロイする前にさまざまな角度からアプリケーションの更新を検証できます。たとえば、UI テスト、ロードテスト、統合テスト、API 信頼性テストなどを実行できます。これは、開発者が更新をより徹底的に検証し、先を見越して問題点を発見するために役立ちます。オンプレミスでは従来困難だった、複数の環境をテスト用に作成してレプリケーションを行う作業も、クラウドを利用すれば、簡単かつコスト効率のよい方法で自動的に実行できます。

継続的インテグレーションと継続的デリバリー

継続的デリバリーは、ソフトウェアのリリースプロセス全体を自動化します。リビジョンがコミットされるたびに、更新のビルド、テスト、そしてステージングを行う自動化されたフローが開始されます。実際の運用環境へのデプロイを最終的に決定するのは、開発者です。

継続的デプロイの場合、リビジョンは、開発者からの明示的な承認なしで自動的に運用環境にデプロイされるため、ソフトウェアのリリースプロセス全体が自動化されます。


ソフトウェアのリリースプロセスの自動化

継続的デリバリーでは、開発チームによるコード変更のビルド、テスト、運用環境へのリリースに向けた準備が自動化されるので、ソフトウェアの配信の効率が上がり、迅速に実施できます。

開発者の生産性を向上

こうした手法は、開発者を手動作業から解放することによって開発チームの生産性を向上し、お客様にデプロイする前にエラーやバグを減らす努力を奨励するために役立ちます。

バグを早期に発見して対処できる

テストの頻度を上げ、その内容を充実させることにより、後になって大きな問題に発展する前に、バグを早期に発見して対処できます。また、継続的デリバリーによってプロセス全体が自動化されるので、自分のコードに付加的な種類のテストを簡単に実行できるようになります。

更新を迅速に配信

継続的デリバリーは、開発チームがお客様に迅速かつ頻繁に更新を配信するために役立ちます。継続的デリバリーを適切に実装すると、開発者は、標準化されたテストプロセスに合格し、デプロイ準備の整ったビルド成果物を常に手元に持つことになります。 

継続的デリバリー、その利点、および AWS CodePipelineAWS CodeBuild を使用した実装方法の詳細については、動画をご覧ください。

このサイトで動画を見るには、Adobe Flash Player または最新のブラウザが必要です。

Screen Shot 2016-08-25 at 11.31.59 AM
3:05
AWS CodePipeline 入門

このサイトで動画を見るには、Adobe Flash Player または最新のブラウザが必要です。

CodePipeline_thumbnail_getting-started
41:35
オンラインセミナーの録画: AWS での継続的デリバリーの開始方法

AWS では、継続的デリバリーをいくつかの方法で実施できます。

CICD

AWS CodePipeline を使用して継続的デリバリーを実施することにより、AWS CodeBuild にコードをビルドし、自動化されたテストを実行し、コードをデプロイするというワークフローを構築できます。チュートリアルに沿って CodePipeline をお試しください。