Fix: Prevent double deployments when multiple GitHub Apps access same repository (#2315)
Filter webhook-triggered deployments by source_id to ensure only applications associated with the GitHub App that sent the webhook are deployed, preventing duplicate deployments when the same repository is configured in multiple teams.
This commit is contained in:
parent
c1380e7dba
commit
0e47de81d1
1 changed files with 3 additions and 1 deletions
|
|
@ -309,7 +309,9 @@ public function normal(Request $request)
|
|||
if (! $id || ! $branch) {
|
||||
return response('Nothing to do. No id or branch found.');
|
||||
}
|
||||
$applications = Application::where('repository_project_id', $id)->whereRelation('source', 'is_public', false);
|
||||
$applications = Application::where('repository_project_id', $id)
|
||||
->where('source_id', $github_app->id)
|
||||
->whereRelation('source', 'is_public', false);
|
||||
if ($x_github_event === 'push') {
|
||||
$applications = $applications->where('git_branch', $branch)->get();
|
||||
if ($applications->isEmpty()) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue