run method

  1. @override
void run()
override

Runs this command.

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

Implementation

@override
void run() async {
  final argFlavor = argResults.getOptionFlavor(defaultTo: Constants.dev);
  final argMorphemeYaml = argResults.getOptionMorphemeYaml();

  YamlHelper.validateMorphemeYaml(argMorphemeYaml);

  final pathAppstoreDeployment =
      join(current, 'ios', 'deployment', 'appstore_deployment.json');
  if (!exists(pathAppstoreDeployment)) {
    StatusHelper.failed('$pathAppstoreDeployment is not found!');
  }

  final morphemeYaml = YamlHelper.loadFileYaml(argMorphemeYaml);
  final Map appstoreDeployment =
      jsonDecode(readFile(pathAppstoreDeployment))[argFlavor];

  final bundleId = morphemeYaml['flavor'][argFlavor]['IOS_APPLICATION_ID'];

  setupFastlane(bundleId, appstoreDeployment);
  setupProjectIos(bundleId, appstoreDeployment);
  setupExportOptions(bundleId, appstoreDeployment);

  StatusHelper.success('prebuild ios');
}