Full Stack Release Helm/Kubernetes

To manage an application stack holistically, a Declaration is required. From this declaration, desired state can be calculated, i.e. what changes need to be made for an environment to be aligned to the declaration. The tool used in this example is Helmsman, however, another tool, Helmfile has fundamentally the same configuration constructs. Each gather one or more Helm applications to create an application stack. Only the necessary components will be updated if a change is determined, based on a calculated state change.

graph TD subgraph Test subgraph stack1["Declaration"] subgraph app1["Helmchart"] serv1["service"] appt1["pod"] end subgraph app2["Helmchart"] serv2["service"] appp2["pod"] end end end subgraph Prod subgraph stack2["Declaration"] subgraph app3["Helmchart"] serv3["service"] appt3["pod"] end subgraph app4["Helmchart"] serv4["service"] appp4["pod"] end end end serv1 --> appt1 serv2 --> appp2 serv3 --> appt3 serv4 --> appp4 classDef AppStack fill:LightBlue class stack1,stack2 AppStack classDef dotted stroke-dasharray: 2, 2 class stack1,stack2 dotted classDef dashed stroke-dasharray: 5, 5 class app1,app2,app3,app4 dashed