1
0
Fork 0
mirror of synced 2024-09-28 15:31:43 +12:00

Revert "Fix auth injection"

This commit is contained in:
Binyamin Yawitz 2024-09-20 12:24:12 -04:00 committed by GitHub
parent 778edf1ac2
commit 904e4c8650
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 27 additions and 27 deletions

View file

@ -604,9 +604,9 @@ Http::get('/v1/cards/cloud')
->inject('contributors') ->inject('contributors')
->inject('employees') ->inject('employees')
->inject('logger') ->inject('logger')
->inject('authorization') ->inject('auth')
->action(function (string $userId, string $mock, int $width, int $height, Document $user, Document $project, Database $dbForProject, Database $dbForConsole, Response $response, array $heroes, array $contributors, array $employees, ?Logger $logger, Authorization $authorization) use ($getUserGitHub) { ->action(function (string $userId, string $mock, int $width, int $height, Document $user, Document $project, Database $dbForProject, Database $dbForConsole, Response $response, array $heroes, array $contributors, array $employees, ?Logger $logger, Authorization $auth) use ($getUserGitHub) {
$user = $authorization->skip(fn () => $dbForConsole->getDocument('users', $userId)); $user = $auth->skip(fn () => $dbForConsole->getDocument('users', $userId));
if ($user->isEmpty() && empty($mock)) { if ($user->isEmpty() && empty($mock)) {
throw new Exception(Exception::USER_NOT_FOUND); throw new Exception(Exception::USER_NOT_FOUND);
@ -617,7 +617,7 @@ Http::get('/v1/cards/cloud')
$email = $user->getAttribute('email', ''); $email = $user->getAttribute('email', '');
$createdAt = new \DateTime($user->getCreatedAt()); $createdAt = new \DateTime($user->getCreatedAt());
$gitHub = $getUserGitHub($user->getId(), $project, $dbForProject, $dbForConsole, $logger, $authorization); $gitHub = $getUserGitHub($user->getId(), $project, $dbForProject, $dbForConsole, $logger, $auth);
$githubName = $gitHub['name'] ?? ''; $githubName = $gitHub['name'] ?? '';
$githubId = $gitHub['id'] ?? ''; $githubId = $gitHub['id'] ?? '';
@ -812,9 +812,9 @@ Http::get('/v1/cards/cloud-back')
->inject('contributors') ->inject('contributors')
->inject('employees') ->inject('employees')
->inject('logger') ->inject('logger')
->inject('authorization') ->inject('auth')
->action(function (string $userId, string $mock, int $width, int $height, Document $user, Document $project, Database $dbForProject, Database $dbForConsole, Response $response, array $heroes, array $contributors, array $employees, ?Logger $logger, Authorization $authorization) use ($getUserGitHub) { ->action(function (string $userId, string $mock, int $width, int $height, Document $user, Document $project, Database $dbForProject, Database $dbForConsole, Response $response, array $heroes, array $contributors, array $employees, ?Logger $logger, Authorization $auth) use ($getUserGitHub) {
$user = $authorization->skip(fn () => $dbForConsole->getDocument('users', $userId)); $user = $auth->skip(fn () => $dbForConsole->getDocument('users', $userId));
if ($user->isEmpty() && empty($mock)) { if ($user->isEmpty() && empty($mock)) {
throw new Exception(Exception::USER_NOT_FOUND); throw new Exception(Exception::USER_NOT_FOUND);
@ -824,7 +824,7 @@ Http::get('/v1/cards/cloud-back')
$userId = $user->getId(); $userId = $user->getId();
$email = $user->getAttribute('email', ''); $email = $user->getAttribute('email', '');
$gitHub = $getUserGitHub($user->getId(), $project, $dbForProject, $dbForConsole, $logger, $authorization); $gitHub = $getUserGitHub($user->getId(), $project, $dbForProject, $dbForConsole, $logger, $auth);
$githubId = $gitHub['id'] ?? ''; $githubId = $gitHub['id'] ?? '';
$isHero = \array_key_exists($email, $heroes); $isHero = \array_key_exists($email, $heroes);
@ -891,9 +891,9 @@ Http::get('/v1/cards/cloud-og')
->inject('contributors') ->inject('contributors')
->inject('employees') ->inject('employees')
->inject('logger') ->inject('logger')
->inject('authorization') ->inject('auth')
->action(function (string $userId, string $mock, int $width, int $height, Document $user, Document $project, Database $dbForProject, Database $dbForConsole, Response $response, array $heroes, array $contributors, array $employees, ?Logger $logger, Authorization $authorization) use ($getUserGitHub) { ->action(function (string $userId, string $mock, int $width, int $height, Document $user, Document $project, Database $dbForProject, Database $dbForConsole, Response $response, array $heroes, array $contributors, array $employees, ?Logger $logger, Authorization $auth) use ($getUserGitHub) {
$user = $authorization->skip(fn () => $dbForConsole->getDocument('users', $userId)); $user = $auth->skip(fn () => $dbForConsole->getDocument('users', $userId));
if ($user->isEmpty() && empty($mock)) { if ($user->isEmpty() && empty($mock)) {
throw new Exception(Exception::USER_NOT_FOUND); throw new Exception(Exception::USER_NOT_FOUND);
@ -908,7 +908,7 @@ Http::get('/v1/cards/cloud-og')
$email = $user->getAttribute('email', ''); $email = $user->getAttribute('email', '');
$createdAt = new \DateTime($user->getCreatedAt()); $createdAt = new \DateTime($user->getCreatedAt());
$gitHub = $getUserGitHub($user->getId(), $project, $dbForProject, $dbForConsole, $logger, $authorization); $gitHub = $getUserGitHub($user->getId(), $project, $dbForProject, $dbForConsole, $logger, $auth);
$githubName = $gitHub['name'] ?? ''; $githubName = $gitHub['name'] ?? '';
$githubId = $gitHub['id'] ?? ''; $githubId = $gitHub['id'] ?? '';

View file

@ -900,9 +900,9 @@ Http::post('/v1/vcs/github/events')
->inject('dbForConsole') ->inject('dbForConsole')
->inject('getProjectDB') ->inject('getProjectDB')
->inject('queueForBuilds') ->inject('queueForBuilds')
->inject('authorization') ->inject('auth')
->action( ->action(
function (GitHub $github, Request $request, Response $response, Database $dbForConsole, callable $getProjectDB, Build $queueForBuilds, Authorization $authorization) use ($createGitDeployments) { function (GitHub $github, Request $request, Response $response, Database $dbForConsole, callable $getProjectDB, Build $queueForBuilds, Authorization $auth) use ($createGitDeployments) {
$payload = $request->getRawPayload(); $payload = $request->getRawPayload();
$signatureRemote = $request->getHeader('x-hub-signature-256', ''); $signatureRemote = $request->getHeader('x-hub-signature-256', '');
$signatureLocal = System::getEnv('_APP_VCS_GITHUB_WEBHOOK_SECRET', ''); $signatureLocal = System::getEnv('_APP_VCS_GITHUB_WEBHOOK_SECRET', '');
@ -936,14 +936,14 @@ Http::post('/v1/vcs/github/events')
$github->initializeVariables($providerInstallationId, $privateKey, $githubAppId); $github->initializeVariables($providerInstallationId, $privateKey, $githubAppId);
//find functionId from functions table //find functionId from functions table
$repositories = $authorization->skip(fn () => $dbForConsole->find('repositories', [ $repositories = $auth->skip(fn () => $dbForConsole->find('repositories', [
Query::equal('providerRepositoryId', [$providerRepositoryId]), Query::equal('providerRepositoryId', [$providerRepositoryId]),
Query::limit(100), Query::limit(100),
])); ]));
// create new deployment only on push and not when branch is created // create new deployment only on push and not when branch is created
if (!$providerBranchCreated) { if (!$providerBranchCreated) {
$createGitDeployments($github, $providerInstallationId, $repositories, $providerBranch, $providerBranchUrl, $providerRepositoryName, $providerRepositoryUrl, $providerRepositoryOwner, $providerCommitHash, $providerCommitAuthor, $providerCommitAuthorUrl, $providerCommitMessage, $providerCommitUrl, '', false, $dbForConsole, $queueForBuilds, $getProjectDB, $request, $authorization); $createGitDeployments($github, $providerInstallationId, $repositories, $providerBranch, $providerBranchUrl, $providerRepositoryName, $providerRepositoryUrl, $providerRepositoryOwner, $providerCommitHash, $providerCommitAuthor, $providerCommitAuthorUrl, $providerCommitMessage, $providerCommitUrl, '', false, $dbForConsole, $queueForBuilds, $getProjectDB, $request, $auth);
} }
} elseif ($event == $github::EVENT_INSTALLATION) { } elseif ($event == $github::EVENT_INSTALLATION) {
if ($parsedPayload["action"] == "deleted") { if ($parsedPayload["action"] == "deleted") {
@ -956,13 +956,13 @@ Http::post('/v1/vcs/github/events')
]); ]);
foreach ($installations as $installation) { foreach ($installations as $installation) {
$repositories = $authorization->skip(fn () => $dbForConsole->find('repositories', [ $repositories = $auth->skip(fn () => $dbForConsole->find('repositories', [
Query::equal('installationInternalId', [$installation->getInternalId()]), Query::equal('installationInternalId', [$installation->getInternalId()]),
Query::limit(1000) Query::limit(1000)
])); ]));
foreach ($repositories as $repository) { foreach ($repositories as $repository) {
$authorization->skip(fn () => $dbForConsole->deleteDocument('repositories', $repository->getId())); $auth->skip(fn () => $dbForConsole->deleteDocument('repositories', $repository->getId()));
} }
$dbForConsole->deleteDocument('installations', $installation->getId()); $dbForConsole->deleteDocument('installations', $installation->getId());
@ -994,12 +994,12 @@ Http::post('/v1/vcs/github/events')
$providerCommitAuthor = $commitDetails["commitAuthor"] ?? ''; $providerCommitAuthor = $commitDetails["commitAuthor"] ?? '';
$providerCommitMessage = $commitDetails["commitMessage"] ?? ''; $providerCommitMessage = $commitDetails["commitMessage"] ?? '';
$repositories = $authorization->skip(fn () => $dbForConsole->find('repositories', [ $repositories = $auth->skip(fn () => $dbForConsole->find('repositories', [
Query::equal('providerRepositoryId', [$providerRepositoryId]), Query::equal('providerRepositoryId', [$providerRepositoryId]),
Query::orderDesc('$createdAt') Query::orderDesc('$createdAt')
])); ]));
$createGitDeployments($github, $providerInstallationId, $repositories, $providerBranch, $providerBranchUrl, $providerRepositoryName, $providerRepositoryUrl, $providerRepositoryOwner, $providerCommitHash, $providerCommitAuthor, $providerCommitAuthorUrl, $providerCommitMessage, $providerCommitUrl, $providerPullRequestId, $external, $dbForConsole, $queueForBuilds, $getProjectDB, $request, $authorization); $createGitDeployments($github, $providerInstallationId, $repositories, $providerBranch, $providerBranchUrl, $providerRepositoryName, $providerRepositoryUrl, $providerRepositoryOwner, $providerCommitHash, $providerCommitAuthor, $providerCommitAuthorUrl, $providerCommitMessage, $providerCommitUrl, $providerPullRequestId, $external, $dbForConsole, $queueForBuilds, $getProjectDB, $request, $auth);
} elseif ($parsedPayload["action"] == "closed") { } elseif ($parsedPayload["action"] == "closed") {
// Allowed external contributions cleanup // Allowed external contributions cleanup
@ -1008,7 +1008,7 @@ Http::post('/v1/vcs/github/events')
$external = $parsedPayload["external"] ?? true; $external = $parsedPayload["external"] ?? true;
if ($external) { if ($external) {
$repositories = $authorization->skip(fn () => $dbForConsole->find('repositories', [ $repositories = $auth->skip(fn () => $dbForConsole->find('repositories', [
Query::equal('providerRepositoryId', [$providerRepositoryId]), Query::equal('providerRepositoryId', [$providerRepositoryId]),
Query::orderDesc('$createdAt') Query::orderDesc('$createdAt')
])); ]));
@ -1019,7 +1019,7 @@ Http::post('/v1/vcs/github/events')
if (\in_array($providerPullRequestId, $providerPullRequestIds)) { if (\in_array($providerPullRequestId, $providerPullRequestIds)) {
$providerPullRequestIds = \array_diff($providerPullRequestIds, [$providerPullRequestId]); $providerPullRequestIds = \array_diff($providerPullRequestIds, [$providerPullRequestId]);
$repository = $repository->setAttribute('providerPullRequestIds', $providerPullRequestIds); $repository = $repository->setAttribute('providerPullRequestIds', $providerPullRequestIds);
$repository = $authorization->skip(fn () => $dbForConsole->updateDocument('repositories', $repository->getId(), $repository)); $repository = $auth->skip(fn () => $dbForConsole->updateDocument('repositories', $repository->getId(), $repository));
} }
} }
} }
@ -1172,15 +1172,15 @@ Http::patch('/v1/vcs/github/installations/:installationId/repositories/:reposito
->inject('dbForConsole') ->inject('dbForConsole')
->inject('getProjectDB') ->inject('getProjectDB')
->inject('queueForBuilds') ->inject('queueForBuilds')
->inject('authorization') ->inject('auth')
->action(function (string $installationId, string $repositoryId, string $providerPullRequestId, GitHub $github, Request $request, Response $response, Document $project, Database $dbForConsole, callable $getProjectDB, Build $queueForBuilds, Authorization $authorization) use ($createGitDeployments) { ->action(function (string $installationId, string $repositoryId, string $providerPullRequestId, GitHub $github, Request $request, Response $response, Document $project, Database $dbForConsole, callable $getProjectDB, Build $queueForBuilds, Authorization $auth) use ($createGitDeployments) {
$installation = $dbForConsole->getDocument('installations', $installationId); $installation = $dbForConsole->getDocument('installations', $installationId);
if ($installation->isEmpty()) { if ($installation->isEmpty()) {
throw new Exception(Exception::INSTALLATION_NOT_FOUND); throw new Exception(Exception::INSTALLATION_NOT_FOUND);
} }
$repository = $authorization->skip(fn () => $dbForConsole->getDocument('repositories', $repositoryId, [ $repository = $auth->skip(fn () => $dbForConsole->getDocument('repositories', $repositoryId, [
Query::equal('projectInternalId', [$project->getInternalId()]) Query::equal('projectInternalId', [$project->getInternalId()])
])); ]));
@ -1197,7 +1197,7 @@ Http::patch('/v1/vcs/github/installations/:installationId/repositories/:reposito
// TODO: Delete from array when PR is closed // TODO: Delete from array when PR is closed
$repository = $authorization->skip(fn () => $dbForConsole->updateDocument('repositories', $repository->getId(), $repository)); $repository = $auth->skip(fn () => $dbForConsole->updateDocument('repositories', $repository->getId(), $repository));
$privateKey = System::getEnv('_APP_VCS_GITHUB_PRIVATE_KEY'); $privateKey = System::getEnv('_APP_VCS_GITHUB_PRIVATE_KEY');
$githubAppId = System::getEnv('_APP_VCS_GITHUB_APP_ID'); $githubAppId = System::getEnv('_APP_VCS_GITHUB_APP_ID');
@ -1221,7 +1221,7 @@ Http::patch('/v1/vcs/github/installations/:installationId/repositories/:reposito
$providerBranch = \explode(':', $pullRequestResponse['head']['label'])[1] ?? ''; $providerBranch = \explode(':', $pullRequestResponse['head']['label'])[1] ?? '';
$providerCommitHash = $pullRequestResponse['head']['sha'] ?? ''; $providerCommitHash = $pullRequestResponse['head']['sha'] ?? '';
$createGitDeployments($github, $providerInstallationId, $repositories, $providerBranch, $providerCommitHash, $providerPullRequestId, true, $dbForConsole, $queueForBuilds, $getProjectDB, $request, $authorization); $createGitDeployments($github, $providerInstallationId, $repositories, $providerBranch, $providerCommitHash, $providerPullRequestId, true, $dbForConsole, $queueForBuilds, $getProjectDB, $request, $auth);
$response->noContent(); $response->noContent();
}); });