run method
Future<void>
run({
- GlobalOptions? global,
- String? scriptName,
- bool noSelect = false,
- List<
String> extraArgs = const [],
inherited
Implementation
@override
Future<void> run({
GlobalOptions? global,
String? scriptName,
bool noSelect = false,
List<String> extraArgs = const [],
}) async {
if (config.scripts.keys.isEmpty) throw NoScriptException._();
scriptName ??= await _pickScript(config);
final script = config.scripts[scriptName];
if (script == null) {
throw ScriptNotFoundException._(
scriptName,
config.scripts.keys.toList(),
);
}
final exitCode = await _runScript(
script,
config,
global: global,
noSelect: noSelect,
extraArgs: extraArgs,
);
logger.newLine();
logger.command('melos run ${script.name}');
final resultLogger =
logger.child(targetStyle(script.effectiveRun.replaceAll('\n', '')));
if (exitCode != 0) {
resultLogger.child(failedLabel);
throw ScriptException._(script.name);
}
resultLogger.child(successLabel);
}