Remove offline sample targets; load containers from appsettings KnownContainers.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-24 12:20:26 +02:00
co-authored by Cursor
parent d1b95bcb9d
commit ade63d0e43
11 changed files with 956 additions and 131 deletions
@@ -18,6 +18,38 @@ public sealed class SonicContainerDiscovery
public bool HasConnections => _connections.Count > 0;
public IReadOnlyList<SonicConnection> Connections => _connections;
/// <summary>
/// Ziele nur aus appsettings KnownContainers (kein Offline-JSON).
/// </summary>
public IReadOnlyList<DeploymentTarget> BuildTargetsFromConfig()
{
List<DeploymentTarget> result = [];
int id = 1;
foreach (SonicConnection connection in _connections)
{
foreach (string containerName in connection.KnownContainers
.Where(n => !string.IsNullOrWhiteSpace(n)))
{
result.Add(new DeploymentTarget
{
Id = id++,
Name = $"{connection.Name} / {containerName}",
Environment = connection.DomainName,
IsActive = true,
TargetDirectory = string.Empty,
CertificateFileName = string.Empty,
ContainerName = containerName.Trim(),
RestartType = RestartType.SonicContainer,
SonicConnectionName = connection.Name,
SortOrder = id * 10
});
}
}
return result;
}
public async Task<SonicDiscoveryResult> DiscoverAsync(
string connectionName,
IReadOnlyList<DeploymentTarget> knownTargets,