dynamic_config_generator 0.2.2 dynamic_config_generator: ^0.2.2 copied to clipboard
Dynamically generate config for a build variant using a json file
dynamic_config_generator #
Generate configuration constants for different environments from a json file.
How to use #
- Create a
config.json
file within thetool
directory which contains the keys for a particular variant (check out the Example section for more) - Execute
flutter packages pub run build_runner build --define "dynamic_config_generator|config_builder=variant=$variant"
. The value of the variant would bedebug
orrelease
for the example below.
You can supply $variant via an environment variable in your CI setup.
- This will create
build_config.g.dart
in yourlib
folder - Import this file in the relevant classes and use the generated
BuildConfig
constants.
Example #
{
"debug": {
"is_release": false,
"api_key": "api_key_debug"
},
"release": {
"is_release": true,
"api_key": "api_key_release"
}
}
will generate the file build_config.g.dart
with the following content if you build for the release variant.
abstract class BuildConfig {
static const IS_RELEASE = 'true';
static const API_KEY = 'api_key_release';
}