34 lines
1.2 KiB
Plaintext
34 lines
1.2 KiB
Plaintext
@startuml
|
|
|
|
actor User
|
|
participant "Ansible Playbook" as Playbook
|
|
participant "Target Node" as K8s
|
|
participant "Control Node" as ControlNode
|
|
|
|
User -> Playbook: Start Playbook Execution
|
|
Playbook -> Playbook: Save Target IP
|
|
Playbook -> K8s: Install Required Packages
|
|
Playbook -> K8s: Create Service Account
|
|
Playbook -> K8s: Patch Role argo-role (Add pod patch permission)
|
|
Playbook -> K8s: Patch RoleBinding argo-binding (Add service account)
|
|
Playbook -> K8s: Create Token for Service Account
|
|
Playbook -> K8s: Create Source Resource
|
|
Playbook -> K8s: Retrieve Current Kubeconfig
|
|
Playbook -> K8s: Convert Kubeconfig to JSON
|
|
Playbook -> User: Display Worker Kubeconfig
|
|
Playbook -> Playbook: Save Temporary Kubeconfig File
|
|
Playbook -> Playbook: Modify Kubeconfig JSON (Replace user token, set server IP)
|
|
Playbook -> User: Save Updated Kubeconfig File
|
|
Playbook -> User: Display Instructions for Adding Target
|
|
|
|
User -> Playbook: Start Additional Playbook Execution
|
|
Playbook -> Playbook: Store Kubeconfig Value
|
|
Playbook -> User: Display Kubeconfig
|
|
Playbook -> ControlNode : Copy Kubeconfig
|
|
Playbook -> ControlNode: Create Service Account on Target
|
|
Playbook -> ControlNode: Create Authentication Token for Source
|
|
Playbook -> ControlNode: Create Target Resource
|
|
|
|
@enduml
|
|
|