Merge pull request #4066 from nextcloud/enh/4056/fix-image-check

only check if the image is actually there if no image is there
This commit is contained in:
Simon L 2024-01-17 09:58:16 +01:00 committed by GitHub
commit 2c951a784b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -582,14 +582,21 @@ class DockerActionManager
$imageName = $this->BuildImageName($container);
$encodedImageName = urlencode($imageName);
$url = $this->BuildApiUrl(sprintf('images/create?fromImage=%s', $encodedImageName));
$imageIsThere = true;
try {
$this->guzzleClient->post($url);
$imageUrl = $this->BuildApiUrl(sprintf('images/%s/json', $encodedImageName));
$this->guzzleClient->get($imageUrl)->getBody()->getContents();
} catch (\Throwable $e) {
$imageIsThere = false;
}
try {
$this->guzzleClient->post($url);
} catch (RequestException $e) {
if ($imageIsThere === false) {
throw new \Exception("Could not pull image " . $imageName . ". Please run 'sudo docker exec -it nextcloud-aio-mastercontainer docker pull " . $imageName . "' in order to find out why it failed.");
}
}
}
private function isContainerUpdateAvailable(string $id) : string
{