Skip to content

Documented the console environment variables #4665

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Dec 22, 2014
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions cookbook/configuration/environments.rst
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,39 @@ environment by using this code and changing the environment string.
mode. You'll need to enable that in your front controller by calling
:method:`Symfony\\Component\\Debug\\Debug::enable`.

Selecting the Environment for Console Commands
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

By default, Symfony commands are executed in the ``dev`` environment and with the
debug mode enabled. Use the ``--env`` and ``--no-debug`` options to modify this
behavior:

.. code-block:: bash

# 'dev' environment and debug enabled
$ php app/console command_name

# 'prod' environment (debug is always disabled for 'prod')
$ php app/console command_name --env=prod
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is wrong. The console file has a special handling for the prod env, forcing it to be in no-debug mode: https://github.com/symfony/symfony-standard/blob/20516f547e3282a1b3aeec2a284efd311aa9f5a4/app/console#L19
Use --env=test instead for this case


# 'test' environment and debug disabled
$ php app/console command_name --env=test --no-debug

In addition to the ``--env`` and ``--debug`` options, the behavior of Symfony
commands can also be controlled with environment variables. The Symfony console
application checks the existence and value of these environment variables before
executing any command:

``SYMFONY_ENV``
Sets the execution environment of the command to the value of this variable
(``dev``, ``prod``, ``test``, etc.);
``SYMFONY_DEBUG``
If ``0``, debug mode is disabled. Otherwise, debug mode is enabled.

These environment variables are very useful for production servers because they
allow you to ensure that commands always run in the ``prod`` environment without
having to add any command option.

.. index::
single: Environments; Creating a new environment

Expand Down