mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-25 06:50:55 +01:00
Fix "daemons running as wrong user" setup issue
Summary: Fixes T9385. This was accidentally mangled a bit a long time ago by D12797, which was a 1,000-file change which got almost everything right. Simplify the message and fix all the `%s` conversions and how they map to parameters. Test Plan: {F1220400} Reviewers: chad Reviewed By: chad Maniphest Tasks: T9385 Differential Revision: https://secure.phabricator.com/D15722
This commit is contained in:
parent
20bad9a4ba
commit
cd8491ae93
1 changed files with 33 additions and 42 deletions
|
@ -46,49 +46,40 @@ final class PhabricatorDaemonsSetupCheck extends PhabricatorSetupCheck {
|
||||||
->addCommand('phabricator/ $ ./bin/phd start');
|
->addCommand('phabricator/ $ ./bin/phd start');
|
||||||
}
|
}
|
||||||
|
|
||||||
$phd_user = PhabricatorEnv::getEnvConfig('phd.user');
|
$expect_user = PhabricatorEnv::getEnvConfig('phd.user');
|
||||||
|
if (strlen($expect_user)) {
|
||||||
$all_daemons = id(new PhabricatorDaemonLogQuery())
|
$all_daemons = id(new PhabricatorDaemonLogQuery())
|
||||||
->setViewer(PhabricatorUser::getOmnipotentUser())
|
->setViewer(PhabricatorUser::getOmnipotentUser())
|
||||||
->withStatus(PhabricatorDaemonLogQuery::STATUS_ALIVE)
|
->withStatus(PhabricatorDaemonLogQuery::STATUS_ALIVE)
|
||||||
->execute();
|
->execute();
|
||||||
foreach ($all_daemons as $daemon) {
|
foreach ($all_daemons as $daemon) {
|
||||||
|
$actual_user = $daemon->getRunningAsUser();
|
||||||
if ($phd_user) {
|
if ($actual_user == $expect_user) {
|
||||||
if ($daemon->getRunningAsUser() != $phd_user) {
|
continue;
|
||||||
$doc_href = PhabricatorEnv::getDocLink('Managing Daemons with phd');
|
}
|
||||||
|
|
||||||
$summary = pht(
|
$summary = pht(
|
||||||
'At least one daemon is currently running as a different '.
|
'At least one daemon is currently running as the wrong user.');
|
||||||
'user than configured in the Phabricator %s setting',
|
|
||||||
'phd.user');
|
|
||||||
|
|
||||||
$message = pht(
|
$message = pht(
|
||||||
'A daemon is running as user %s while the Phabricator config '.
|
'A daemon is running as user %s, but daemons should be '.
|
||||||
'specifies %s to be %s.'.
|
'running as %s.'.
|
||||||
"\n\n".
|
"\n\n".
|
||||||
'Either adjust %s to match %s or start '.
|
'Either adjust the configuration setting %s or restart the '.
|
||||||
'the daemons as the correct user. '.
|
'daemons. Daemons should attempt to run as the proper user when '.
|
||||||
"\n\n".
|
'restarted.',
|
||||||
'%s Daemons will try to use %s to start as the configured user. '.
|
phutil_tag('tt', array(), $actual_user),
|
||||||
'Make sure that the user who starts %s has the correct '.
|
phutil_tag('tt', array(), $expect_user),
|
||||||
'sudo permissions to start %s daemons as %s',
|
phutil_tag('tt', array(), 'phd.user'));
|
||||||
'phd.user',
|
|
||||||
'phd.user',
|
|
||||||
'phd',
|
|
||||||
'sudo',
|
|
||||||
'phd',
|
|
||||||
'phd',
|
|
||||||
phutil_tag('tt', array(), $daemon->getRunningAsUser()),
|
|
||||||
phutil_tag('tt', array(), $phd_user),
|
|
||||||
phutil_tag('tt', array(), $daemon->getRunningAsUser()),
|
|
||||||
phutil_tag('tt', array(), $phd_user));
|
|
||||||
|
|
||||||
$this->newIssue('daemons.run-as-different-user')
|
$this->newIssue('daemons.run-as-different-user')
|
||||||
->setName(pht('Daemons are running as the wrong user'))
|
->setName(pht('Daemon Running as Wrong User'))
|
||||||
->setSummary($summary)
|
->setSummary($summary)
|
||||||
->setMessage($message)
|
->setMessage($message)
|
||||||
|
->addPhabricatorConfig('phd.user')
|
||||||
->addCommand('phabricator/ $ ./bin/phd restart');
|
->addCommand('phabricator/ $ ./bin/phd restart');
|
||||||
}
|
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue