ハマログ

株式会社イーツー・インフォの社員ブログ

AWS CodeDeployでデプロイ対象のアプリケーションによって処理を制御する

AWS CodeDeployでアプリケーションをデプロイする際に、特定のサーバーのみスクリプトを実行したいケースがあり、AppSpecのフックセクションで環境変数を利用して解決したのでそのメモです。

AppSpecのフック(hooks)セクション

アプリケーションによる処理の分岐

今回は以下のように処理を制御しました。

appspec.yml
version: 0.0
os: linux

files:
  - (略)
permissions:
  - (略)

hooks:
  AfterInstall:
    - location: deploy/after-install.sh
runas: root
after-install.sh
#!/bin/bash
(略)
if [ "$APPLICATION_NAME" == "batch-server" ]
then
    sudo systemctl restart supervisord
fi
(略)
これにより、CodeDeployのアプリケーションがbatch-serverの場合にのみ、supervisordの再起動が実行されるようになりました。
Amazon Web ServiceAmazon Web ServicesApplicationAWSCode CommitCode DeployCode PipelineCodeCommitCodeDeployCodePipelinefooksifアプリケーションデプロイ

  kaneko tomo   2024年5月6日


関連記事

LaravelのObserverでモデルの変更を検知する

はじめに Laravel Novaで記事を管理していて、パフォーマンス対策のため…

最適化のタイミングとバランス

Premature optimization is the root of al…

Amazon Linux 2に設置したBitnami Redmine StackにBasic認証を設定する

Redmineを利用するために、Amazon Linux2上に設置したBitna…


← 前の投稿

次の投稿 →