Skip to content

Commit

Permalink
docs: small addition about the namespace of argo-rollouts-config conf…
Browse files Browse the repository at this point in the history
…ig map

Signed-off-by: Philipp Plotnikov <[email protected]>
  • Loading branch information
Philipp-Plotnikov committed Apr 26, 2024
1 parent b4883d2 commit 43d95d1
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion docs/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ cd rollouts-plugin-trafficrouter-gatewayapi

## Argo Rollouts plugin system architecture

When Argo rollouts controller starts it requests the ConfigMap **argo-rollouts-config** from api server of k8s cluster and if it gets it, it validates its content before putting this ConfigMap in RAM. It is important to understand it happens only at the beginning and only one time, so if you will change **argo-rollouts-config** or you will add it after Argo Rollouts controller you will need to restart Argo Rollouts. Controller uses this config map to understand where specified in argo manifest plugins are. When Argo Rollouts learns their locations it downloads and executes them as seperate RPC servers in the same pod. When controller gets specific events, for example events corresponding to the SetWeight action, it makes specific remote procedure call to the needing RPC server and waits its response. Diagram illustrating the main aspects of architecture is below
When Argo Rollouts controller starts, it requests the ConfigMap **argo-rollouts-config** (from the namespace in which controller is located) from api server of k8s cluster and if it gets it, it validates its content before putting this ConfigMap in RAM. It is important to understand it happens only at the beginning and only one time, so if you will change **argo-rollouts-config** or you will add it after Argo Rollouts controller you will need to restart Argo Rollouts. Controller uses this config map to understand where specified in argo manifest plugins are. When Argo Rollouts learns their locations it downloads and executes them as seperate RPC servers in the same pod. When controller gets specific events, for example events corresponding to the SetWeight action, it makes specific remote procedure call to the needing RPC server and waits its response. Diagram illustrating the main aspects of architecture is below

![Argo rollouts plugin system architecture](./images/contributing/argo-rollouts-plugin-system-architecture.png)

Expand Down

0 comments on commit 43d95d1

Please sign in to comment.