J'essaye de déployer une application sur Heroku et je suis confronté à des problèmes liés aux dépendances de compositeurs conflictuelles. Cela fonctionne bien de ma machine de développement locale, je peux composer update
sans aucun problème.Comment déployer PHP7 avec MongoDB ext sur Heroku?
Voici un échantillon de mon composer.json
:
"require": {
"php": "7.1.*",
"ext-mongo": "*",
"ext-mongodb": "^1.2",
"symfony/symfony": "3.2.*",
"doctrine/orm": "^2.5",
"doctrine/doctrine-bundle": "^1.6",
"doctrine/doctrine-cache-bundle": "^1.2",
"symfony/swiftmailer-bundle": "^2.3.10",
"symfony/monolog-bundle": "^3.0.2",
"symfony/polyfill-apcu": "^1.0",
"sensio/distribution-bundle": "^5.0",
"sensio/framework-extra-bundle": "^3.0.2",
"incenteev/composer-parameter-handler": "^2.0",
"twig/twig": "^1.0||^2.0",
"mongodb/mongodb": "^1.1",
"doctrine/mongodb-odm-bundle": "^3.2",
"alcaeus/mongo-php-adapter": "^1.0",
"friendsofsymfony/user-bundle": "2.0.0-beta2",
"friendsofsymfony/oauth-server-bundle": "^1.5",
"symfony/assetic-bundle": "^2.8",
"twig/extensions": "^1.4",
"jms/serializer-bundle": "^1.2",
"friendsofsymfony/rest-bundle": "^2.1"
},
... et voici la sortie d'erreur de Heroku:
> Loading repositories with available runtimes and extensions
> Updating dependencies
> Your requirements could not be resolved to an installable set of packages.
>
> Problem 1
> - Installation request for doctrine/annotations v1.4.0 -> satisfiable by doctrine/annotations[v1.4.0].
> - Installation request for twig/twig v2.3.2 -> satisfiable by twig/twig[v2.3.2].
> - Conclusion: don't install php 7.1.3
> - Installation request for doctrine/mongodb 1.4.0 -> satisfiable by doctrine/mongodb[1.4.0].
> - doctrine/annotations v1.4.0 requires php ^5.6 || ^7.0 -> satisfiable by php[5.6.30, 7.0.15, 7.0.16, 7.0.17, 7.1.1, 7.1.2, 7.1.3].
> - don't install php 7.1.1|don't install php 5.5.38
> - don't install php 7.1.2|don't install php 5.5.38
> - don't install php 7.0.15|don't install php 5.5.38
> - don't install php 7.0.16|don't install php 5.5.38
> - don't install php 7.0.17|don't install php 5.5.38
> - ext-mongo 1.6.14 requires php 5.5.* -> satisfiable by php[5.5.38].
> - doctrine/mongodb 1.4.0 requires ext-mongo ^1.5 -> satisfiable by ext-mongo[1.6.14].
> - ext-mongo 1.6.14 requires php 5.6.* -> satisfiable by php[5.6.30].
> - Conclusion: don't install php 5.6.30