Refactor transferImages
testing/ogcore-api/pipeline/head This commit looks good Details

pull/26/head
Manuel Aranda Rosales 2025-03-17 16:48:29 +01:00
parent 4a76186e97
commit b41c489ce3
4 changed files with 16 additions and 3 deletions

View File

@ -55,7 +55,7 @@ class BackupImageAction extends AbstractOgRepositoryController
$inputData = [
'imageName' => $image->getName(),
'repositoryUuid' => $repository->getUuid(),
'imageUuid' => $imageImageRepository->getUuid(),
'imageImageRepositoryUuid' => $imageImageRepository->getUuid(),
'ID_img' => $imageImageRepository->getImageFullsum(),
'repo_ip' => $input->repoIp,
'remote_path' => $input->remotePath

View File

@ -77,7 +77,7 @@ class ConvertAction extends AbstractOgRepositoryController
$inputData = [
'imageName' => $image,
'imageUuid' => $imageImageRepositoryEntity->getUuid(),
'imageImageRepositoryUuid' => $imageImageRepositoryEntity->getUuid(),
];
$this->createService->__invoke(null, CommandTypes::CONVERT_IMAGE, TraceStatus::IN_PROGRESS, $content['job_id'], $inputData);

View File

@ -34,6 +34,14 @@ class TransferGlobalAction extends AbstractOgRepositoryController
$repositories = $this->entityManager->getRepository(ImageRepository::class)->findAll();
foreach ($repositories as $repository) {
$hasImage = $this->entityManager->getRepository(ImageImageRepository::class)
->findOneBy(['image' => $imageImageRepository->getImage(), 'repository' => $repository]);
if ($hasImage) {
continue;
}
$image = $imageImageRepository->getImage();
$params = [

View File

@ -72,8 +72,13 @@ class ResponseController extends AbstractOgRepositoryController
$image = $this->getImage($trace);
$repository = $this->getRepository($trace);
$originImageImageRepository = $this->getImageImageRepository($trace);
if (!$image) return $this->jsonResponseError('Image not found', Response::HTTP_NOT_FOUND, $trace);
if (!$repository) return $this->jsonResponseError('Repository not found', Response::HTTP_NOT_FOUND, $trace);
if (!$originImageImageRepository) return $this->jsonResponseError('ImageImageRepository not found', Response::HTTP_NOT_FOUND, $trace);
$originImageImageRepository->setStatus(ImageStatus::SUCCESS);
$this->entityManager->persist($originImageImageRepository);
$newImageRepo = new ImageImageRepository();
$newImageRepo->setImage($image);
@ -128,7 +133,7 @@ class ResponseController extends AbstractOgRepositoryController
private function getImageImageRepository(Trace $trace): ?ImageImageRepository
{
return $this->entityManager->getRepository(ImageImageRepository::class)
->findOneBy(['uuid' => $trace->getInput()['imageUuid']]);
->findOneBy(['uuid' => $trace->getInput()['imageImageRepositoryUuid']]);
}
private function jsonResponseError(string $message, int $status = Response::HTTP_BAD_REQUEST, ?Trace $trace = null): JsonResponse