protected function getBasicCLIArguments()

in src/shipit/phase/ShipItPhaseRunner.php [46:108]


  protected function getBasicCLIArguments(): vec<ShipItCLIArgument> {
    return vec[
      shape(
        'short_name' => 'h',
        'long_name' => 'help',
        'description' => 'show this help message and exit',
      ),
      shape(
        'long_name' => 'base-dir::',
        'description' => 'Path to store repositories',
        'write' => $x ==> {
          $this->manifest = $this->manifest
            ->withBaseDirectory(Str\trim($x));
          return $this->manifest;
        },
      ),
      shape(
        'long_name' => 'source-repo-dir::',
        'description' => 'path to fetch source from',
        'write' => $x ==> {
          $this->manifest = $this->manifest
            ->withSourcePath(Str\trim($x));
          return $this->manifest;
        },
      ),
      shape(
        'long_name' => 'destination-repo-dir::',
        'description' => 'path to push filtered changes to',
        'write' => $x ==> {
          $this->manifest = $this->manifest
            ->withDestinationPath(Str\trim($x));
          return $this->manifest;
        },
      ),
      shape(
        'long_name' => 'source-branch::',
        'description' => "Branch to sync from",
        'write' => $x ==> {
          $this->manifest = $this->manifest
            ->withSourceBranch(Str\trim($x));
          return $this->manifest;
        },
      ),
      shape(
        'long_name' => 'destination-branch::',
        'description' => 'Branch to sync to',
        'write' => $x ==> {
          $this->manifest = $this->manifest
            ->withDestinationBranch(Str\trim($x));
          return $this->manifest;
        },
      ),
      shape(
        'short_name' => 'v',
        'long_name' => 'verbose',
        'description' => 'Give more verbose output',
        'write' => $_ ==> {
          $this->manifest = $this->manifest->withVerboseEnabled();
          return $this->manifest;
        },
      ),
    ];
  }