protected async function genRunImpl()

in src/shipit/phase/ShipItCreateNewRepoPhase.php [81:114]


  protected async function genRunImpl(
    ShipItManifest $manifest,
  ): Awaitable<void> {
    $output = $this->outputPath;
    try {
      if ($output === null) {
        $temp_dir = await self::genCreateNewGitRepo(
          $manifest,
          $this->genFilter,
          $this->committer,
          $this->shouldDoSubmodules,
          $this->sourceCommit,
        );
        // Do not delete the output directory.
        $temp_dir->keep();
        $output = $temp_dir->getPath();
      } else {
        await self::genCreateNewGitRepoAt(
          $manifest,
          $output,
          $this->genFilter,
          $this->committer,
          $this->shouldDoSubmodules,
          $this->sourceCommit,
        );
      }
    } catch (\Exception $e) {
      ShipItLogger::err("  Error: %s\n", $e->getMessage());
      throw new ShipItExitException(1);
    }

    ShipItLogger::out("  New repository created at %s\n", $output);
    throw new ShipItExitException(0);
  }