Laravel Forge Deployment environment variable issu

2019-08-28 07:43发布

My App will not deploy because it is missing required environment variables.

When I set these from within Forge, they appear. As soon as I hit deploy they all disappear, then my deploy fails.

I am using Symfony2 with Digital Ocean - but shouldn't make a difference, the issue is all environment variables get deleted prior to a deploy. That can't be right?

Here is the error message from Symfony, but it is due to the environment variable not being set (in forge I can see it get deleted right before a deploy)

 - Installing tedivm/stash-bundle (v0.4.2)
Loading from cache

 - Installing twig/extensions (v1.2.0)
Loading from cache

Generating autoload files
Creating the "app/config/parameters.yml" file
PHP Fatal error:  Class 'Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle' not found in /home/forge/beta.dashboardhub.io/app/AppKernel.php on line 31
PHP Stack trace:
PHP   1. {main}() /home/forge/beta.dashboardhub.io/app/console:0
PHP   2. Symfony\Component\Console\Application->run() /home/forge/beta.dashboardhub.io/app/console:27
PHP   3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() /home/forge/beta.dashboardhub.io/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:126
PHP   4. Symfony\Component\HttpKernel\Kernel->boot() /home/forge/beta.dashboardhub.io/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:70
PHP   5. Symfony\Component\HttpKernel\Kernel->initializeBundles() /home/forge/beta.dashboardhub.io/app/bootstrap.php.cache:2343
PHP   6. AppKernel->registerBundles() /home/forge/beta.dashboardhub.io/app/bootstrap.php.cache:2513

Fatal error: Class 'Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle' not found in /home/forge/beta.dashboardhub.io/app/AppKernel.php on line 31

Call Stack:
    0.0002     225112   1. {main}() /home/forge/beta.dashboardhub.io/app/console:0
    0.0253    3126784   2. Symfony\Component\Console\Application->run() /home/forge/beta.dashboardhub.io/app/console:27
    0.0279    3329440   3. Symfony\Bundle\FrameworkBundle\Console\Application->doRun() /home/forge/beta.dashboardhub.io/vendor/symfony/symfony/src/Symfony/Component/Console/Application.php:126
    0.0279    3329664   4. Symfony\Component\HttpKernel\Kernel->boot() /home/forge/beta.dashboardhub.io/vendor/symfony/symfony/src/Symfony/Bundle/FrameworkBundle/Console/Application.php:70
    0.0279    3329960   5. Symfony\Component\HttpKernel\Kernel->initializeBundles() /home/forge/beta.dashboardhub.io/app/bootstrap.php.cache:2343
    0.0279    3330560   6. AppKernel->registerBundles() /home/forge/beta.dashboardhub.io/app/bootstrap.php.cache:2513

Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-install-cmd event terminated with an exception



  [RuntimeException]                                                         
  An error occurred when executing the "'cache:clear --no-warmup'" command.  



install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--no-plugins] [--no-custom-installers] [--no-autoloader] [--no-scripts] [--no-progress] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [--ignore-platform-reqs] [packages1] ... [packagesN]

1条回答
孤傲高冷的网名
2楼-- · 2019-08-28 08:12

This is an issue / feature of Forge. It does reset the environment variables before a deploy.

Here is the response from their support...

Yeah that has been a point of confusion I will fix today. Basically the original thought was if you are installing a new project you will want new environment variables, but many people set the environment variables before installing.

Taylor Otwell

So it looks like it will be fixed soon.

I have not been able to find a Forge Ticket, Twitter Account or Deployment changelog to follow this progress.


Temporary Solution / Work around

No there is not currently a deployment change log. I will let you know when it is ready to go. It’s a little trickier than it sounds… for now, you could install the project and just un-check the “Install Composer” step, then add your environment variables, then click the “Deploy” button so it picks up the composer install step.

Taylor Otwell

查看更多
登录 后发表回答