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

Roh*_*tri 2 amazon-web-services aws-code-deploy

我在aws上设置了Code Deploy服务,它工作得很好,但我想要的是composer update在部署之后运行命令.

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

这是我的appspec.yml

version: 0.0
os: linux
files:
  - source: /
    destination: /var/www/laravel/
hooks:
  AfterInstall:
    - location: hooks/after-install.sh
      runas: root
Run Code Online (Sandbox Code Playgroud)

这是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
Run Code Online (Sandbox Code Playgroud)

除了作曲家更新之外,所有其他命令都有效,任何帮助都表示赞赏.

Thakns

小智 6

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

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

它会像魅力一样工作.