@@ -48,6 +48,7 @@ stateDiagram-v2
4848 POST: Generic POST endpoint
4949 CONFIGMAP: Kubernetes ConfigMap
5050 PLAINTEXT: Plaintext
51+ BASE64: Base64-encoded
5152
5253 DevOps --> Pipeline
5354 Pipeline --> INPUT
@@ -58,6 +59,7 @@ stateDiagram-v2
5859 SOT --> NDAPI
5960 NDAPI --> REDIS
6061 REDIS --> NDAPI
62+ OUTPUT --> BASE64
6163 OUTPUT --> POST
6264 OUTPUT --> CONFIGMAP
6365 OUTPUT --> PLAINTEXT
@@ -77,30 +79,43 @@ title GitOps autosync operations
7779
7880participant CI/CD Pipeline
7981participant Source of Truth
80- participant NGINX Declarative API core
82+ participant NGINX Declarative API Core
83+ participant Redis
8184participant Developer Portal Service
8285participant NGINX Instance Manager
8386participant NGINX
8487
85- CI/CD Pipeline ->> Source of Truth: Commit object updates
88+ box NGINX Declarative API
89+ participant NGINX Declarative API Core
90+ participant Developer Portal Service
91+ participant Redis
92+ end
8693
94+ CI/CD Pipeline ->> Source of Truth: Commit object updates
8795
8896critical Run every "synctime" seconds
8997
90- NGINX Declarative API core -->> Source of Truth: Check for updates
91- Source of Truth -->> NGINX Declarative API core : Latest timestamp
98+ NGINX Declarative API Core ->>+ Source of Truth: Check for referenced objects updates
99+ Source of Truth ->>- NGINX Declarative API Core : Latest timestamp
92100
93- option If updates available
94- NGINX Declarative API core -->> Source of Truth: Pull updated objects
95- Source of Truth -->> NGINX Declarative API core : Updated objects
101+ Note over NGINX Declarative API Core, Redis: data synchronization
96102
97- NGINX Declarative API core -->> Developer Portal Service: DevPortal generation request
98- Developer Portal Service -->> NGINX Declarative API core: DevPortal definition
103+ option If updates available
104+ NGINX Declarative API Core ->>+ Source of Truth: Pull updated objects
105+ Source of Truth ->>- NGINX Declarative API Core : Updated objects
99106
100- NGINX Declarative API core -->> NGINX Declarative API core: Build staged config
101- NGINX Declarative API core -->> NGINX Instance Manager: POST staged config to instance group
107+ critical Build Staged Config
108+ critical If Developer Portal enabled
109+ NGINX Declarative API Core ->>+ Developer Portal Service: DevPortal generation request
110+ Developer Portal Service ->>- NGINX Declarative API Core: DevPortal definition
111+ end
112+ end
102113
114+ NGINX Declarative API Core ->>+ NGINX Instance Manager: Publish staged config to instance group
103115NGINX Instance Manager ->> NGINX: Publish config to NGINX instances
116+ NGINX Instance Manager ->>- NGINX Declarative API Core: Publish outcome
117+
118+ Note over NGINX Declarative API Core, Redis: data synchronization
104119
105120end
106121```
0 commit comments