mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-23 23:32:40 +01:00
19b2c3d3d0
Summary: Currently, we have a configuration stack for unit tests, but they're built in to `PhabricatorEnv`. Pull them out and formalize them, so we can add more configuration sources (e.g., database). Test Plan: Ran unit tests, web requests, scripts. This code had fairly good existing test coverage. Reviewers: btrahan, vrana Reviewed By: btrahan CC: aran Maniphest Tasks: T2223, T2221 Differential Revision: https://secure.phabricator.com/D4284
23 lines
636 B
PHP
23 lines
636 B
PHP
<?php
|
|
|
|
/**
|
|
* Configuration source which reads from a configuration file on disk (a
|
|
* PHP file in the conf/ directory). This source
|
|
*/
|
|
final class PhabricatorConfigFileSource
|
|
extends PhabricatorConfigProxySource {
|
|
|
|
/**
|
|
* @phutil-external-symbol function phabricator_read_config_file
|
|
*/
|
|
public function __construct($config) {
|
|
$root = dirname(phutil_get_library_root('phabricator'));
|
|
require_once $root.'/conf/__init_conf__.php';
|
|
|
|
$dictionary = phabricator_read_config_file($config);
|
|
$dictionary['phabricator.env'] = $config;
|
|
|
|
$this->setSource(new PhabricatorConfigDictionarySource($dictionary));
|
|
}
|
|
|
|
}
|