如何在aws上进行代码部署后运行composer update命令

时间:2016-09-09 12:33:41

标签: amazon-web-services aws-code-deploy

我在aws上设置了Code Deploy服务并且它运行良好,但我想要的是在部署之后运行composer update命令。

我在AfterInstall挂钩中定义了composer update命令,但它似乎不起作用。

这是我的appspec.yml

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

这是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

1 个答案:

答案 0 :(得分:6)

您必须包含项目所在目录的绝对路径(您有依赖项的composer.json文件)。

composer update替换为composer update -d /var/www/laravel

它会起到魅力的作用。