2023-06-23 06:44:27 +00:00
|
|
|
|
using DistTestCore.Marketplace;
|
|
|
|
|
using KubernetesWorkflow;
|
|
|
|
|
|
|
|
|
|
namespace DistTestCore.Codex
|
|
|
|
|
{
|
|
|
|
|
public class CodexDeployment
|
|
|
|
|
{
|
2023-07-11 10:21:48 +00:00
|
|
|
|
public CodexDeployment(GethStartResult gethStartResult, RunningContainer[] codexContainers, RunningContainer? prometheusContainer, DeploymentMetadata metadata)
|
2023-06-23 06:44:27 +00:00
|
|
|
|
{
|
|
|
|
|
GethStartResult = gethStartResult;
|
|
|
|
|
CodexContainers = codexContainers;
|
2023-07-11 10:21:48 +00:00
|
|
|
|
PrometheusContainer = prometheusContainer;
|
2023-06-23 07:08:18 +00:00
|
|
|
|
Metadata = metadata;
|
2023-06-23 06:44:27 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public GethStartResult GethStartResult { get; }
|
|
|
|
|
public RunningContainer[] CodexContainers { get; }
|
2023-07-11 10:21:48 +00:00
|
|
|
|
public RunningContainer? PrometheusContainer { get; }
|
2023-06-23 07:08:18 +00:00
|
|
|
|
public DeploymentMetadata Metadata { get; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class DeploymentMetadata
|
|
|
|
|
{
|
2023-07-11 10:21:48 +00:00
|
|
|
|
public DeploymentMetadata(string codexImage, string gethImage, string contractsImage, string prometheusImage, string kubeNamespace, int numberOfCodexNodes, int numberOfValidators, int storageQuotaMB, CodexLogLevel codexLogLevel, int initialTestTokens, int minPrice, int maxCollateral, int maxDuration)
|
2023-06-23 07:08:18 +00:00
|
|
|
|
{
|
|
|
|
|
DeployDateTimeUtc = DateTime.UtcNow;
|
|
|
|
|
CodexImage = codexImage;
|
|
|
|
|
GethImage = gethImage;
|
|
|
|
|
ContractsImage = contractsImage;
|
2023-07-11 10:21:48 +00:00
|
|
|
|
PrometheusImage = prometheusImage;
|
2023-06-23 07:08:18 +00:00
|
|
|
|
KubeNamespace = kubeNamespace;
|
|
|
|
|
NumberOfCodexNodes = numberOfCodexNodes;
|
|
|
|
|
NumberOfValidators = numberOfValidators;
|
|
|
|
|
StorageQuotaMB = storageQuotaMB;
|
|
|
|
|
CodexLogLevel = codexLogLevel;
|
2023-06-28 06:48:46 +00:00
|
|
|
|
InitialTestTokens = initialTestTokens;
|
|
|
|
|
MinPrice = minPrice;
|
|
|
|
|
MaxCollateral = maxCollateral;
|
|
|
|
|
MaxDuration = maxDuration;
|
2023-06-23 07:08:18 +00:00
|
|
|
|
}
|
2023-06-28 06:48:46 +00:00
|
|
|
|
|
2023-06-23 07:08:18 +00:00
|
|
|
|
public string CodexImage { get; }
|
|
|
|
|
public DateTime DeployDateTimeUtc { get; }
|
|
|
|
|
public string GethImage { get; }
|
|
|
|
|
public string ContractsImage { get; }
|
2023-07-11 10:21:48 +00:00
|
|
|
|
public string PrometheusImage { get; }
|
2023-06-23 07:08:18 +00:00
|
|
|
|
public string KubeNamespace { get; }
|
|
|
|
|
public int NumberOfCodexNodes { get; }
|
|
|
|
|
public int NumberOfValidators { get; }
|
|
|
|
|
public int StorageQuotaMB { get; }
|
|
|
|
|
public CodexLogLevel CodexLogLevel { get; }
|
2023-06-28 06:48:46 +00:00
|
|
|
|
public int InitialTestTokens { get; }
|
|
|
|
|
public int MinPrice { get; }
|
|
|
|
|
public int MaxCollateral { get; }
|
|
|
|
|
public int MaxDuration { get; }
|
2023-06-23 06:44:27 +00:00
|
|
|
|
}
|
|
|
|
|
}
|