refactoring

This commit is contained in:
Saeed Vaziry
2023-08-04 18:28:04 +02:00
parent 8444323cf4
commit 643318fcfc
349 changed files with 3189 additions and 2729 deletions

View File

@ -2,6 +2,7 @@
namespace App\SourceControlProviders;
use App\Exceptions\FailedToDeployGitKey;
use App\Exceptions\FailedToDeployGitHook;
use App\Exceptions\FailedToDestroyGitHook;
use Exception;
@ -33,9 +34,9 @@ public function getRepo(string $repo = null): mixed
return $res->json();
}
public function fullRepoUrl(string $repo): string
public function fullRepoUrl(string $repo, string $key): string
{
return 'https://oauth2:'.$this->sourceControl->access_token.'@gitlab.com/'.$repo.'.git';
return sprintf("git@gitlab.com-%s:%s.git", $key, $repo);
}
/**
@ -114,4 +115,24 @@ public function getLastCommit(string $repo, string $branch): ?array
return null;
}
/**
* @throws FailedToDeployGitKey
*/
public function deployKey(string $title, string $repo, string $key): void
{
$repository = urlencode($repo);
$response = Http::withToken($this->sourceControl->access_token)->post(
$this->apiUrl.'/projects/'.$repository.'/deploy_keys',
[
'title' => 'deploy-key',
'key' => $key,
'can_push' => true,
]
);
if ($response->status() != 201) {
throw new FailedToDeployGitKey(json_decode($response->body())->message);
}
}
}