LoginSignup
2
0

More than 1 year has passed since last update.

【AWS】CodeDeployを実装した時のエラーとその解決まで

Posted at

はじめに

CodeDeployでデプロイ自動化を実装しようとした時、エラーがいくつか出たため記録として残します。
ほぼ凡ミスのような感じですが、参考になれば幸いです。

条件

macOS: "11.2.3 Big Sur"

php artisan -V
# > Laravel Framework 6.20.30

php -v
# > PHP 8.0.8 

nginx -v
# > nginx version: nginx/1.12.2

git --version
# > git version 2.32.0

1. DownloadBundleでエラー

スクリーンショット 2021-07-27 10.14.20.png
スクリーンショット 2021-07-27 16.30.28.png

The specified key does not exist.
(訳)指定されたキーは存在しません。

解決

これは単純に、.circleci/config.ymlディレクトリにs3へのアップロードの記載をしていなかったことが原因でした。

config.yml
   // 省略
      - run:
          name: upload artifacts to s3
          command: aws s3 cp lantern.zip s3://${AWS_S3_BUCKET_NAME}
   // 省略

参考

2. AfterInstallでエラー : ①

スクリーンショット 2021-07-27 16.48.44.png
スクリーンショット 2021-07-27 17.30.40.png

Script does not exist at specified location
(訳)スクリプトが指定された場所に存在しません

解決

原因は、AfterInstallイベントで使用されていたシェルスクリプトが反映されていなかったことでした。
スクリーンショット 2021-07-27 17.12.07.png
scripts/after_install.shを追加したけれど、これが本番環境の方には反映されていませんでした。

なので、本番環境の方に同じようにディレクトリとファイルを作成。

# ① scriptsディレクトリ作成
$ mkdir scripts

# ② scriptsディレクトリ内に移動して、after_install.shファイルを作成
[scripts] $ touch after_install.sh

# ③ ファイルの中を編集
[scripts] $ vi after_install.sh

以下は、after_install.shファイルの記述内容です。

after_install.sh
#!/bin/bash

set -eux

cd ~/Lantern/lantern
php artisan migrate --force
php artisan config:cache

よし、これでいけるだろう!と思い、もう一度デプロイ。。。

3. AfterInstallでエラー : ②

スクリーンショット 2021-07-27 16.49.35.png

Could not open input file: artisan
(訳)入力ファイルを開くことができませんでした:artisan

artisanコマンドが使えないということは指定しているディレクトリが違うのかな...と思ったので確認。
案の定、ディレクトリを指定しているところが違っていたため以下のように修正。

after_install.sh
- cd ~/Lantern/lantern
+ cd ~/Lantern/lantern-ssh-deploy
  php artisan migrate --force
  php artisan config:cache

よし、これでいけるだろう!!

スクリーンショット 2021-07-27 17.55.47.png

無事デプロイ完了!

おわりに

改めて振り返ると、ディレクトリの指定ミスがちらほらありました...。
少しはAWSと仲良くなれた気がします。

参考

2
0
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
2
0