WorkloadDeployedDto
Namespace: Meshmakers.Octo.Communication.Contracts.DataTransferObjects
Payload for the operator's WorkloadDeployedAsync callback. Carries
everything the operator needs to helm upgrade --install a workload:
chart reference (resolved from the workload's HelmRepositoryConfiguration),
base values, and structured overrides. Secret-flagged overrides are
decrypted by the controller before being placed on the wire — the wire
itself is SignalR-over-TLS.
public record WorkloadDeployedDto : IEquatable<WorkloadDeployedDto>
Inheritance Object → WorkloadDeployedDto
Implements IEquatable<WorkloadDeployedDto>
Properties
TenantId
Tenant the workload belongs to.
public string TenantId { get; set; }
Property Value
PoolRtId
Runtime entity id of the pool that manages this workload. The canonical pool identity on the wire and the source of truth for every derived Kubernetes pool identifier on the operator side. See DeployedPoolDto.PoolRtId for the rationale.
public string PoolRtId { get; set; }
Property Value
WorkloadName
User-facing workload name from the CK entity. Preserved for display and SignalR lookup; the operator does not derive any Kubernetes identifier from it — Helm release / secret names are built from WorkloadDeployedDto.WorkloadRtId instead.
public string WorkloadName { get; set; }
Property Value
WorkloadRtId
Runtime entity id of the workload. Drives the Helm release name
(and therefore the secret name and identity labels) on the
operator side, and is projected into the rendered Helm values as
adapterRtId so the adapter pod can identify itself to the
controller. RtIds are 24-character lowercase hex strings so they
are always RFC 1123 valid without sanitisation.
public string WorkloadRtId { get; set; }
Property Value
WorkloadType
Discriminator between Adapter and Application. The
operator uses this to apply type-specific defaults if needed.
public WorkloadTypeDto WorkloadType { get; set; }
Property Value
RepositoryUrl
Helm repository URL the chart is pulled from. Typically a public or
private GitHub Pages site. Resolved from the workload's
HelmRepositoryConfiguration by the controller.
public string RepositoryUrl { get; set; }
Property Value
RepositoryUsername
Optional basic-auth username for private repositories.
public string RepositoryUsername { get; set; }
Property Value
RepositoryPassword
Optional basic-auth password / PAT for private repositories. Decrypted server-side before being placed on the wire.
public string RepositoryPassword { get; set; }
Property Value
ChartName
Chart name within the repository (e.g. voest-app).
public string ChartName { get; set; }
Property Value
ChartVersion
Chart version (e.g. 1.2.3).
public string ChartVersion { get; set; }
Property Value
ValuesYaml
Base values.yaml content as a YAML string. May be empty when
only structured overrides are used. Acts as the base layer of Helm
values; WorkloadDeployedDto.Values is deep-merged on top.
public string ValuesYaml { get; set; }
Property Value
Values
Structured value overrides. Secret-flagged entries have their ValueOverrideDto.Value already decrypted.
public IReadOnlyList<ValueOverrideDto> Values { get; set; }
Property Value
IReadOnlyList<ValueOverrideDto>
ReceivesClusterSecrets
When true, the operator may inject cluster-internal credentials (MongoDB user/admin passwords, CrateDB password, RabbitMQ password) from its own configuration as secret-flagged value overrides at deploy time. Only relevant for adapters running in the same cluster as the OctoMesh core services. Defaults to false so untrusted / edge workloads do not receive cluster credentials by accident.
public bool ReceivesClusterSecrets { get; set; }
Property Value
IngressEnabled
When true, the operator projects ingress.enabled=true plus
publicUri (built from WorkloadDeployedDto.Hostname) into the
workload's Helm values. Cluster-wide ingress defaults (class name,
cert-manager cluster-issuer, TLS) come from the operator
configuration and are not overridable per workload. Defaults to
false so workloads stay cluster-internal unless explicitly opted in.
public bool IngressEnabled { get; set; }
Property Value
Hostname
Public hostname for the workload when WorkloadDeployedDto.IngressEnabled
is true (e.g. adapter.staging.octo-mesh.com). For Adapter
workloads the chart additionally scopes the path to
/{tenantId}; Application workloads use the root path.
Ignored when WorkloadDeployedDto.IngressEnabled is false.
public string Hostname { get; set; }
Property Value
Constructors
WorkloadDeployedDto()
public WorkloadDeployedDto()