run method

  1. @override
Future<void> run()
override

Runs this command.

The return value is wrapped in a Future if necessary and returned by CommandRunner.runCommand.

Implementation

@override
Future<void> run() async {
  final keyArg = argResults!['key'] as String?;
  final emailArg = argResults!['email'] as String?;

  final ciRefusal = ciRefusalMessage(
    isCI: Platform.environment.containsKey('CI'),
    hasKeyArg: keyArg != null,
  );
  if (ciRefusal != null) {
    AppLogger.error(ciRefusal);
    exit(ExitCodes.usage);
  }

  if (keyArg != null) {
    await _loginWithKey(keyArg);
  } else {
    await _loginWithPassword(emailArg);
  }
}