29 lines
952 B
Plaintext
29 lines
952 B
Plaintext
sequenceDiagram
|
|
participant User
|
|
participant Controller
|
|
participant InfraBP as InfraBlueprint
|
|
participant ProviderBP as Harvester/Vsphere BP
|
|
participant Strategy
|
|
participant Builder as MasterBuilder
|
|
participant Helm
|
|
|
|
User->>Controller: Create ClusterBlueprint
|
|
Controller->>InfraBP: 1. Get Infra & Quota
|
|
InfraBP-->>Controller: ProviderRef (Kind="HarvesterBlueprint")
|
|
|
|
note over Controller: Dynamic Switching Logic
|
|
|
|
alt Kind is Harvester
|
|
Controller->>ProviderBP: 2. Get Harvester Config
|
|
Controller->>Strategy: 3. Init HarvesterStrategy
|
|
else Kind is Vsphere
|
|
Controller->>ProviderBP: 2. Get Vsphere Config
|
|
Controller->>Strategy: 3. Init VsphereStrategy
|
|
end
|
|
|
|
Controller->>Builder: 4. Build(Strategy)
|
|
Builder->>Strategy: GenerateNodePools()
|
|
Strategy-->>Builder: [Pool A, Pool B]
|
|
Builder-->>Controller: map[values]
|
|
|
|
Controller->>Helm: 5. Apply(values) |