Skip to content

Commit b6981da

Browse files
committed
update README
1 parent 1ef79e3 commit b6981da

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,9 +80,12 @@ It is optional, the default is 10 minutes.
8080
The field `spec.retryInterval` defines the period, after which a component is re-reconciled if a retriable error occurs.
8181
Check the [component-operator-runtime documentation](https://sap.github.io/component-operator-runtime/docs/concepts/reconciler/#tuning-the-retry-behavior) for more details about retriable errors. This field is optional; if unset the retry interval equals the effective requeue interval.
8282

83-
Finally, the field `spec.timeout` defines how long dependent objects are expected to take to become ready. If not all depenents are ready, then the component state is `Processing` until the timeout has elapsed; afterwards, the component state flips to `Error`. Note that the operator still tries to reconcile the dependent objects in that case, just as before. The timeout restarts counting down whenever the component itself, or the rendered dependent manifests change.
83+
Finally, the field `spec.timeout` defines how long dependent objects are expected to take to become ready. If not all depenents are ready, then the component state is `Processing` until the timeout has elapsed; afterwards, the component state flips to `Error`. Note that the operator still tries to reconcile the dependent objects in that case, just as before. The timeout restarts counting down whenever the component itself, or any of the contained references changes.
8484
The timeout field is optional; if unset, it is defaulted with the effective requeue interval.
8585

86+
By default, the operator always reconciles towards the latest state which is defined by the component, and its referenced objects.
87+
By setting the field `spec.sticky` to `true`, this behaviour changes: whenever the revision of the used source reference changes, the operator tries to reconcile this exact source revision until the component reaches a ready state, or the component's timeout is hit. If any source revisions are published within this period, then the latest one will be reconciled when the current one is done (either because of ready state or timeout), and all intermediate revisions are skipped.
88+
8689
### Source reference
8790

8891
The mandatory field `spec.sourceRef` defines the source of the manifests used for generation of the dependent objects.

internal/generator/factory.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ type Item struct {
3131
ValidUntil time.Time
3232
}
3333

34+
// TODO: make configurable
3435
const validity = 60 * time.Minute
3536

3637
var items map[string]*Item
@@ -124,6 +125,7 @@ func downloadArchive(url string, prefix string, dir string, decryptor decrypt.De
124125
prefix = filepath.Clean(prefix)
125126
// TODO: check that prefix is a relative path and does not contain ..
126127

128+
// TODO: use a local or even global file cache
127129
resp, err := http.Get(url)
128130
if err != nil {
129131
return err

0 commit comments

Comments
 (0)