create method
Implementation
@override
Future<CommandContext> create(final ArgResults? args) async
{
final configName = args?.option('config');
final envName = args?.option('env');
final askPassword = args?.flag('password') ?? false;
final config = await _getConfig(configName);
final env = config.envs[envName]
?? config.envs['dev']
?? config.envs.values.firstOrNull
;
if (env == null) {
throw const CommandContextException(
'Failed to find the env.\nPlease, specify a valid env in your config.'
);
}
final password = _getPassword(env, askPassword);
return CommandContext(config: config, env: env, password: password);
}