Context
I have a simple Symfony2 project (only command line commands). This project includes an app/config.yml
file, containing information used for dependency injection creation.
For example, app/config.yml
contains:
github:
token: abcdefgh
And src/Foo/Resources/config/github.yml
(services files) contains:
services:
github.client:
class: Github\Client
calls:
- ['authenticate', [%github.token%, null, 'http_token']]
The file app/config.yml
is loaded by Application::__construct()
function.
When I run app/console mycommand
, it uses the defined token.
Needs
I need to be able to run my commands using different configurations.
For now, I replace manually the app/config.yml
file, but it's crappy.
To do this, I thought about 2 possible solutions:
- Be able to specify another
app/config.yml
file when I runapp/console mycommand --f=app/config2.yml
. - Have another configuration file for specific command usage, and use it with
app/console mycommand --f=myconfig.yml
. The thing is the dependency injection can not work or be updated after the application is run.
I don't know how to do one of this solution (or a third one, no matters). If it's a common behavior, can you point me some documentation or example to do something like this?