Vixen
02b45cc4
csharp
public interface IFleetGrain

A region's whole fleet: what exists, and what a rollout is aiming at.

Read the guide page for this →

Remarks

Keyed by the region. The singleton doc 27 § Grains describes, and the thing an escalation reaches when a drain cannot finish — which ends in a human or a maintenance window rather than in a kick.

Methods (6)

  • Task<ShardReport[]> Shards()

    Every shard in the region.

  • Task ShardChanged(ShardReport report)

    Told by a map grain when one of its shards changes.

  • Task Escalate(ShardId shard, string reason)

    A drain that could not finish.

  • Task<RealmVersion> Target()

    The version new shards are started on.

  • Task SetTarget(RealmVersion version)

    Points the fleet at a version. Rolling back is the same call with the old pair.

  • Task<double> VersionSpread()

    The fraction of shards not on Target — doc 27 § Upgrades' watched number.

Used by (1)

  • FleetGrainVixen.Live.Orchestrator