コード例 #1
0
 public function execute()
 {
     $issues = PhabricatorSetupCheck::runNormalChecks();
     $fatal_issue = null;
     foreach ($issues as $issue) {
         if ($issue->getIsFatal()) {
             $fatal_issue = $issue;
             break;
         }
     }
     if ($fatal_issue) {
         // If we've discovered a fatal, we reset any in-flight state to push
         // web hosts out of service.
         // This can happen if Phabricator starts during a disaster and some
         // databases can not be reached. We allow Phabricator to start up in
         // this situation, since it may still be able to usefully serve requests
         // without risk to data.
         // However, if databases later become reachable and we learn that they
         // are fatally misconfigured, we want to tear the world down again
         // because data may be at risk.
         PhabricatorSetupCheck::resetSetupState();
         return PhabricatorSetupCheck::newIssueResponse($issue);
     }
     $issue_keys = PhabricatorSetupCheck::getUnignoredIssueKeys($issues);
     PhabricatorSetupCheck::setOpenSetupIssueKeys($issue_keys, $update_database = true);
     $this->issues = $issues;
     return null;
 }