Skip to main content

IOperatorHubCallbacks

Namespace: Meshmakers.Octo.Communication.Contracts.Hubs

Callback interface for operator management connections. The Communication Controller calls these methods on connected operators to notify them of pool deploy / undeploy events for Cloud-environment pools. Edge-environment pools are not pushed — those are installed and run by an external operator outside the central cluster.

public interface IOperatorHubCallbacks

Methods​

PoolDeployedAsync(DeployedPoolDto)​

Called when a Cloud pool is deployed (or re-deployed). The operator should ensure the corresponding CommunicationPool CR and broker secret exist in its pool namespace.

Task PoolDeployedAsync(DeployedPoolDto pool)

Parameters​

pool DeployedPoolDto

Returns​

Task

PoolUndeployedAsync(String, String)​

Called when a Cloud pool is undeployed. The operator should remove the corresponding CommunicationPool CR and broker secret. is the source of truth for locating the derived Kubernetes resources.

Task PoolUndeployedAsync(string tenantId, string poolRtId)

Parameters​

tenantId String

poolRtId String

Returns​

Task

WorkloadDeployedAsync(WorkloadDeployedDto)​

Called when an Adapter or Application managed by a Cloud pool should be deployed (or re-deployed). The operator runs helm upgrade --install against the chart referenced by WorkloadDeployedDto.RepositoryUrl + WorkloadDeployedDto.ChartName + WorkloadDeployedDto.ChartVersion, using WorkloadDeployedDto.ValuesYaml as the base values and WorkloadDeployedDto.Values as structured overrides (deep-merged on top). Secret-flagged overrides arrive decrypted.

Task WorkloadDeployedAsync(WorkloadDeployedDto workload)

Parameters​

workload WorkloadDeployedDto

Returns​

Task

WorkloadUndeployedAsync(WorkloadUndeployedDto)​

Called when an Adapter or Application should be undeployed. The operator runs helm uninstall for the matching release and removes the operator-owned secret if one was created at deploy time.

Task WorkloadUndeployedAsync(WorkloadUndeployedDto workload)

Parameters​

workload WorkloadUndeployedDto

Returns​

Task

ScaleWorkloadAsync(ScaleWorkloadDto)​

Called when an Adapter or Application should be scaled to a specific replica count without touching the Helm release (AB#4917, on-demand lifecycle AB#4914). The operator patches {"spec":{"replicas":N}} on every Deployment carrying the release's app.kubernetes.io/instance label and reports the outcome via IOperatorHub.ReportWorkloadScaleStatusAsync. Operators running an older build without this handler log an unbound-method warning and the controller degrades gracefully (once-only HubException pattern).

Task ScaleWorkloadAsync(ScaleWorkloadDto workload)

Parameters​

workload ScaleWorkloadDto

Returns​

Task

PreUpdateTenantAsync(String)​

Fired by the controller before the tenant's CK model is reloaded / migrated. Mirrors the legacy IPoolHubCallbacks.PreUpdateTenantAsync signal; moved here so the operator only needs the single /operatorHub channel. Operators should let in-flight work settle and prepare to re-register their pools afterwards.

Task PreUpdateTenantAsync(string tenantId)

Parameters​

tenantId String

Returns​

Task