[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/applications/repository/management/ -> PhabricatorRepositoryManagementDiscoverWorkflow.php (source)

   1  <?php
   2  
   3  final class PhabricatorRepositoryManagementDiscoverWorkflow
   4    extends PhabricatorRepositoryManagementWorkflow {
   5  
   6    public function didConstruct() {
   7      $this
   8        ->setName('discover')
   9        ->setExamples('**discover** [__options__] __repository__ ...')
  10        ->setSynopsis('Discover __repository__, named by callsign.')
  11        ->setArguments(
  12          array(
  13            array(
  14              'name'        => 'verbose',
  15              'help'        => 'Show additional debugging information.',
  16            ),
  17            array(
  18              'name'        => 'repair',
  19              'help'        => 'Repair a repository with gaps in commit '.
  20                               'history.',
  21            ),
  22            array(
  23              'name'        => 'repos',
  24              'wildcard'    => true,
  25            ),
  26          ));
  27    }
  28  
  29    public function execute(PhutilArgumentParser $args) {
  30      $repos = $this->loadRepositories($args, 'repos');
  31  
  32      if (!$repos) {
  33        throw new PhutilArgumentUsageException(
  34          'Specify one or more repositories to discover, by callsign.');
  35      }
  36  
  37      $console = PhutilConsole::getConsole();
  38      foreach ($repos as $repo) {
  39        $console->writeOut("Discovering '%s'...\n", $repo->getCallsign());
  40  
  41        id(new PhabricatorRepositoryDiscoveryEngine())
  42          ->setRepository($repo)
  43          ->setVerbose($args->getArg('verbose'))
  44          ->setRepairMode($args->getArg('repair'))
  45          ->discoverCommits();
  46      }
  47  
  48      $console->writeOut("Done.\n");
  49  
  50      return 0;
  51    }
  52  
  53  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1