Remove "bin/repository lookup-users" workflow
Summary: Ref T13552. This is one of two callsites to "diffusion.querycommits". It's an old debugging workflow which I haven't used in years and which is likely obsoleted by identities and other changes. I believe the root problem here was also ultimately user error (a user has misconfigured their local Git author email as another user). Test Plan: Grepped for "lookup-users", got no hits. Maniphest Tasks: T13552 Differential Revision: https://secure.phabricator.com/D21444
This commit is contained in:
		| @@ -4588,7 +4588,6 @@ phutil_register_library_map(array( | |||||||
|     'PhabricatorRepositoryManagementImportingWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementImportingWorkflow.php', |     'PhabricatorRepositoryManagementImportingWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementImportingWorkflow.php', | ||||||
|     'PhabricatorRepositoryManagementListPathsWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementListPathsWorkflow.php', |     'PhabricatorRepositoryManagementListPathsWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementListPathsWorkflow.php', | ||||||
|     'PhabricatorRepositoryManagementListWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementListWorkflow.php', |     'PhabricatorRepositoryManagementListWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementListWorkflow.php', | ||||||
|     'PhabricatorRepositoryManagementLookupUsersWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementLookupUsersWorkflow.php', |  | ||||||
|     'PhabricatorRepositoryManagementMaintenanceWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementMaintenanceWorkflow.php', |     'PhabricatorRepositoryManagementMaintenanceWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementMaintenanceWorkflow.php', | ||||||
|     'PhabricatorRepositoryManagementMarkImportedWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementMarkImportedWorkflow.php', |     'PhabricatorRepositoryManagementMarkImportedWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementMarkImportedWorkflow.php', | ||||||
|     'PhabricatorRepositoryManagementMarkReachableWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementMarkReachableWorkflow.php', |     'PhabricatorRepositoryManagementMarkReachableWorkflow' => 'applications/repository/management/PhabricatorRepositoryManagementMarkReachableWorkflow.php', | ||||||
| @@ -11326,7 +11325,6 @@ phutil_register_library_map(array( | |||||||
|     'PhabricatorRepositoryManagementImportingWorkflow' => 'PhabricatorRepositoryManagementWorkflow', |     'PhabricatorRepositoryManagementImportingWorkflow' => 'PhabricatorRepositoryManagementWorkflow', | ||||||
|     'PhabricatorRepositoryManagementListPathsWorkflow' => 'PhabricatorRepositoryManagementWorkflow', |     'PhabricatorRepositoryManagementListPathsWorkflow' => 'PhabricatorRepositoryManagementWorkflow', | ||||||
|     'PhabricatorRepositoryManagementListWorkflow' => 'PhabricatorRepositoryManagementWorkflow', |     'PhabricatorRepositoryManagementListWorkflow' => 'PhabricatorRepositoryManagementWorkflow', | ||||||
|     'PhabricatorRepositoryManagementLookupUsersWorkflow' => 'PhabricatorRepositoryManagementWorkflow', |  | ||||||
|     'PhabricatorRepositoryManagementMaintenanceWorkflow' => 'PhabricatorRepositoryManagementWorkflow', |     'PhabricatorRepositoryManagementMaintenanceWorkflow' => 'PhabricatorRepositoryManagementWorkflow', | ||||||
|     'PhabricatorRepositoryManagementMarkImportedWorkflow' => 'PhabricatorRepositoryManagementWorkflow', |     'PhabricatorRepositoryManagementMarkImportedWorkflow' => 'PhabricatorRepositoryManagementWorkflow', | ||||||
|     'PhabricatorRepositoryManagementMarkReachableWorkflow' => 'PhabricatorRepositoryManagementWorkflow', |     'PhabricatorRepositoryManagementMarkReachableWorkflow' => 'PhabricatorRepositoryManagementWorkflow', | ||||||
|   | |||||||
| @@ -1,115 +0,0 @@ | |||||||
| <?php |  | ||||||
|  |  | ||||||
| final class PhabricatorRepositoryManagementLookupUsersWorkflow |  | ||||||
|   extends PhabricatorRepositoryManagementWorkflow { |  | ||||||
|  |  | ||||||
|   protected function didConstruct() { |  | ||||||
|     $this |  | ||||||
|       ->setName('lookup-users') |  | ||||||
|       ->setExamples('**lookup-users** __commit__ ...') |  | ||||||
|       ->setSynopsis( |  | ||||||
|         pht('Resolve user accounts for users attached to __commit__.')) |  | ||||||
|       ->setArguments( |  | ||||||
|         array( |  | ||||||
|           array( |  | ||||||
|             'name'        => 'commits', |  | ||||||
|             'wildcard'    => true, |  | ||||||
|           ), |  | ||||||
|         )); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   public function execute(PhutilArgumentParser $args) { |  | ||||||
|     $commits = $this->loadCommits($args, 'commits'); |  | ||||||
|     if (!$commits) { |  | ||||||
|       throw new PhutilArgumentUsageException( |  | ||||||
|         pht('Specify one or more commits to resolve users for.')); |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     $console = PhutilConsole::getConsole(); |  | ||||||
|     foreach ($commits as $commit) { |  | ||||||
|       $repo = $commit->getRepository(); |  | ||||||
|       $name =  $repo->formatCommitName($commit->getCommitIdentifier()); |  | ||||||
|  |  | ||||||
|       $console->writeOut( |  | ||||||
|         "%s\n", |  | ||||||
|         pht('Examining commit %s...', $name)); |  | ||||||
|  |  | ||||||
|       $refs_raw = DiffusionQuery::callConduitWithDiffusionRequest( |  | ||||||
|         $this->getViewer(), |  | ||||||
|         DiffusionRequest::newFromDictionary( |  | ||||||
|           array( |  | ||||||
|             'repository' => $repo, |  | ||||||
|             'user' => $this->getViewer(), |  | ||||||
|           )), |  | ||||||
|         'diffusion.querycommits', |  | ||||||
|         array( |  | ||||||
|           'repositoryPHID' => $repo->getPHID(), |  | ||||||
|           'phids' => array($commit->getPHID()), |  | ||||||
|           'bypassCache' => true, |  | ||||||
|         )); |  | ||||||
|  |  | ||||||
|       if (empty($refs_raw['data'])) { |  | ||||||
|         throw new Exception( |  | ||||||
|           pht( |  | ||||||
|             'Unable to retrieve details for commit "%s"!', |  | ||||||
|             $commit->getPHID())); |  | ||||||
|       } |  | ||||||
|  |  | ||||||
|       $ref = DiffusionCommitRef::newFromConduitResult(head($refs_raw['data'])); |  | ||||||
|  |  | ||||||
|       $author = $ref->getAuthor(); |  | ||||||
|       $console->writeOut( |  | ||||||
|         "%s\n", |  | ||||||
|         pht('Raw author string: %s', coalesce($author, 'null'))); |  | ||||||
|  |  | ||||||
|       if ($author !== null) { |  | ||||||
|         $handle = $this->resolveUser($commit, $author); |  | ||||||
|         if ($handle) { |  | ||||||
|           $console->writeOut( |  | ||||||
|             "%s\n", |  | ||||||
|             pht('Phabricator user: %s', $handle->getFullName())); |  | ||||||
|         } else { |  | ||||||
|           $console->writeOut( |  | ||||||
|             "%s\n", |  | ||||||
|             pht('Unable to resolve a corresponding Phabricator user.')); |  | ||||||
|         } |  | ||||||
|       } |  | ||||||
|  |  | ||||||
|       $committer = $ref->getCommitter(); |  | ||||||
|       $console->writeOut( |  | ||||||
|         "%s\n", |  | ||||||
|         pht('Raw committer string: %s', coalesce($committer, 'null'))); |  | ||||||
|  |  | ||||||
|       if ($committer !== null) { |  | ||||||
|         $handle = $this->resolveUser($commit, $committer); |  | ||||||
|         if ($handle) { |  | ||||||
|           $console->writeOut( |  | ||||||
|             "%s\n", |  | ||||||
|             pht('Phabricator user: %s', $handle->getFullName())); |  | ||||||
|         } else { |  | ||||||
|           $console->writeOut( |  | ||||||
|             "%s\n", |  | ||||||
|             pht('Unable to resolve a corresponding Phabricator user.')); |  | ||||||
|         } |  | ||||||
|       } |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     return 0; |  | ||||||
|   } |  | ||||||
|  |  | ||||||
|   private function resolveUser(PhabricatorRepositoryCommit $commit, $name) { |  | ||||||
|     $phid = id(new DiffusionResolveUserQuery()) |  | ||||||
|       ->withName($name) |  | ||||||
|       ->execute(); |  | ||||||
|  |  | ||||||
|     if (!$phid) { |  | ||||||
|       return null; |  | ||||||
|     } |  | ||||||
|  |  | ||||||
|     return id(new PhabricatorHandleQuery()) |  | ||||||
|       ->setViewer($this->getViewer()) |  | ||||||
|       ->withPHIDs(array($phid)) |  | ||||||
|       ->executeOne(); |  | ||||||
|   } |  | ||||||
|  |  | ||||||
| } |  | ||||||
		Reference in New Issue
	
	Block a user
	 epriestley
					epriestley