Three major use cases:
- Understanding effective configured values.
- Removing database configuration which has become locked after it was set (T5949).
- Migrating old local configuration to the database (original issue here).
Specifically:
- bin/config get should read and return values from the database. Currently, it does not.
- bin/config delete and bin/config set should have a --database flag which affects the database instead of the local config. bin/config set --database should refuse to set locked values.
- bin/config migrate should copy all existent, not-locked local config values to the database.
- Ideally, we should not respect locked configuration values that are set in the database, although this is potentially a big backward compatibility break.
Currently we still have a lot of config sitting in "conf/custom/myconfig.conf.php". Since Phabricator is moving away from this form of configuration, it'd be good to have a tool to migrate the configuration sitting in the myconfig.conf.php to local.conf / DB.