2016-09-09 6 views
1

awsでコードデプロイサービスをセットアップしましたが、うまくいきましたが、デプロイ後にcomposer updateコマンドを実行します。awsでコードをデプロイした後でcomposer updateコマンドを実行する方法

AfterInstallフックでcomposer updateコマンドを定義しましたが、動作していないようです。

はここ

version: 0.0 
os: linux 
files: 
    - source:/
    destination: /var/www/laravel/ 
hooks: 
    AfterInstall: 
    - location: hooks/after-install.sh 
     runas: root 

私appspec.yml

だとここafter-install.shファイルのコードです:

#!/bin/bash 

php /var/www/laravel/artisan clear-compiled 
php /var/www/laravel/artisan optimize 
php /var/www/laravel/artisan view:clear 
php /var/www/laravel/artisan cache:clear 

chown -R ubuntu:www-data /var/www/laravel 
sudo find /var/www/laravel -type d -exec chmod 755 {} + 
sudo find /var/www/laravel -type f -exec chmod 644 {} + 
chmod -R 777 /var/www/laravel/storage 

composer update 

他のすべてのコマンドが作曲更新を除いて動作し、すべてのヘルプは大歓迎です。

Thakns

+0

私はあなたのオリジナルの質問に答えることはできませんが、 'composer update'を実行するのではなく、' composer.lock'ファイルをあなたのプロジェクトにバンドルし、 'composer install'を実行するべきです。そうすれば、常に同じ環境に依存することになります。 –

+0

@ KarlLaurentiusRoos私は 'composer install'も実行しようとしましたが、それもうまくいきませんでした。 –

答えて

4

あなたは(あなたが依存関係のためにcomposer.jsonファイルを持っている場合)あなたのプロジェクトが存在するディレクトリの絶対パスを含める必要があります。

composer update -d /var/www/laravel

composer updateを交換し、それは魅力のように動作します。

+0

ありがとう@DaisySaxena、それは私の問題を解決しました。 –

関連する問題