Added manual sorting for the docker images by id so the index matches always and does not depend on the mood of ef core

I probably will add a global mapping for it in the data context
This commit is contained in:
Marcel Baumgartner
2024-06-12 19:36:46 +02:00
parent b1854c1a30
commit 09d6da4ad3
3 changed files with 23 additions and 2 deletions

View File

@@ -11,6 +11,11 @@ public static class ServerExtensions
{
public static ServerConfiguration ToServerConfiguration(this Server server)
{
// Enforce id based docker image index
server.Image.DockerImages = server.Image.DockerImages
.OrderBy(x => x.Id)
.ToList();
var serverConfiguration = new ServerConfiguration();
// Set general information
@@ -33,9 +38,15 @@ public static class ServerExtensions
ServerDockerImage dockerImage;
if (server.DockerImageIndex >= server.Image.DockerImages.Count || server.DockerImageIndex == -1)
dockerImage = server.Image.DockerImages.Last();
{
dockerImage = server.Image.DockerImages
.Last();
}
else
dockerImage = server.Image.DockerImages[server.DockerImageIndex];
{
dockerImage = server.Image.DockerImages
.ElementAt(server.DockerImageIndex);
}
serverConfiguration.Image.DockerImage = dockerImage.Name;
serverConfiguration.Image.PullDockerImage = dockerImage.AutoPull;

View File

@@ -85,6 +85,11 @@
.Include(x => x.Variables)
.Include(x => x.DockerImages)
.First(x => x.Id == Server.Image.Id);
// Enforce id based docker image index
Image.DockerImages = Image.DockerImages
.OrderBy(x => x.Id)
.ToList();
if (Server.DockerImageIndex >= Image.DockerImages.Count || Server.DockerImageIndex == -1)
SelectedDockerImage = Image.DockerImages.Last();

View File

@@ -81,6 +81,11 @@
if (Image == null)
return;
// Enforce id based docker image index
Image.DockerImages = Image.DockerImages
.OrderBy(x => x.Id)
.ToList();
Form = Mapper.Map<UpdateImageDetailedForm>(Image);
ParseConfigJson = Image.ParseConfiguration;
}