diff --git a/website/content/en/docs/How it works/architecture-and-design.md b/website/content/en/docs/How it works/architecture-and-design.md index 37c9b0c3..dda2cc01 100644 --- a/website/content/en/docs/How it works/architecture-and-design.md +++ b/website/content/en/docs/How it works/architecture-and-design.md @@ -8,18 +8,21 @@ description: > --- The **Jenkins Operator** design incorporates the following concepts: + - watches any changes of manifests and maintain the desired state according to deployed custom resource manifest - implements the main reconciliation loop which consists of two smaller reconciliation loops - base and user ![reconcile](/kubernetes-operator/img/reconcile.png) **Base** reconciliation loop takes care of reconciling base Jenkins configuration, which consists of: + - Ensure Manifests - monitors any changes in manifests - Ensure Jenkins Pod - creates and verifies status of Jenkins master Pod - Ensure Jenkins Configuration - configures Jenkins instance including hardening, initial configuration for plugins, etc. - Ensure Jenkins API token - generates Jenkins API token and initialized Jenkins client **User** reconciliation loop takes care of reconciling user provided configuration, which consists of: + - Ensure Restore Job - creates Restore job and ensures that restore has been successfully performed - Ensure Seed Jobs - creates Seed Jobs and ensures that all of them have been successfully executed - Ensure User Configuration - executed user provided configuration, like groovy scripts, configuration as code or plugins @@ -30,4 +33,5 @@ The **Jenkins Operator** design incorporates the following concepts: ## Operator State Operator state is kept in custom resource status section, which is used for storing any configuration events or job statuses managed by the operator. -It helps to maintain or recover desired state even after operator or Jenkins restarts. \ No newline at end of file + +It helps to maintain or recover desired state even after operator or Jenkins restarts.