Skip to content

Instantly share code, notes, and snippets.

@chmouel
Created January 20, 2025 18:32
Show Gist options
  • Save chmouel/e38a727436b341cb207cbb35dc4027cf to your computer and use it in GitHub Desktop.
Save chmouel/e38a727436b341cb207cbb35dc4027cf to your computer and use it in GitHub Desktop.
sequenceDiagram
    participant User
    participant Orchestrator
    participant MinionController
    participant PipelineController
    participant MinionReconciler

    User->>Orchestrator: Create pending PipelineRun with annotation (tektoncd.dev/orchestration: true)
    Orchestrator->>Orchestrator: Detects PipelineRun with orchestration annotation
    Orchestrator->>Orchestrator: Retrieves PipelineRun, ConfigMap/Secrets and creates internal job
    Orchestrator->>MinionController: Assigns PipelineRun to Minion (round-robin)
    MinionController->>MinionController: Detects job, creates job in target namespace
    MinionController->>MinionController: Creates PipelineRun, secret, configmap (overriding if needed) and removes "pending" status
    MinionController->>MinionPipelineController: Executes PipelineRun and sets status
    MinionPipelineController->>MinionReconciler: Completes PipelineRun execution
    MinionReconciler->>Reconciler: Checks orchestration annotation, collects status field
    MinionReconciler->>Orchestrator: Sends status back to Orchestrator
    Orchestrator->>Orchestrator: Updates PipelineRun status in Orchestrator cluster
Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment