Description of problem: Can not install dependency by composer in php gear after upgrade from OSE 2.1->2.2 Missing '$OPENSHIFT_PHP_DIR/usr/bin' element in $OPENSHIFT_PHP_PATH_ELEMENT Version-Release number of selected component (if applicable): openshift-origin-cartridge-php-1.29.1.0-1.el6op.noarch How reproducible: 100% Steps to Reproduce: 1. Create a php app on old server and upgrade to latest server 2. Add a use_composer marker # touch .openshift/markers/use_composer 3. Modify the composer.json in repo eg: { "require": { "monolog/monolog": "1.0.*" } } 4. git push and check the app Actual results: Can not found the command 'composer' Expected results: Deploy successfully. Additional info: Even if OPENSHIFT_PHP_PATH_ELEMENT is composed corectly, composer functionality still does not work, because the following block code is never called, this is similar to BZ#1170784 #vim /usr/libexec/openshift/cartridges/php/bin/upgrade if [[ $curr == 0.0.17 ]]; then source ${OPENSHIFT_PHP_DIR}usr/lib/php_config rm -f ${OPENSHIFT_PHP_DIR}configuration/etc/php.d/* echo > ${OPENSHIFT_PHP_DIR}configuration/etc/php.d/openshift.ini chown $OPENSHIFT_GEAR_UUID:$OPENSHIFT_GEAR_UUID ${OPENSHIFT_PHP_DIR}configuration/etc/php.d/openshift.ini chcon -u unconfined_u ${OPENSHIFT_PHP_DIR}configuration/etc/php.d/openshift.ini update_configuration mkdir -p ${OPENSHIFT_HOMEDIR}.composer chown $OPENSHIFT_GEAR_UUID:$OPENSHIFT_GEAR_UUID ${OPENSHIFT_HOMEDIR}.composer chcon -u unconfined_u ${OPENSHIFT_HOMEDIR}.composer fi
Check on puddle [2.2.6/2015-05-11.1] 1. Create some php apps(php-5.4,php-5.3), update the env 2. Add use_composer marker , composer.json and replace the index.php file in repo # touch .openshift/markers/use_composer # cat composer.json { "require": { "pear-pear.php.net/Mail": "*", "pear-pear.php.net/xml_serializer": "*" }, "repositories": [ { "type": "pear", "url": "http://pear.php.net" } ] } 3. deploy the app remote: Installing dependencies (including require-dev) remote: - Installing pear-pear.php.net/mail (1.2.0) remote: Downloading remote: Writing lock file remote: Generating optimized autoload files remote: Preparing build for deployment Can download and install dependency.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-1463.html