如何在运行 hooks/install 中的脚本之前设置环境变量?

如何在运行 hooks/install 中的脚本之前设置环境变量?

我创建了一个简单的 charm,从 git 获取我的 symfony2 webapp 并将其部署在 ec2 上。

从 git 获取源代码后,我想运行 composer 来解决依赖关系,但我一直收到此错误:

INFO juju context.go:221 worker/uniter: HOOK   The HOME or COMPOSER_HOME environment variable must be set for composer to run correctly

我正在使用 hooks/install 脚本中的以下命令运行 C​​omposer

juju-log "Running composer"
/usr/bin/php composer.phar install

我也试过

juju-log "Running composer"
COMPOSER_HOME=${app_dir};/bin/bash -c "/usr/bin/php composer.phar install"

我如何设置 HOME 或 COMPOSER_HOME 以便可以执行该命令?

答案1

HOME没有在 Juju 钩子中设置,只有几个环境变量。

你应该可以运行

COMPOSER_HOME="/path/you/want/to/be/home" php composer.phar install

这将在执行 php 之前设置环境变量。

相关内容