From f26f000bb4ba2cbf5e8335381dd0c24db6f29e05 Mon Sep 17 00:00:00 2001 From: Dmitry Khomutov Date: Thu, 20 Apr 2017 21:14:48 +0700 Subject: [PATCH] Refactored push and tag webhooks for Github (Fixes +++). --- src/PHPCensor/Controller/WebhookController.php | 4 ++-- src/PHPCensor/Store/BuildStore.php | 6 ++---- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/PHPCensor/Controller/WebhookController.php b/src/PHPCensor/Controller/WebhookController.php index 37a27766..58ac9ec6 100644 --- a/src/PHPCensor/Controller/WebhookController.php +++ b/src/PHPCensor/Controller/WebhookController.php @@ -246,7 +246,7 @@ class WebhookController extends Controller } else { try { if ($isTag) { - $branch = str_replace('refs/tags/', 'Tag: ', $payload['ref']); + $branch = str_replace('refs/heads/', '', $payload['base_ref']); $committer = $payload['pusher']['email']; } else { $branch = str_replace('refs/heads/', '', $payload['ref']); @@ -513,7 +513,7 @@ class WebhookController extends Controller } // Check if a build already exists for this commit ID: - $builds = $this->buildStore->getByProjectAndCommit($project->getId(), $commitId, $branch); + $builds = $this->buildStore->getByProjectAndCommit($project->getId(), $commitId); $ignore_environments = []; if ($builds['count']) { diff --git a/src/PHPCensor/Store/BuildStore.php b/src/PHPCensor/Store/BuildStore.php index 47485e3f..9c1e1751 100644 --- a/src/PHPCensor/Store/BuildStore.php +++ b/src/PHPCensor/Store/BuildStore.php @@ -180,18 +180,16 @@ class BuildStore extends Store * * @param integer $projectId * @param string $commitId - * @param string $branch * * @return array */ - public function getByProjectAndCommit($projectId, $commitId, $branch) + public function getByProjectAndCommit($projectId, $commitId) { - $query = 'SELECT * FROM {{build}} WHERE {{project_id}} = :project_id AND {{commit_id}} = :commit_id AND {{branch}} = :branch'; + $query = 'SELECT * FROM {{build}} WHERE {{project_id}} = :project_id AND {{commit_id}} = :commit_id'; $stmt = Database::getConnection('read')->prepareCommon($query); $stmt->bindValue(':project_id', $projectId); $stmt->bindValue(':commit_id', $commitId); - $stmt->bindValue(':branch', $branch); if ($stmt->execute()) { $res = $stmt->fetchAll(\PDO::FETCH_ASSOC);