Table of Contents

Class PreparedHostedCampaign

Namespace
Valheim.Testing.GameSessions
Assembly
Valheim.Testing.GameSessions.dll

Every role prepared: the resolved environment, in memory, names only the new immutable installs and the observed Steam identities. RunCampaignAsync<TPlan>(string, TPlan, Func<TPlan, IReadOnlyDictionary<string, ClientRunPlan>>, string, PinnedServerRunOptions<TPlan>) runs a plan on it and retires those installs after its processes stop. Run the scenario while this object is alive.

public sealed class PreparedHostedCampaign
Inheritance
object
PreparedHostedCampaign

Properties

Listings

public IReadOnlyDictionary<string, HostListing> Listings { get; }

Property Value

IReadOnlyDictionary<string, HostListing>

Selections

Local reviewed files selected for each process, for deriving ValheimCLI MD5 pins and provenance.

public IReadOnlyDictionary<string, HostedRuntimeFile[]> Selections { get; }

Property Value

IReadOnlyDictionary<string, HostedRuntimeFile[]>

Methods

ApplyTo(ServerRunPlan, HostedCampaignManifest, IReadOnlyDictionary<string, ClientRunPlan>, string)

Bind the reviewed, staged roles to a mod's pinned plan. A mod supplies its own named client sections and scenario assertions; this method handles any number of clients without assuming client-a/client-b.

public void ApplyTo(ServerRunPlan plan, HostedCampaignManifest manifest, IReadOnlyDictionary<string, ClientRunPlan> clients, string outputDirectory)

Parameters

plan ServerRunPlan
manifest HostedCampaignManifest
clients IReadOnlyDictionary<string, ClientRunPlan>
outputDirectory string

DisposeAsync()

Retires the disposable characters and prepared installs (Valheim.Testing.GameSessions.RunRetirement), taking each host's lock for it. A run retires them itself under the locks it holds; this is for a preparation no run used.

public ValueTask DisposeAsync()

Returns

ValueTask

PluginPins(string)

Strict ValheimCLI pins derived from this role's actual selected plugin DLLs, never typed hashes.

public Dictionary<string, string> PluginPins(string role)

Parameters

role string

Returns

Dictionary<string, string>