5
1

More than 3 years have passed since last update.

CodePipelineがGHEをサポートすることになった

Last updated at Posted at 2020-12-16

はじめに

  • こんにちは ! KDDI アジャイル開発センターの小板橋です。
  • この記事は、KDDI Engineer Advent Calendar 2020の17日目の記事となります。
  • 2020/9/30にAWS CodePipeline が GitHub Enterprise Server のサポートを開始するという発表がありましたが、このサポートによりCI/CDの仕組みについて見直そうとする方も多いのではないでしょうか。
  • 本記事では、上記のような人、そもそもCodePipelineについて何だろうとなっている人のために、CodePipelineについてまとめたものとなっています。

CodePipelineについて

CodePipelineとは

  • 開発、テスト、デプロイまでのプロセスを自動化するサービスです。

概念

  • パイプラインは、ソフトウェアの変更がリリースプロセスをどのように通過するかを記述するワークフロー構造です。
  • 各パイプラインは一連のStageで構成されています。

Stage

  • ステージは、ソースコードが構築され、テストが実行されるビルドステージである場合もあれば、コードをランタイム環境にデプロイするデプロイステージの場合もあります。
  • 各ステージは、連続または並列のアクションで構成されています。

Action

  • アクションは、アプリケーションコードに対して実行される一連の操作であり、アクションがパイプライン内で指定されたポイントで実行されるように設定されます。
  • 例えばこれには、インスタンスにアプリケーションをデプロイするためのアクションなどが含まれます。

使用できるAction

  • CodePipelineのActionの種類は source、 build、 test、 deploy、 approval、および invoke(呼び出し)があります。
Actionの種類 有効なアクションプロバイダー
source Amazon S3
Amazon ECR
CodeCommit
CodeStarSourceConnection (ビットバケット、 GitHub、 GHE)
build CodeBuild
カスタム CloudBees
カスタム Jenkins
カスタム TeamCity
Test CodeBuild
AWS Device Farm
カスタム BlazeMeter
ThirdParty GhostInspector
カスタム Jenkins
ThirdParty マイクロフォーカス StormRunner 負荷
ThirdParty ヌーボラ
ThirdParty ランスコープ
Deploy Amazon S3
AWS CloudFormation
CodeDeploy
Amazon ECS
Amazon ECS (Blue/Green) (これは CodeDeployToECS アクションです)
Elastic Beanstalk
AWS AppConfig
AWS OpsWorks
AWS Service Catalog
Amazon Alexa
カスタム XebiaLabs
approval(承認) 手動
invoke(呼び出し) AWS Lambda
AWS Step Functions

CodePipeline の一部のアクションタイプは、限定された AWS リージョンでの使用になるそうです。

CodePipelineでのパイプラインおよびステージ構造の要件

  • 以下の要件を満たしていればCodePipelineを使用できます。

1.パイプラインに少なくとも 2 つのステージを含める必要がある。

2.パイプラインの最初のステージには、少なくとも 1 つのソースアクションが含まれている必要がある。

3.ソースアクションは、パイプラインの最初のステージにのみ含める。

4.各パイプラインのいずれかのステージには、必ずソースアクション以外のアクションを含めること。

5.パイプライン内の全てのステージ名は必ず一意であること。

参考

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1