如何在 OpenShift 上作曲更新?

How can I composer update on OpenShift?

我正在尝试将 Slim on OpenShift 与空闲节点一起使用。我可以毫无问题地从 SSH 会话 运行 composer update

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

下创建供应商文件夹

我总是通过 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

所以 post_deploy 脚本将在您每次将您的 repo 推送到 openshit 时执行。它就像一个魅力!

旁注

Since not always the OpenShift composer's version is updated it's safe to download a new composer copy and use it. Also, don't forget adjusting permissions settings.

有用的链接

我知道我的回答晚了,但根据 Openshift documentation,您可以在每次构建后通过创建标记文件启用 composer install

touch .openshift/markers/use_composer