Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Aug 22, 2025

This PR contains the following updates:

Package Change Age Confidence Type Update
github.com/go-logr/logr v1.4.2 -> v1.4.3 age confidence require patch
github.com/sap/component-operator-runtime v0.3.97 -> v0.3.111 age confidence require patch
github.com/sap/go-generics v0.2.32 -> v0.2.38 age confidence require patch
golang 1.25.0 -> 1.25.1 age confidence stage patch
sigs.k8s.io/controller-runtime/tools/setup-envtest 71f7db5 -> 5853152 age confidence require digest

Release Notes

go-logr/logr (github.com/go-logr/logr)

v1.4.3

Compare Source

Minor release.

What's Changed

New Contributors

Full Changelog: go-logr/logr@v1.4.2...v1.4.3

sap/component-operator-runtime (github.com/sap/component-operator-runtime)

v0.3.111

Compare Source

v0.3.110

Compare Source

v0.3.109

Compare Source

v0.3.108

Compare Source

v0.3.107

Compare Source

Enhancements

Status handling

So far, the observed generation of dependent objects was expected at status.observedGeneration. Some newer projects seem to populate status.conditions[type=*].observedGeneration, additionally, or even exclusively.

Starting with this release, if a status hint of has-observed-generation is present, but no status.observedGeneration is found, the framework will look at .status.conditions[type=Ready].observedGeneration as a fallback.

Secret handling

It is well known that the stringData field of secrets is not handled properly during server-side-apply:

Note:
The stringData field for a Secret does not work well with server-side apply.

To overcome, we will now merge stringData into data before applying and clear stringData. This should be consistent with the logic that would otherwise happen in the API server:

All key-value pairs in the stringData field are internally merged into the data field. If a key appears in both the data and the stringData field, the value specified in the stringData field takes precedence.

See SAP#313.

Deletion handling

It is difficult to move dependent objects from one component to another. That means: adding it to the source manifest of the new one, and removing it from the sources of the old one.

The typical flow looks like this:

  • ensure that the receiving component (the new owner) is reconciled before the sending component (the previous owner)
  • annotate the dependent object (in the manifest source used by the new component) with adoption-policy: always, at least for a certain time, until the change is rolled out everywhere.

Then, when applying that, the new component will force-adopt the existing object, and the old component will run into an owner conflict error. This either has then to be solved manually by patching the old component's inventory, or (in a previous apply), the object must have been applied by the old component with delete-policy: orphan or delete-policy: orphan-on-apply.

It would be nice (and reasonable) if - upon dependent deletion, either due to component apply or component deletion - dependents with no or a different owner would be auto-orphaned. This would eliminate the need of the manual post-processing or the preflight apply run setting delete policies (as explained above).

v0.3.106

Compare Source

v0.3.105

Compare Source

v0.3.104

Compare Source

v0.3.103: v03.103

Compare Source

Bug fixes

Fixes #​305.

v0.3.102

Compare Source

Bug fixes

This release fixes #​302.

v0.3.101: v03.101

Compare Source

Bug fixes

Fixes SAP#299.

v0.3.100

Compare Source

v0.3.99

Compare Source

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.yaml and .component-ignore are 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 readFile function (and related functions).

v0.3.98

Compare Source

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"},
)
sap/go-generics (github.com/sap/go-generics)

v0.2.38

Compare Source

v0.2.37

Compare Source

v0.2.36

Compare Source

v0.2.35

Compare Source

v0.2.34

Compare Source

v0.2.33

Compare Source


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Aug 22, 2025
@renovate
Copy link
Contributor Author

renovate bot commented Aug 22, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: go.sum
Command failed: go get -t ./...
go: module github.com/sap/[email protected] requires go >= 1.25.1; switching to go1.25.1
go: downloading go1.25.1 (linux/amd64)
go: download go1.25.1: golang.org/[email protected]: verifying module: checksum database disabled by GOSUMDB=off

@renovate renovate bot force-pushed the renovate/non-minor-deps branch 9 times, most recently from 8bd15fc to 38202a2 Compare August 28, 2025 04:46
@renovate renovate bot force-pushed the renovate/non-minor-deps branch 6 times, most recently from 8fde111 to 0a3652f Compare September 5, 2025 13:03
@renovate renovate bot force-pushed the renovate/non-minor-deps branch 2 times, most recently from 286d101 to 0666e95 Compare September 9, 2025 01:35
@renovate renovate bot force-pushed the renovate/non-minor-deps branch from 0666e95 to 83c6fb7 Compare September 10, 2025 03:45
@cbarbian-sap cbarbian-sap merged commit be4ab46 into main Sep 10, 2025
8 checks passed
@cbarbian-sap cbarbian-sap deleted the renovate/non-minor-deps branch September 10, 2025 08:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants