resolveProject function
The resolved Google Cloud project ID for deployment.
projectInOption takes precedence over GOOGLE_CLOUD_PROJECT.
Throws a StateError when neither source provides a value.
Implementation
String resolveProject(String? projectInOption, {Map<String, String>? env}) {
final String? fromOption = projectInOption?.trim();
if (fromOption != null && fromOption.isNotEmpty) {
return fromOption;
}
final String? fromEnv = (env ?? Platform.environment)['GOOGLE_CLOUD_PROJECT']
?.trim();
if (fromEnv == null || fromEnv.isEmpty) {
throw StateError('GOOGLE_CLOUD_PROJECT is not set.');
}
return fromEnv;
}