我有一个由Composer调用的脚本应该运行一些数据库过程。但是,该脚本没有环境变量,因此没有按预期连接到数据库。
我尝试使用SSH访问应用程序,并且所有环境变量都在那里,可由PHP命令行客户端访问。
摘自部署输出:
-----> Receiving push
#!/usr/bin/env php
All settings correct for using Composer
Downloading...
Composer successfully installed to: /srv/tmp/builddir/code/composer.phar
Use it: php /srv/tmp/builddir/code/composer.phar
Welcome to Phundament
Installing application...
Array
(
)
bool(false)
bool(false)
这三个调试输出是由(是的,我按照指南中的描述创建了APPLICATION_ENV var)生成的:
print_r($_ENV);
var_dump(getenv('CRED_FILE'));
var_dump(getenv('APPLICATION_ENV'));
答案 0 :(得分:2)
这是对的。在推送和构建映像期间,没有可用的附加凭据。要运行数据库迁移或类似脚本,我建议您使用cctrlapp run command。您可以使用推送和部署命令轻松编写脚本。