Skip to content

Commit b66fa9e

Browse files
committed
docs: dr motivation
1 parent 33155ed commit b66fa9e

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

docs/documentation/dependent-resources.md

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,29 @@ permalink: /docs/dependent-resources
77

88
# Dependent Resources
99

10-
## Goal
10+
DISCLAIMER: Dependent Resources is relatively new and implementation wise not a simple concept, some APIs could be still
11+
a subject of change in the future. However, in case of non-backwards compatible change is expected to be trivial to
12+
migrate.
13+
14+
## Motivations and Goals
15+
16+
During a reconciliation controller is managing other "secondary" resources. Typically, the following steps are executed:
17+
18+
1. Check if the desired resource already exists (usually if already present in the cache of an EventSource).
19+
2. If the resource not exists create one with the desired spec.
20+
3. If resource already exists, check if the spec of the resources is the same as desired.
21+
1. If the actual spec is different from the desired spec update it.
22+
23+
The process how the resource is read, created, updated or the desired state is compared to the actual state in
24+
Kubernetes API are all generic sub-problems in a reconciler implementation.
25+
The motivation behind Dependent Resource is hide the mentioned problems (and much
26+
more) from the developer and provide a system that allows managing the secondary resources in an
27+
elegant and structured way.
1128

1229
## Design
1330

1431
## Managed Dependent Resources
1532

16-
## Standalone Dependent Resources
33+
## Standalone Dependent Resources
34+
35+
## Other Problems Handled by Dependent Resources

0 commit comments

Comments
 (0)