mirror of
https://we.phorge.it/source/phorge.git
synced 2024-12-20 20:40:56 +01:00
Support content pre-commit hooks in Mercurial
Summary: Ref T4195. Add Mercurial support to the content hook phase. Test Plan: Here are some `commit` push logs for a Mercurial repo: {F90689} Reviewers: btrahan Reviewed By: btrahan CC: aran Maniphest Tasks: T4195 Differential Revision: https://secure.phabricator.com/D7792
This commit is contained in:
parent
5f4df0f3e3
commit
d90f44ef20
1 changed files with 12 additions and 2 deletions
|
@ -25,6 +25,7 @@ final class DiffusionCommitHookEngine extends Phobject {
|
||||||
private $remoteProtocol;
|
private $remoteProtocol;
|
||||||
private $transactionKey;
|
private $transactionKey;
|
||||||
private $mercurialHook;
|
private $mercurialHook;
|
||||||
|
private $mercurialCommits = array();
|
||||||
|
|
||||||
private $heraldViewerProjects;
|
private $heraldViewerProjects;
|
||||||
|
|
||||||
|
@ -578,6 +579,7 @@ final class DiffusionCommitHookEngine extends Phobject {
|
||||||
|
|
||||||
list($commit_raw) = $futures['commits']->resolvex();
|
list($commit_raw) = $futures['commits']->resolvex();
|
||||||
$commit_map = $this->parseMercurialCommits($commit_raw);
|
$commit_map = $this->parseMercurialCommits($commit_raw);
|
||||||
|
$this->mercurialCommits = $commit_map;
|
||||||
|
|
||||||
list($old_raw) = $futures['old']->resolvex();
|
list($old_raw) = $futures['old']->resolvex();
|
||||||
$old_refs = $this->parseMercurialHeads($old_raw);
|
$old_refs = $this->parseMercurialHeads($old_raw);
|
||||||
|
@ -797,8 +799,16 @@ final class DiffusionCommitHookEngine extends Phobject {
|
||||||
}
|
}
|
||||||
|
|
||||||
private function findMercurialContentUpdates(array $ref_updates) {
|
private function findMercurialContentUpdates(array $ref_updates) {
|
||||||
// TODO: Implement.
|
$content_updates = array();
|
||||||
return array();
|
|
||||||
|
foreach ($this->mercurialCommits as $commit => $branches) {
|
||||||
|
$content_updates[$commit] = $this->newPushLog()
|
||||||
|
->setRefType(PhabricatorRepositoryPushLog::REFTYPE_COMMIT)
|
||||||
|
->setRefNew($commit)
|
||||||
|
->setChangeFlags(PhabricatorRepositoryPushLog::CHANGEFLAG_ADD);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $content_updates;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function parseMercurialCommits($raw) {
|
private function parseMercurialCommits($raw) {
|
||||||
|
|
Loading…
Reference in a new issue