mirror of
https://github.com/logos-storage/logos-storage-nim-cs-dist-tests.git
synced 2026-05-07 09:59:28 +00:00
* ci(docker): build dist-tests images * Update to .net 10, kubernetes client 18.0.13 Kubernetes client 18.0.13 is compatible with Kubernetes 1.34.x. The Kubernetes version is selected automatically by kubeadm in docker desktop (v1.34.1). See https://github.com/kubernetes-client/csharp#version-compatibility for a compatibility table. * Updates to support Kubernetes upgrade * bump openapi.yaml to match openapi.yaml in the logos-storage-nim docker image * bump doc to .net 10 * bump docker to .net 10 * Build image with latest tag always Always build an image with a latest tag (as well as a sha commit hash) when there's a push to master * docker image tag as "latest" only when pushing to master * Update docker image to install doctl * Remove doctl install kubeconfig is now created and uses a plain bearer token instead of using doctl as a credential mgr * Rename and remove all instances of Codex * Further remove CodexNetDeployer as it is no longer needed --------- Co-authored-by: Adam Uhlíř <adam@uhlir.dev>
50 lines
1.8 KiB
C#
50 lines
1.8 KiB
C#
using KubernetesWorkflow;
|
|
using KubernetesWorkflow.Recipe;
|
|
|
|
namespace DeployAndRunPlugin
|
|
{
|
|
public class DeployAndRunContainerRecipe : ContainerRecipeFactory
|
|
{
|
|
public override string AppName => "deploy-and-run";
|
|
public override string Image => "thatbenbierens/dist-tests-deployandrun:initial";
|
|
|
|
protected override void Initialize(StartupConfig config)
|
|
{
|
|
var setup = config.Get<RunConfig>();
|
|
|
|
if (setup.LogosStorageImageOverride != null)
|
|
{
|
|
AddEnvVar("STORAGEDOCKERIMAGE", setup.LogosStorageImageOverride);
|
|
}
|
|
|
|
AddEnvVar("DNR_REP", setup.Replications.ToString());
|
|
AddEnvVar("DNR_NAME", setup.Name);
|
|
AddEnvVar("DNR_FILTER", setup.Filter);
|
|
AddEnvVar("DNR_DURATION", setup.Duration.TotalSeconds.ToString());
|
|
|
|
AddEnvVar("KUBECONFIG", "/opt/kubeconfig.yaml");
|
|
AddEnvVar("LOGPATH", "/var/log/storage-continuous-tests");
|
|
|
|
AddVolume(name: "kubeconfig", mountPath: "/opt/kubeconfig.yaml", subPath: "kubeconfig.yaml", secret: "storage-dist-tests-app-kubeconfig");
|
|
AddVolume(name: "logs", mountPath: "/var/log/storage-continuous-tests", hostPath: "/var/log/storage-continuous-tests");
|
|
}
|
|
}
|
|
|
|
public class RunConfig
|
|
{
|
|
public RunConfig(string name, string filter, TimeSpan duration, int replications, string? logosStorageImageOverride = null)
|
|
{
|
|
Name = name;
|
|
Filter = filter;
|
|
Duration = duration;
|
|
Replications = replications;
|
|
LogosStorageImageOverride = logosStorageImageOverride;
|
|
}
|
|
|
|
public string Name { get; }
|
|
public string Filter { get; }
|
|
public TimeSpan Duration { get; }
|
|
public int Replications { get; }
|
|
public string? LogosStorageImageOverride { get; }
|
|
}
|
|
} |