如何在OpenShift上进行作曲家更新?

时间:2015-06-24 12:04:12

标签: php git composer-php openshift slim

我正在尝试在Slim上使用免费节点OpenShift。我可以毫无问题地从SSH会话中运行composer update

唯一的问题是每次我想通过 git 提交文件时,我必须转到控制台再次运行composer install。我的问题是有什么简单的方法可以解决这个问题吗?我在 /project/.openshift/action_hooks/post_deploy 中尝试了一个BASH脚本,但是服务器没有在runtime / repo下创建vendor文件夹

2 个答案:

答案 0 :(得分:4)

我总是通过action hooks

来做

在我的项目目录中,我有一个由/project/.openshift/action_hooks/post_deploy调用的脚本,其中 post_deploy 是一个bash脚本。 以下是我一直在使用的内容:

#!/bin/bash

export MY_PHPCOMPOSER=$OPENSHIFT_DATA_DIR/composer.phar

# if composer not exists, download
if [ ! -f $MY_PHPCOMPOSER ]; then
    cd $OPENSHIFT_DATA_DIR
    echo "Downloading composer..."
    php -r "readfile('https://getcomposer.org/installer');" | php 
fi

$MY_PHPCOMPOSER -n -q self-update
cd $OPENSHIFT_REPO_DIR 
# install
php -dmemory_limit=1G $MY_PHPCOMPOSER install

每次将repo推送到openshit时, post_deploy 脚本都会执行。它就像一个魅力!

旁注

  

由于OpenShift作曲家的版本并不总是更新,所以它是安全的   下载一个新的作曲家副本并使用它。   另外,不要忘记调整权限设置。

有用的链接

答案 1 :(得分:0)

我知道我的回答迟了但根据Openshift documentation,您可以在每次构建后启用composer install,只需创建一个标记文件:

touch .openshift/markers/use_composer