stepFor method
Returns the command template for action on osName, or null if the
action is unsupported on that platform.
Implementation
@override
CommandStep? stepFor(FormulaAction action, String osName) {
switch (osName) {
case 'macos':
switch (action) {
case FormulaAction.install:
return const CommandStep('brew', ['install', 'dart-sdk']);
case FormulaAction.update:
return const CommandStep('brew', ['upgrade', 'dart-sdk']);
case FormulaAction.uninstall:
return const CommandStep('brew', ['uninstall', 'dart-sdk']);
case FormulaAction.verify:
return verifyStep;
default:
return null;
}
case 'linux':
switch (action) {
case FormulaAction.install:
return const CommandStep('sh', [
'-c',
'apt-get update && apt-get install -y dart',
]);
case FormulaAction.update:
return const CommandStep('sh', [
'-c',
'apt-get update && apt-get install -y --only-upgrade dart',
]);
case FormulaAction.uninstall:
return const CommandStep('apt-get', ['remove', '-y', 'dart']);
case FormulaAction.verify:
return verifyStep;
default:
return null;
}
default:
return null;
}
}