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 'linux':
switch (action) {
case FormulaAction.install:
return const CommandStep('sh', [
'-c',
'curl -fsSL https://get.docker.com | sh',
]);
case FormulaAction.update:
return const CommandStep('sh', [
'-c',
'apt-get update && apt-get install -y docker-ce',
]);
case FormulaAction.start:
return const CommandStep('systemctl', ['start', 'docker']);
case FormulaAction.stop:
return const CommandStep('systemctl', ['stop', 'docker']);
case FormulaAction.restart:
return const CommandStep('systemctl', ['restart', 'docker']);
case FormulaAction.uninstall:
return const CommandStep('sh', [
'-c',
'apt-get remove -y docker-ce docker-ce-cli',
]);
case FormulaAction.verify:
return verifyStep;
}
case 'macos':
switch (action) {
case FormulaAction.install:
return const CommandStep('brew', ['install', '--cask', 'docker']);
case FormulaAction.uninstall:
return const CommandStep('brew', ['uninstall', '--cask', 'docker']);
case FormulaAction.update:
return const CommandStep('brew', ['upgrade', '--cask', 'docker']);
default:
return null;
}
default:
return null;
}
}