42 lines
1.3 KiB
C#
Raw Normal View History

2023-04-12 13:53:55 +02:00
namespace KubernetesWorkflow
{
public class RunningPod
{
private readonly Dictionary<ContainerRecipe, Port[]> servicePortMap;
public RunningPod(K8sCluster cluster, PodInfo podInfo, string deploymentName, string serviceName, Dictionary<ContainerRecipe, Port[]> servicePortMap)
2023-04-12 13:53:55 +02:00
{
Cluster = cluster;
PodInfo = podInfo;
2023-04-13 11:07:36 +02:00
DeploymentName = deploymentName;
ServiceName = serviceName;
2023-04-12 13:53:55 +02:00
this.servicePortMap = servicePortMap;
}
public K8sCluster Cluster { get; }
public PodInfo PodInfo { get; }
2023-04-13 11:07:36 +02:00
internal string DeploymentName { get; }
internal string ServiceName { get; }
2023-04-12 13:53:55 +02:00
public Port[] GetServicePortsForContainerRecipe(ContainerRecipe containerRecipe)
{
if (!servicePortMap.ContainsKey(containerRecipe)) return Array.Empty<Port>();
2023-04-12 13:53:55 +02:00
return servicePortMap[containerRecipe];
}
}
public class PodInfo
{
public PodInfo(string podName, string podIp, string k8sNodeName)
{
Name = podName;
Ip = podIp;
K8SNodeName = k8sNodeName;
}
public string Name { get; }
public string Ip { get; }
public string K8SNodeName { get; }
}
2023-04-12 13:53:55 +02:00
}