Q: 継続的デリバリーとは何ですか?

継続的デリバリーとは、ソフトウェア開発手法の 1 つで、コード変更が発生すると、自動的に構築、テスト、および実稼働環境へのリリース準備が実行されるというものです。AWS CodePipeline は、継続的デリバリーの実装を可能にするサービスです。詳細については、継続的デリバリーを参照してください。

Q: 継続的統合とは何ですか?

継続的統合は、ソフトウェア開発手法の 1 つで、開発者がコード変更を定期的にセントラルリポジトリにマージし、その後、自動化されたビルドとテストを実行するというものです。継続的統合という用語が最もよく使われるのは、ソフトウェアのリリースプロセスのビルド段階または統合段階を指す場合で、オートメーションの要素 (CI やビルドサービスなど) と啓発の要素 (頻繁に統合する必要性を学習することなど) の両方が含まれます。継続的統合の主な目的は、バグを早期に発見して処理すること、ソフトウェアの品質を向上させること、およびソフトウェアの新しい更新を検証してリリースするためにかかる時間を短縮することです。詳細については、継続的統合を参照してください。

Q: AWS CodePipeline とは何ですか?

AWS CodePipeline は、ソフトウェアのリリースに必要なステップをモデル化、可視化、自動化できる継続的デリバリーサービスです。AWS CodePipeline を使うと、コードを構築し、本番前の環境にデプロイし、アプリケーションをテストし、本番環境にリリースするまでのリリースプロセス全体をモデル化できます。これにより、AWS CodePipeline は、コードが変更されるたびに定義されるワークフローに従って、アプリケーションを構築、テスト、デプロイします。リリースプロセスの任意のステージにパートナーツールまたは独自のカスタムツールを統合して、エンドツーエンドの継続的デリバリーソリューションを構築することもできます。

Q: 継続的デリバリーパイプラインを設定する際に AWS CodePipeline を使用するメリットは何ですか?

AWS CodePipeline では、構築、テスト、およびリリースのプロセスを自動化することで、新しい変更すべてを一貫した品質チェックを通して実行できるため、ソフトウェア更新の速度と品質を向上させることができます。

Q: AWS CodePipeline を使って構築した継続的デリバリーパイプラインに統合できるのは、どのような製品ですか?

AWS CodePipeline は、AWS CodeCommit、Amazon S3、AWS CodeDeploy、AWS Elastic Beanstalk、AWS OpsWorks、AWS Lambda といった AWS のサービスと統合されています。さらに、AWS CodePipeline は多数のパートナーツールと統合できます。詳細については、製品の統合ページを参照してください。加えて、カスタムアクションを自分で記述して、既存のツールと AWS CodePipeline を統合できます。詳細については、AWS CodePipeline ユーザーガイドの Create and Add a Custom Action in AWS CodePipeline を参照してください。

Q: AWS Identity and Access Management (IAM) を使用して、AWS CodePipeline へのアクセスを管理できますか?

はい。AWS CodePipeline はリソースレベルの許可をサポートしています。パイプラインでどのユーザーがどのアクションを実行できるかを指定できます。たとえば、あるユーザーにパイプラインのステータスを確認することを許可するものの、パイプラインの変更を禁止する場合は、そのユーザーに読み取り専用のアクセス権を付与します。パイプラインの任意の段階またはアクションに対してアクセス権限を設定することもできます。AWS CodePipeline で IAM を使用する方法の詳細については、Access Permissions Reference を参照してください。 

Q: 1 つの AWS アカウントでパイプラインを有効にして、別の AWS アカウントの IAM ユーザーがそれにアクセスすることはできますか?

はい。パイプラインを所有する AWS アカウントで IAM ロールを作成し、パイプラインおよび関連するすべてのリソースへのアクセス権を他のアカウントの IAM ユーザーに委任できます。詳細については、チュートリアル: AWS アカウント間の IAM ロールを使用したアクセスの委任および Configure Cross-Account Access to a Pipeline を参照してください。

Q: AWS CodePipeline に関してさらに質問がある場合はどうすればよいですか?

CodePipeline のよくある質問ページを参照してください。