2
0
mirror of synced 2025-02-20 20:18:11 +00:00

32 lines
1.2 KiB
C#
Raw Normal View History

2023-04-25 11:31:15 +02:00
using Logging;
using Utils;
namespace KubernetesWorkflow
2023-04-12 13:53:55 +02:00
{
public class WorkflowCreator
{
private readonly NumberSource numberSource = new NumberSource(0);
2023-04-13 11:07:36 +02:00
private readonly NumberSource containerNumberSource = new NumberSource(0);
private readonly KnownK8sPods knownPods = new KnownK8sPods();
private readonly K8sCluster cluster;
2023-04-25 11:31:15 +02:00
private readonly BaseLog log;
private readonly string testNamespace;
2023-04-25 11:31:15 +02:00
public WorkflowCreator(BaseLog log, Configuration configuration)
{
cluster = new K8sCluster(configuration);
2023-04-25 11:31:15 +02:00
this.log = log;
testNamespace = ApplicationLifecycle.Instance.GetTestNamespace();
}
2023-04-12 13:53:55 +02:00
public StartupWorkflow CreateWorkflow()
{
2023-04-13 11:07:36 +02:00
var workflowNumberSource = new WorkflowNumberSource(numberSource.GetNextNumber(),
2023-05-03 14:18:37 +02:00
ApplicationLifecycle.Instance.GetServiceNumberSource(),
2023-04-13 11:07:36 +02:00
containerNumberSource);
return new StartupWorkflow(log, workflowNumberSource, cluster, knownPods, testNamespace);
2023-04-12 13:53:55 +02:00
}
}
}