Releases: SAP/component-operator-runtime
v0.3.99
Enhancements
KustomizeGenerator
We add the possibility to make the KustomizeGenerator ignore certain files by creating a file called .component-ignore in the kustomization directory (that is the directory passed to NewKustomizeGenerator().
The file uses the usual .gitignore syntax.
Notes:
- Other than git we honour this file only in the root of the specified kustomization, but not in any subdirectories.
- The files
.component-config.yamland.component-ignoreare always included. - Files excluded will not be rendered, and will not be included into a generated
kustomization.yaml(in case the directory does not have one). - However, excluded files can still be retrieved by the
readFilefunction (and related functions).
v0.3.98
Enhancements
This release adds the following metrics:
// # HELP component_operator_runtime_component_state Current state of a component
// # TYPE component_operator_runtime_component_state gauge
ComponentState = prometheus.NewGaugeVec(
prometheus.GaugeOpts{
Name: prefix + "_component_state",
Help: "Current state of a component",
},
[]string{"controller", "group", "kind", "namespace", "name", "state"},
)
// # HELP component_operator_runtime_dependents_total Number of dependent objects
// # TYPE component_operator_runtime_dependents_total gauge
Dependents = prometheus.NewGaugeVec(
prometheus.GaugeOpts{
Name: prefix + "_dependents_total",
Help: "Number of dependent objects",
},
[]string{"controller", "group", "kind", "namespace", "name"},
)
// # HELP component_operator_runtime_unready_dependents_total Number of unready dependent objects
// # TYPE component_operator_runtime_unready_dependents_total gauge
UnreadyDependents = prometheus.NewGaugeVec(
prometheus.GaugeOpts{
Name: prefix + "_unready_dependents_total",
Help: "Number of unready dependent objects",
},
[]string{"controller", "group", "kind", "namespace", "name"},
)v0.3.97: fix(deps): update non-minor dependencies to v0.33.1 (#290)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
v0.3.96
Enhancements
This release makes the force-reapply interval configurable on component and object level.
So far, every object was force-reapplied to the cluster every 60 minutes (even it is seemed to be in sync according to digests). Now, that interval can be tweaked
-
on component level by implementing the new interface
type ReapplyConfiguration interface { // Get force-reapply interval. Should be greater than the effective requeue interval. If a value smaller than the // effective requeue interval is specified, the force-reapply might be delayed until the requeue happens. // A return value of zero means to use the framework default. GetReapplyInterval() time.Duration }
or by including the convenience type
ReapplySpecinto the component's spec. -
on object level (which has higher precedence than the value specified on component level) by setting the annotation
mycomponent-operator.mydomain.io/reapply-interval.
v0.3.95
Fixes/Improvements
This release makes the backoff (used by the reconciler in non-error situations) a little less aggressive.
So far, about 50 almost immediate retries were possible in the first 5 seconds. Now that is reduced to 5 retries, and also the medium backoff range (happening before the final maxDelay backoff kicks in) is relaxed a bit.
To be precise: per backoff topic, the backoff is now
- 5 quick roundtrips (exponential, below 1s)
- then 15 roundtrips at 1s
- then 30 roundtrips at 2s
- then rounttrips at 10s.
v0.3.94: chore(deps): update dependency go to v1.24.3 (#285)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
v0.3.93: fix(go.mod/go.sum): update module github.com/spf13/cast to v1.8.0 (#283)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
v0.3.92
v0.3.91
Enhancements
This release enhances HelmGenerator and KustomizeGenerator, adding mechanisms to access files from the provided Helm chart resp. Kustomization directory.
For HelmGenerator that means, that the .Files builtin is now supported. With some small differences to the original Helm behavior:
- all paths reserved by Helm (such as
Chart.yaml,templates/,crds/and so on) cannot be retrieved through.Files - since
HelmGeneratorcurrently does not honor the.helmignorefile at all, files that would be excluded with regular Helm can be accessed through.FileswithHelmGenerator.
For KustomizeGenerator, there are now three new template functions available:
readFile: takes a path relative to the Kustomization directory and returns the raw content (as []byte slice)existsFile: also expects a path relative to the Kustomization directory and returns a boolean indicating whether the file exists or notlistFiles: accepts a pattern and returns a all matching file paths in the Kustomization directory as string list.
v0.3.90: fix(go.mod/go.sum): update minor dependencies (golang) to v0.33.0 (#277)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>