For my Symfony app, I deploy on heroku.
If you use heroku, you note that it runs with git, composer, heroku toolbelt ... etc.
To deploy my app, I have to merge my pull-request on the upstream (fork git workflow). So far, there is no problem, everything works correctly. Once I merge my Pull-request,I have to pull the upstream master on a branch then push this branch on heroku with, for example, this command:
git push prod my-branch:master
To explain you more precisely, this is my git remote when I make git remote -v
in terminal:
coworker https://github.com/my-coworker-repo/my-app.git (fetch)
coworker https://github.com/my-coworker-repo/my-app.git (push)
origin https://github.com/my-origin-repo/my-app.git (fetch)
origin https://github.com/my-origin-repo/my-app.git (push)
upstream https://github.com/my-company-account/my-app.git (fetch)
upstream https://github.com/my-company-account/my-app.git (push)
prod https://git.heroku.com/limitless-peak-.....git (fetch)
prod https://git.heroku.com/limitless-peak-.....git (push)
So when i would like to deploy on heroku with the command git push prod my-branch:master
This error occured:
Counting objects: 41, done. Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done. Writing objects: 100% (15/15), 1.49 KiB | 0 bytes/s, done. Total 15 (delta 10), reused 0 (delta 0)
remote: Compressing source files... done. remote: Building source: remote: remote: -----> PHP app detected remote: remote: !
WARNING: Your 'composer.json' contains a non-'stable' settingremote: for 'minimum-stability'. This may cause the installation of
remote: unstable versions of runtimes and extensions during this
deploy.
remote: It is recommended that you always use stability flags instead,
remote: even if you have 'prefer-stable' enabled. For more information, remote: see https://getcomposer.org/doc/01-basic-usage.md#stability
remote:
remote: -----> Bootstrapping...
remote:
remote: gzip: stdin: not in gzip format
remote: tar: Child returned status 1
remote: tar: Error is not recoverable: exiting now
remote: ! Push rejected, failed to compile PHP app.
remote: remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to my-app.
remote:
To https://git.heroku.com/my-app.git ! [remote rejected] my-branch -> master (pre-receive hook declined) error: impossible de pousser des références vers 'https://git.heroku.com/my-app.git'
If i run a composer update or install into my heroku app heroku run bash -r prod
I have a runtime allow memory limit error, but I don't think the probleme comes from this issue!
this is the error:
PHP Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 32 bytes) in phar:///app/.heroku/php/bin/composer/src/Composer/DependencyResolver/RuleWatchGraph.php on line 52
Fatal error: Allowed memory size of 1073741824 bytes exhausted (tried to allocate 32 bytes) in phar:///app/.heroku/php/bin/composer/src/Composer/DependencyResolver/RuleWatchGraph.php on line 52
Check https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors for more info on how to handle out of memory errors
This is my composer.json file:
{
"name": "symfony/framework-standard-edition",
"license": "MIT",
"type": "project",
"description": "The \"Symfony Standard Edition\" distribution",
"autoload": {
"psr-4": { "": "src/" }
},
"minimum-stability": "alpha",
"prefer-stable": true,
"require": {
"php": "~5.6.0",
"ext-mbstring": "*",
"ext-mcrypt": "*",
"symfony/symfony": "2.7.*",
"doctrine/orm": "^2.4.8",
"doctrine/doctrine-bundle": "~1.4",
"symfony/assetic-bundle": "~2.3",
"symfony/swiftmailer-bundle": "~2.3",
"symfony/monolog-bundle": "~2.8",
"sensio/distribution-bundle": "~4.0",
"sensio/framework-extra-bundle": "^3.0.2",
"incenteev/composer-parameter-handler": "~2.0",
"friendsofsymfony/user-bundle": "~2.0.0",
"knplabs/doctrine-behaviors": "~1.1",
"friendsofsymfony/jsrouting-bundle": "^1.5",
"jms/serializer-bundle": "^1.1",
"genemu/form-bundle": "2.2.*",
"elao/web-profiler-extra-bundle" : "~2.3",
"a2lix/translation-form-bundle": "^2.0",
"ircmaxell/password-compat": "~1.0",
"vich/uploader-bundle": "^0.14.0",
"liip/imagine-bundle": "^1.4",
"doctrine/data-fixtures": "^1.1",
"league/geotools": "@stable",
"winzou/state-machine-bundle": "~0.2.2",
"doctrine/doctrine-fixtures-bundle": "~2.2",
"muka/shape-reader": "dev-master",
"league/csv": "^8.0",
"ronanguilloux/isocodes": "^2.0",
"liuggio/excelbundle": "~2.0",
"presta/sitemap-bundle": "dev-master",
"liip/doctrine-cache-bundle": "^1.0",
"evheniy/robots-txt-bundle": "1.*",
"php-amqplib/rabbitmq-bundle": "^1.9",
"icicleio/icicle": "^0.9.6"
},
"require-dev": {
"sensio/generator-bundle": "~2.3",
"heroku/heroku-buildpack-php": "*"
},
"scripts": {
"pre-install-cmd": [
"BetonDirect\\EntityBundle\\HerokuDatabase::populateEnvironment"
],
"post-install-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
],
"post-update-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
],
"compile": [
"php app/console assetic:dump --no-debug"
]
},
"config": {
"bin-dir": "bin"
},
"extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web",
"symfony-assets-install": "hard-copy",
"incenteev-parameters": {
"file": "app/config/parameters.yml",
},
"branch-alias": {
"dev-master": "2.7-dev"
},
"heroku": {
"php-config": [
"date.timezone=Europe/Paris"
]
}
}
}
Do you know where the problem could be ?
Moreover, I have already put my app with heroku deployment (same method describe as below) with the same configuration, and I have not this error before.
When I go on the heroku log page, I have this:
2016-07-22T15:07:11.164523+00:00 heroku[slug-compiler]: Slug compilation started
And if I go on the heroku build log view I have the same error as the terminal e-g:
-----> PHP app detected
! WARNING: Your 'composer.json' contains a non-'stable' setting
for 'minimum-stability'. This may cause the installation of
unstable versions of runtimes and extensions during this deploy.
It is recommended that you always use stability flags instead,
even if you have 'prefer-stable' enabled. For more information,
see https://getcomposer.org/doc/01-basic-usage.md#stability
-----> Bootstrapping...
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
! Push rejected, failed to compile PHP app.
! Push failed
minimum-stability: alpha
? - chhminimum-stability: "dev"
, I make a composer update cmd, but nothing change. It seems like in fact I have a package with anon-stable
version. What do you think ? - french_dev