7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Codedeploy の 概要や appspec.yaml

Posted at

#EC2/オンプレミスへのデプロイ#

##概要##

  • CodeDeploy Agentが導入されたEC2またはオンプレミスインスタンスが必要。
  • デプロイタイプ:インプレース / Blue/Green ※オンプレミスはインプレースのみ。
  • デプロイグループに、Auto Scaling グループ を指定することで、スケールアウト時に最新のリビジョンが自動でデプロイされる。
  • ライフサイクルイベントへHookを指定し、スクリプトを実行することが可能。

##リビジョンの構成##

  • フォルダ構成

  • appspec.yaml

  • ビルド済みの成果物

  • その他の配布物

  • Hookスクリプト

  • リビジョンタイプ

  • S3

  • GitHub

##appspec.yaml(EC2)##

セクション 説明
version 現在は 0.0 のみ
OS linux もしくは Windows
files アプリケーションや設定ファイルをディレクトリへコピー
permission 特定のディレクトリとファイルのアクセス許可を設定
hooks インストール前後の処理。アプリケーションの処理。アプリケーションの開始。デプロイ成功の確認。
version: 0.0
os: operating-system-name
files:
  source-destination-files-mappings
permissions:
  permissions-specifications
hooks:
  deployment-lifecycle-event-mappings

##hooks(EC2)##

  • インプレースデプロイとBlue/Green デプロイによりhookを実行可能な箇所が異なる。

#Lambda へのデプロイ#

##概要##

  • Lambdaの関数重み付けエイリアスを利用したトラフィックのシフト
  • カナリアデプロイ/リニアデプロイを選択。
  • Validation HookでLambda関数を実行してテストすることが可能。

##appspec.yaml(Lambda)##

セクション 説明
version 現在は 0.0 のみ
resources Lambda関数に関する情報を指定
hooks hook用Lambdaの指定
version: 0.0
resources: 
  lambda-function-specifications
hooks: 
  deployment-lifecycle-event-mappings

##hooks(Lambda)##

  • BeforeAllowTraffic および AfterAllowTraffic のみ。

#ECS へのデプロイ#

##概要##

  • Greenタスクをプロビジョニングし、ロードバランサーのトラフィックで切り替える。
  • 検証Hookによって各ステージのデプロイメントでテストを実行することが可能。

##appspec.yaml(ECS)##

セクション 説明
version 現在は 0.0 のみ
resources デプロイする Amazon ECS アプリケーションに関する情報を指定する
hooks hook用Lambdaの指定
version: 0.0
resources: 
  ecs-service-specifications
hooks: 
  deployment-lifecycle-event-mappings

##hooks(ECS)##

7
3
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
7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?