-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: Refactor NewCachedDescriptorProvider #1695
chore: Refactor NewCachedDescriptorProvider #1695
Conversation
4f8d3f5
to
5c942ea
Compare
5c942ea
to
f402b5e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you explain what is the motivation to reduce the coverage, remove encapsulation and promote modification of the descriptor cache directly?
I don't see a reason for it. You could introduce a specific constructor function instead, so we have one with auto generated cache and one for cache injection for the tests.
the reason is by previous coverage, it fails the test coverage check (from 68 to 66.7) of With the existing test cases and anonymous function constructor, IMO, it should be configured with current percentage: I don't get the reason why needs to inject a cache to this |
The problem is that devs will start to use and modify If we don't need to test the state of the cache in tests, then we don't need a separate constructor function for tests where you can inject the cache reference and later do assertions on it, true.
That's the point. DescriptorProvider adds another layer of logic on top the cache when adding and getting. We want to be able to verify each function separately. We don't want to test the cache, we want to test Provider, so the implementation of cache should be exchangeable. If we keep this pattern of pragmatic opening up of all internal dependencies of our components, then soon run into more cases of the Train Wreck Anti-pattern, or just Train Wreck. The principle of Least Knowledge also known as the Law of Demeter is basically the guideline for my argumentation here. Feel free to have a look! |
I think we are mixing several concepts here. The initial reason for this refactoring is just trying to get rid of initializing this provider with the nil parameter Regarding the answer you provided that you want to test Provider with a different cache, I don't see this in your original code tbh (that's why I don't get the reason in the beginning). If you want to achieve this goal, why give
Then I would design like this below:
I would also design a dedicated constructor for injecting different
So in short summary, in the original implmentation, you already tightly coupled this provider with Secondly, regarding address encapsulation of the last but not least, I think we should apply the design principle which aligned with the current state of the code, also consider the trade-off, take your Law of Demeter as an example, it also brings disadvantage if we take it strictly. So I think we should not use some extreme examples to influence the current state. Also, I like this discussion and open for further improvement, and I appreciate the thoughts you bring for keeping our code quality and aligned with best practices, please don't feel demotivated. |
* chore: Refactor NewCachedDescriptorProvider (#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> * fix bug due to modified ModuleName --------- Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]>
* chore(dependabot): bump golang from 1.22.4-alpine to 1.22.5-alpine (#1664) Bumps golang from 1.22.4-alpine to 1.22.5-alpine. --- updated-dependencies: - dependency-name: golang dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump k8s version for e2e to 1.29.6 (#1665) * chore: Bump k8s version for e2e to 1.29.6 * add wait for main build and bump smoke test version * feat: Avoid Redundant SSA for Manifest Patching (#1620) * feat: avoid redundant ssa for manifest patching * refactor: linting issue * test: add unit test * fix: integration tests * refactor: unwrapped error * fix: state flickering * chore: add linter exception * chore: remove linter exception * fix: null pointer ref in case of mandatory module * chore: Add helpful comment Co-authored-by: Christoph Schwägerl <[email protected]> * feat: add additional diff check in NeedToUpdate() * test: diff check in unit test * refactor: lint * refactor: remove manifest diff check * fix: module template integration test * test: add unit test * Revert "test: add unit test" This reverts commit a5a9102. * Revert "fix: module template integration test" This reverts commit 9ed7e26. * fix integration test * chore: retrigger * refactor: gofunmpt * docs: Apply suggestions from code review Co-authored-by: Małgorzata Świeca <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * chore(dependabot): bump github.com/google/go-containerregistry from 0.19.2 to 0.20.0 (#1670) chore(dependabot): bump github.com/google/go-containerregistry Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.19.2 to 0.20.0. - [Release notes](https://github.com/google/go-containerregistry/releases) - [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml) - [Commits](google/go-containerregistry@v0.19.2...v0.20.0) --- updated-dependencies: - dependency-name: github.com/google/go-containerregistry dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump google.golang.org/grpc from 1.64.0 to 1.64.1 in the go_modules group (#1671) chore(dependabot): bump google.golang.org/grpc in the go_modules group Bumps the go_modules group with 1 update: [google.golang.org/grpc](https://github.com/grpc/grpc-go). Updates `google.golang.org/grpc` from 1.64.0 to 1.64.1 - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](grpc/grpc-go@v1.64.0...v1.64.1) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Remove diff manifest diff checker (#1674) * chore: Remove diff manifest diff checker * retrigger jobs * refactor: Simplify declarative reconciler (#1676) * extract default finalizer from opts * extract field owner and namespace * extract skip label funx * replace obj with manifest for manifest reconcile loop * add skip reconcile check as method. internalize cr deletion check * simplify SpecResolver * fix integration test setup * linting * linting * remove generace cache key * chore: Update Protecode (#1683) update protecode * chore: Refactor NewCachedDescriptorProvider (#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Raj <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]>
* add version to kyma.spec.modules list * add missing manifest update base on moduletemplate generation change. * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * chore: Refactor NewCachedDescriptorProvider (#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * refactor FilterTemplate * add integration test * Update tests/integration/controller/kyma/kyma_module_channel_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * Update tests/integration/controller/kyma/kyma_module_version_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * fix existing test --------- Co-authored-by: Tomasz Smelcerz <[email protected]>
* chore(dependabot): bump golang from 1.22.4-alpine to 1.22.5-alpine (#1664) Bumps golang from 1.22.4-alpine to 1.22.5-alpine. --- updated-dependencies: - dependency-name: golang dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump k8s version for e2e to 1.29.6 (#1665) * chore: Bump k8s version for e2e to 1.29.6 * add wait for main build and bump smoke test version * feat: Avoid Redundant SSA for Manifest Patching (#1620) * feat: avoid redundant ssa for manifest patching * refactor: linting issue * test: add unit test * fix: integration tests * refactor: unwrapped error * fix: state flickering * chore: add linter exception * chore: remove linter exception * fix: null pointer ref in case of mandatory module * chore: Add helpful comment Co-authored-by: Christoph Schwägerl <[email protected]> * feat: add additional diff check in NeedToUpdate() * test: diff check in unit test * refactor: lint * refactor: remove manifest diff check * fix: module template integration test * test: add unit test * Revert "test: add unit test" This reverts commit a5a9102. * Revert "fix: module template integration test" This reverts commit 9ed7e26. * fix integration test * chore: retrigger * refactor: gofunmpt * docs: Apply suggestions from code review Co-authored-by: Małgorzata Świeca <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * chore(dependabot): bump github.com/google/go-containerregistry from 0.19.2 to 0.20.0 (#1670) chore(dependabot): bump github.com/google/go-containerregistry Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.19.2 to 0.20.0. - [Release notes](https://github.com/google/go-containerregistry/releases) - [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml) - [Commits](google/go-containerregistry@v0.19.2...v0.20.0) --- updated-dependencies: - dependency-name: github.com/google/go-containerregistry dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump google.golang.org/grpc from 1.64.0 to 1.64.1 in the go_modules group (#1671) chore(dependabot): bump google.golang.org/grpc in the go_modules group Bumps the go_modules group with 1 update: [google.golang.org/grpc](https://github.com/grpc/grpc-go). Updates `google.golang.org/grpc` from 1.64.0 to 1.64.1 - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](grpc/grpc-go@v1.64.0...v1.64.1) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Remove diff manifest diff checker (#1674) * chore: Remove diff manifest diff checker * retrigger jobs * refactor: Simplify declarative reconciler (#1676) * extract default finalizer from opts * extract field owner and namespace * extract skip label funx * replace obj with manifest for manifest reconcile loop * add skip reconcile check as method. internalize cr deletion check * simplify SpecResolver * fix integration test setup * linting * linting * remove generace cache key * chore: Update Protecode (#1683) update protecode * chore: Refactor NewCachedDescriptorProvider (#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> * feat: Support StatefulSet Module Resource in Ready Check (#1713) * Add implementation to support stateful set * Add unit tests * Start writing E2E test * Adjust Github Actions for E2E test * E2E test implementation * chore(dependabot): bump github.com/onsi/gomega from 1.33.1 to 1.34.0 (#1723) Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.33.1 to 1.34.0. - [Release notes](https://github.com/onsi/gomega/releases) - [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md) - [Commits](onsi/gomega@v1.33.1...v1.34.0) --- updated-dependencies: - dependency-name: github.com/onsi/gomega dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * deps: Use latest watcher img 1.1.1 (#1726) * deps: Bump sec-scanners-config KLM img tag to 1.1.1 (#1728) * chore: Add deprecation notes to customStateCheck (#1708) * Add deprecation notes * Update docs/technical-reference/api/moduleTemplate-cr.md Co-authored-by: Małgorzata Świeca <[email protected]> * Configure API version exclusion * Update docs/technical-reference/api/moduleTemplate-cr.md Co-authored-by: Małgorzata Świeca <[email protected]> * review fix --------- Co-authored-by: Małgorzata Świeca <[email protected]> * chore(dependabot): bump github.com/onsi/gomega from 1.34.0 to 1.34.1 (#1729) Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.34.0 to 1.34.1. - [Release notes](https://github.com/onsi/gomega/releases) - [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md) - [Commits](onsi/gomega@v1.34.0...v1.34.1) --- updated-dependencies: - dependency-name: github.com/onsi/gomega dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump github.com/onsi/ginkgo/v2 from 2.19.0 to 2.19.1 (#1727) Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.19.0 to 2.19.1. - [Release notes](https://github.com/onsi/ginkgo/releases) - [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md) - [Commits](onsi/ginkgo@v2.19.0...v2.19.1) --- updated-dependencies: - dependency-name: github.com/onsi/ginkgo/v2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump github.com/docker/docker from 26.1.3+incompatible to 26.1.4+incompatible in the go_modules group (#1731) chore(dependabot): bump github.com/docker/docker in the go_modules group Bumps the go_modules group with 1 update: [github.com/docker/docker](https://github.com/docker/docker). Updates `github.com/docker/docker` from 26.1.3+incompatible to 26.1.4+incompatible - [Release notes](https://github.com/docker/docker/releases) - [Commits](moby/moby@v26.1.3...v26.1.4) --- updated-dependencies: - dependency-name: github.com/docker/docker dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump github.com/cert-manager/cert-manager from 1.15.1 to 1.15.2 (#1730) chore(dependabot): bump github.com/cert-manager/cert-manager Bumps [github.com/cert-manager/cert-manager](https://github.com/cert-manager/cert-manager) from 1.15.1 to 1.15.2. - [Release notes](https://github.com/cert-manager/cert-manager/releases) - [Changelog](https://github.com/cert-manager/cert-manager/blob/master/RELEASE.md) - [Commits](cert-manager/cert-manager@v1.15.1...v1.15.2) --- updated-dependencies: - dependency-name: github.com/cert-manager/cert-manager dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tomasz Smelcerz <[email protected]> * chore: Limit access for remote and istio namespaces (#1722) * Limit access for remote and istio namespaces * Adjust E2E test * Empty-Commit * Change ClusterRole to Role * Review comments * chore(dependabot): bump github.com/docker/docker from 26.1.3+incompatible to 26.1.4+incompatible in /api in the go_modules group (#1732) chore(dependabot): bump github.com/docker/docker Bumps the go_modules group in /api with 1 update: [github.com/docker/docker](https://github.com/docker/docker). Updates `github.com/docker/docker` from 26.1.3+incompatible to 26.1.4+incompatible - [Release notes](https://github.com/docker/docker/releases) - [Commits](moby/moby@v26.1.3...v26.1.4) --- updated-dependencies: - dependency-name: github.com/docker/docker dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tomasz Smelcerz <[email protected]> * chore(dependabot): bump github.com/open-component-model/ocm from 0.11.0 to 0.12.0 in /api (#1705) * chore(dependabot): bump github.com/open-component-model/ocm in /api Bumps [github.com/open-component-model/ocm](https://github.com/open-component-model/ocm) from 0.11.0 to 0.12.0. - [Release notes](https://github.com/open-component-model/ocm/releases) - [Changelog](https://github.com/open-component-model/ocm/blob/main/.goreleaser.yaml) - [Commits](open-component-model/ocm@v0.11.0...v0.12.0) --- updated-dependencies: - dependency-name: github.com/open-component-model/ocm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * bump ocm in lifecycle-manager --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tomasz Smelcerz <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> Co-authored-by: Xin Ruan <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Tomasz Smelcerz <[email protected]>
* feat: Re-add `.spec.modules[].managed` to KymaCR (#1661) feat: Re-add '.spec.modules[].managed' to KymaCR * feat: Add AssociatedResources field to Manifest Spec (#1656) * Add managedResources to ManifestSpec * Add managedResources to ManifestSpec * Fix docs deadlink * Adjust docs * Code review comments * TWS review * Renaming ManagedResources to AssociatedResources * Update manifest-cr.md Co-authored-by: Małgorzata Świeca <[email protected]> * Update manifest-cr.md Co-authored-by: Małgorzata Świeca <[email protected]> * Update manifest_types.go Co-authored-by: Małgorzata Świeca <[email protected]> --------- Co-authored-by: Małgorzata Świeca <[email protected]> * chore: Create ModuleTemplate with new ocm format for e2e (#1660) * create module-template with new ocm format and managed resource * chore(dependabot): bump golang from 1.22.4-alpine to 1.22.5-alpine (#1664) Bumps golang from 1.22.4-alpine to 1.22.5-alpine. --- updated-dependencies: - dependency-name: golang dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump k8s version for e2e to 1.29.6 (#1665) * chore: Bump k8s version for e2e to 1.29.6 * add wait for main build and bump smoke test version * feat: Avoid Redundant SSA for Manifest Patching (#1620) * feat: avoid redundant ssa for manifest patching * refactor: linting issue * test: add unit test * fix: integration tests * refactor: unwrapped error * fix: state flickering * chore: add linter exception * chore: remove linter exception * fix: null pointer ref in case of mandatory module * chore: Add helpful comment Co-authored-by: Christoph Schwägerl <[email protected]> * feat: add additional diff check in NeedToUpdate() * test: diff check in unit test * refactor: lint * refactor: remove manifest diff check * fix: module template integration test * test: add unit test * Revert "test: add unit test" This reverts commit a5a9102. * Revert "fix: module template integration test" This reverts commit 9ed7e26. * fix integration test * chore: retrigger * refactor: gofunmpt * docs: Apply suggestions from code review Co-authored-by: Małgorzata Świeca <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * rename * Revert "Merge branch 'main' into intro-test-managed-resources" This reverts commit 854b8b4, reversing changes made to be4f556. * update module template * update module template * retrigger jobs --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Raj <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * chore: Merge main into deletion modes feature (#1678) * chore(dependabot): bump golang from 1.22.4-alpine to 1.22.5-alpine (#1664) Bumps golang from 1.22.4-alpine to 1.22.5-alpine. --- updated-dependencies: - dependency-name: golang dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump k8s version for e2e to 1.29.6 (#1665) * chore: Bump k8s version for e2e to 1.29.6 * add wait for main build and bump smoke test version * feat: Avoid Redundant SSA for Manifest Patching (#1620) * feat: avoid redundant ssa for manifest patching * refactor: linting issue * test: add unit test * fix: integration tests * refactor: unwrapped error * fix: state flickering * chore: add linter exception * chore: remove linter exception * fix: null pointer ref in case of mandatory module * chore: Add helpful comment Co-authored-by: Christoph Schwägerl <[email protected]> * feat: add additional diff check in NeedToUpdate() * test: diff check in unit test * refactor: lint * refactor: remove manifest diff check * fix: module template integration test * test: add unit test * Revert "test: add unit test" This reverts commit a5a9102. * Revert "fix: module template integration test" This reverts commit 9ed7e26. * fix integration test * chore: retrigger * refactor: gofunmpt * docs: Apply suggestions from code review Co-authored-by: Małgorzata Świeca <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * chore(dependabot): bump github.com/google/go-containerregistry from 0.19.2 to 0.20.0 (#1670) chore(dependabot): bump github.com/google/go-containerregistry Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.19.2 to 0.20.0. - [Release notes](https://github.com/google/go-containerregistry/releases) - [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml) - [Commits](google/go-containerregistry@v0.19.2...v0.20.0) --- updated-dependencies: - dependency-name: github.com/google/go-containerregistry dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump google.golang.org/grpc from 1.64.0 to 1.64.1 in the go_modules group (#1671) chore(dependabot): bump google.golang.org/grpc in the go_modules group Bumps the go_modules group with 1 update: [google.golang.org/grpc](https://github.com/grpc/grpc-go). Updates `google.golang.org/grpc` from 1.64.0 to 1.64.1 - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](grpc/grpc-go@v1.64.0...v1.64.1) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Remove diff manifest diff checker (#1674) * chore: Remove diff manifest diff checker * retrigger jobs * refactor: Simplify declarative reconciler (#1676) * extract default finalizer from opts * extract field owner and namespace * extract skip label funx * replace obj with manifest for manifest reconcile loop * add skip reconcile check as method. internalize cr deletion check * simplify SpecResolver * fix integration test setup * linting * linting * remove generace cache key --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Raj <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * chore: Remove associatedResources field from Manifest CR (#1689) Revert "feat: Add AssociatedResources field to Manifest Spec (#1656)" This reverts commit 2e620d7. * chore: Sync deletion mode feature branch (#1720) * chore(dependabot): bump golang from 1.22.4-alpine to 1.22.5-alpine (#1664) Bumps golang from 1.22.4-alpine to 1.22.5-alpine. --- updated-dependencies: - dependency-name: golang dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump k8s version for e2e to 1.29.6 (#1665) * chore: Bump k8s version for e2e to 1.29.6 * add wait for main build and bump smoke test version * feat: Avoid Redundant SSA for Manifest Patching (#1620) * feat: avoid redundant ssa for manifest patching * refactor: linting issue * test: add unit test * fix: integration tests * refactor: unwrapped error * fix: state flickering * chore: add linter exception * chore: remove linter exception * fix: null pointer ref in case of mandatory module * chore: Add helpful comment Co-authored-by: Christoph Schwägerl <[email protected]> * feat: add additional diff check in NeedToUpdate() * test: diff check in unit test * refactor: lint * refactor: remove manifest diff check * fix: module template integration test * test: add unit test * Revert "test: add unit test" This reverts commit a5a9102. * Revert "fix: module template integration test" This reverts commit 9ed7e26. * fix integration test * chore: retrigger * refactor: gofunmpt * docs: Apply suggestions from code review Co-authored-by: Małgorzata Świeca <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * chore(dependabot): bump github.com/google/go-containerregistry from 0.19.2 to 0.20.0 (#1670) chore(dependabot): bump github.com/google/go-containerregistry Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.19.2 to 0.20.0. - [Release notes](https://github.com/google/go-containerregistry/releases) - [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml) - [Commits](google/go-containerregistry@v0.19.2...v0.20.0) --- updated-dependencies: - dependency-name: github.com/google/go-containerregistry dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump google.golang.org/grpc from 1.64.0 to 1.64.1 in the go_modules group (#1671) chore(dependabot): bump google.golang.org/grpc in the go_modules group Bumps the go_modules group with 1 update: [google.golang.org/grpc](https://github.com/grpc/grpc-go). Updates `google.golang.org/grpc` from 1.64.0 to 1.64.1 - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](grpc/grpc-go@v1.64.0...v1.64.1) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Remove diff manifest diff checker (#1674) * chore: Remove diff manifest diff checker * retrigger jobs * refactor: Simplify declarative reconciler (#1676) * extract default finalizer from opts * extract field owner and namespace * extract skip label funx * replace obj with manifest for manifest reconcile loop * add skip reconcile check as method. internalize cr deletion check * simplify SpecResolver * fix integration test setup * linting * linting * remove generace cache key * chore: Update Protecode (#1683) update protecode * chore: Refactor NewCachedDescriptorProvider (#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Raj <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]> * chore: Sync main into deletion mode feature (#1736) * chore(dependabot): bump golang from 1.22.4-alpine to 1.22.5-alpine (#1664) Bumps golang from 1.22.4-alpine to 1.22.5-alpine. --- updated-dependencies: - dependency-name: golang dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Bump k8s version for e2e to 1.29.6 (#1665) * chore: Bump k8s version for e2e to 1.29.6 * add wait for main build and bump smoke test version * feat: Avoid Redundant SSA for Manifest Patching (#1620) * feat: avoid redundant ssa for manifest patching * refactor: linting issue * test: add unit test * fix: integration tests * refactor: unwrapped error * fix: state flickering * chore: add linter exception * chore: remove linter exception * fix: null pointer ref in case of mandatory module * chore: Add helpful comment Co-authored-by: Christoph Schwägerl <[email protected]> * feat: add additional diff check in NeedToUpdate() * test: diff check in unit test * refactor: lint * refactor: remove manifest diff check * fix: module template integration test * test: add unit test * Revert "test: add unit test" This reverts commit a5a9102. * Revert "fix: module template integration test" This reverts commit 9ed7e26. * fix integration test * chore: retrigger * refactor: gofunmpt * docs: Apply suggestions from code review Co-authored-by: Małgorzata Świeca <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> * chore(dependabot): bump github.com/google/go-containerregistry from 0.19.2 to 0.20.0 (#1670) chore(dependabot): bump github.com/google/go-containerregistry Bumps [github.com/google/go-containerregistry](https://github.com/google/go-containerregistry) from 0.19.2 to 0.20.0. - [Release notes](https://github.com/google/go-containerregistry/releases) - [Changelog](https://github.com/google/go-containerregistry/blob/main/.goreleaser.yml) - [Commits](google/go-containerregistry@v0.19.2...v0.20.0) --- updated-dependencies: - dependency-name: github.com/google/go-containerregistry dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump google.golang.org/grpc from 1.64.0 to 1.64.1 in the go_modules group (#1671) chore(dependabot): bump google.golang.org/grpc in the go_modules group Bumps the go_modules group with 1 update: [google.golang.org/grpc](https://github.com/grpc/grpc-go). Updates `google.golang.org/grpc` from 1.64.0 to 1.64.1 - [Release notes](https://github.com/grpc/grpc-go/releases) - [Commits](grpc/grpc-go@v1.64.0...v1.64.1) --- updated-dependencies: - dependency-name: google.golang.org/grpc dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore: Remove diff manifest diff checker (#1674) * chore: Remove diff manifest diff checker * retrigger jobs * refactor: Simplify declarative reconciler (#1676) * extract default finalizer from opts * extract field owner and namespace * extract skip label funx * replace obj with manifest for manifest reconcile loop * add skip reconcile check as method. internalize cr deletion check * simplify SpecResolver * fix integration test setup * linting * linting * remove generace cache key * chore: Update Protecode (#1683) update protecode * chore: Refactor NewCachedDescriptorProvider (#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> * feat: Support StatefulSet Module Resource in Ready Check (#1713) * Add implementation to support stateful set * Add unit tests * Start writing E2E test * Adjust Github Actions for E2E test * E2E test implementation * chore(dependabot): bump github.com/onsi/gomega from 1.33.1 to 1.34.0 (#1723) Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.33.1 to 1.34.0. - [Release notes](https://github.com/onsi/gomega/releases) - [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md) - [Commits](onsi/gomega@v1.33.1...v1.34.0) --- updated-dependencies: - dependency-name: github.com/onsi/gomega dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * deps: Use latest watcher img 1.1.1 (#1726) * deps: Bump sec-scanners-config KLM img tag to 1.1.1 (#1728) * chore: Add deprecation notes to customStateCheck (#1708) * Add deprecation notes * Update docs/technical-reference/api/moduleTemplate-cr.md Co-authored-by: Małgorzata Świeca <[email protected]> * Configure API version exclusion * Update docs/technical-reference/api/moduleTemplate-cr.md Co-authored-by: Małgorzata Świeca <[email protected]> * review fix --------- Co-authored-by: Małgorzata Świeca <[email protected]> * chore(dependabot): bump github.com/onsi/gomega from 1.34.0 to 1.34.1 (#1729) Bumps [github.com/onsi/gomega](https://github.com/onsi/gomega) from 1.34.0 to 1.34.1. - [Release notes](https://github.com/onsi/gomega/releases) - [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md) - [Commits](onsi/gomega@v1.34.0...v1.34.1) --- updated-dependencies: - dependency-name: github.com/onsi/gomega dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump github.com/onsi/ginkgo/v2 from 2.19.0 to 2.19.1 (#1727) Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.19.0 to 2.19.1. - [Release notes](https://github.com/onsi/ginkgo/releases) - [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md) - [Commits](onsi/ginkgo@v2.19.0...v2.19.1) --- updated-dependencies: - dependency-name: github.com/onsi/ginkgo/v2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump github.com/docker/docker from 26.1.3+incompatible to 26.1.4+incompatible in the go_modules group (#1731) chore(dependabot): bump github.com/docker/docker in the go_modules group Bumps the go_modules group with 1 update: [github.com/docker/docker](https://github.com/docker/docker). Updates `github.com/docker/docker` from 26.1.3+incompatible to 26.1.4+incompatible - [Release notes](https://github.com/docker/docker/releases) - [Commits](moby/moby@v26.1.3...v26.1.4) --- updated-dependencies: - dependency-name: github.com/docker/docker dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * chore(dependabot): bump github.com/cert-manager/cert-manager from 1.15.1 to 1.15.2 (#1730) chore(dependabot): bump github.com/cert-manager/cert-manager Bumps [github.com/cert-manager/cert-manager](https://github.com/cert-manager/cert-manager) from 1.15.1 to 1.15.2. - [Release notes](https://github.com/cert-manager/cert-manager/releases) - [Changelog](https://github.com/cert-manager/cert-manager/blob/master/RELEASE.md) - [Commits](cert-manager/cert-manager@v1.15.1...v1.15.2) --- updated-dependencies: - dependency-name: github.com/cert-manager/cert-manager dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tomasz Smelcerz <[email protected]> * chore: Limit access for remote and istio namespaces (#1722) * Limit access for remote and istio namespaces * Adjust E2E test * Empty-Commit * Change ClusterRole to Role * Review comments * chore(dependabot): bump github.com/docker/docker from 26.1.3+incompatible to 26.1.4+incompatible in /api in the go_modules group (#1732) chore(dependabot): bump github.com/docker/docker Bumps the go_modules group in /api with 1 update: [github.com/docker/docker](https://github.com/docker/docker). Updates `github.com/docker/docker` from 26.1.3+incompatible to 26.1.4+incompatible - [Release notes](https://github.com/docker/docker/releases) - [Commits](moby/moby@v26.1.3...v26.1.4) --- updated-dependencies: - dependency-name: github.com/docker/docker dependency-type: indirect dependency-group: go_modules ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tomasz Smelcerz <[email protected]> * chore(dependabot): bump github.com/open-component-model/ocm from 0.11.0 to 0.12.0 in /api (#1705) * chore(dependabot): bump github.com/open-component-model/ocm in /api Bumps [github.com/open-component-model/ocm](https://github.com/open-component-model/ocm) from 0.11.0 to 0.12.0. - [Release notes](https://github.com/open-component-model/ocm/releases) - [Changelog](https://github.com/open-component-model/ocm/blob/main/.goreleaser.yaml) - [Commits](open-component-model/ocm@v0.11.0...v0.12.0) --- updated-dependencies: - dependency-name: github.com/open-component-model/ocm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * bump ocm in lifecycle-manager --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Tomasz Smelcerz <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> Co-authored-by: Xin Ruan <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Tomasz Smelcerz <[email protected]> * feat: Support "application/x-tar" media type in the module template (#1698) * feat: support x-tar media type * chore: adjust after rebase * fix: oci repo subpath parsing * refactor: lint * refactor: lint perfsprint * fix: default cr parsing from template * fix: moduletemplate layer name * test: add integration test * refactor: after code review * make lint happy * refactoring test * refactoring ExtractLayer * keep default cr in moduletemplate * update dead link * test layer parser * test layer parser * adjust e2e test * code refactoring --------- Co-authored-by: Xin Ruan <[email protected]> * feat: Unmanage module (#1717) * add annotation probably should be replaced with finalizer * add finalizer if unmanaged * delete manifest and finalizers when unmanaged finalizer found * set unmanaged from spec * fix compile error * start testcase * delete * all module test instances have managed enabled by default * fix enable label value * revert integration test * revert integration test * add unmanage e2e * add unamage module to e2e matrix * remove helper func * sort * fix resource name * renaming * add unmanaged annotation * unmanage with deletion in manifest-controller * move deletion of manifest to kyma control loop * fix e2e * lint fixes * fmt * resolve lint issues * revert loglevel * clean-up and more testcases * adapt e2e * adapt e2e * adapt e2e * add Managed = true to all used v1beta2.Module in code... * extend e2e * adapt some review comments * revert FDescribe * return err on invalid kyma and watcher state * adapt runner test * chore: Remove requeue on invalid cr state (#1829) remove requeue on invalid cr state * fix merge * fix merge * fix merge * fix merge * fix IsUnmanaged detection * delete unmanaged manifest in manifest controller * fix NeedToUpdate * refactor removefinalizer --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Małgorzata Świeca <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Raj <[email protected]> Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Tomasz Smelcerz <[email protected]>
* chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (kyma-project#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (kyma-project#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (kyma-project#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (kyma-project#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (kyma-project#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> * fix bug due to modified ModuleName --------- Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]>
* add version to kyma.spec.modules list * add missing manifest update base on moduletemplate generation change. * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * refactor FilterTemplate * add integration test * Update tests/integration/controller/kyma/kyma_module_channel_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * Update tests/integration/controller/kyma/kyma_module_version_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * fix existing test --------- Co-authored-by: Tomasz Smelcerz <[email protected]>
* Add explicit version attribute * Add test * Add test * Fix lint * Fix test * review fix * Fix compilation errors * Update api/v1beta2/moduletemplate_types.go Co-authored-by: Christoph Schwägerl <[email protected]> * ignore new fields in version comparison --------- Co-authored-by: Christoph Schwägerl <[email protected]> chore: Sync main to feature branch (kyma-project#1718) * chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (kyma-project#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (kyma-project#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (kyma-project#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (kyma-project#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (kyma-project#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> * fix bug due to modified ModuleName --------- Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]> feat: Add Version to Kyma.Spec.Modules (kyma-project#1694) * add version to kyma.spec.modules list * add missing manifest update base on moduletemplate generation change. * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * refactor FilterTemplate * add integration test * Update tests/integration/controller/kyma/kyma_module_channel_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * Update tests/integration/controller/kyma/kyma_module_version_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * fix existing test --------- Co-authored-by: Tomasz Smelcerz <[email protected]> chore: Update branch to main (kyma-project#1753) * update base branch to main * update base branch to main feat: Module catalog improvements implementation (kyma-project#1748) * Implement changes in module catalog handling * review fix * review fix * review fix * remove test * fix lint * review fix feat: Remove kyma.spec.modules[].version from api (kyma-project#1837) * remove kyma.spec.modules[n].version from api * Skip test * disable test * skip test * Skip test * Update api/v1beta2/kyma_types.go Co-authored-by: Christoph Schwägerl <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> wip wip wip review fix
* Add explicit version attribute * Add test * Add test * Fix lint * Fix test * review fix * Fix compilation errors * Update api/v1beta2/moduletemplate_types.go Co-authored-by: Christoph Schwägerl <[email protected]> * ignore new fields in version comparison --------- Co-authored-by: Christoph Schwägerl <[email protected]> chore: Sync main to feature branch (kyma-project#1718) * chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * docs: Update KLM Local Test Setup Guide (kyma-project#1680) fix errors in local test setup documentation add version info * feat: Drop multiple ways to reference modules in Kyma CR (kyma-project#1672) * remove module reference by namespace/name * remove module reference by objectmeta name * remove module reference by FQDN * add initial test structure * add test cases for different module reference scenarios * fix tests * update documentation * address review comments * address more review comments * fix linting issues * rearrange imports * adjust documentation * chore: Configure different requeue intervals for Manifest reconciliation (kyma-project#1690) * Add different requeue intervals for Manifest reconciliation * Empty-Commit * code review comments * chore: Bump k8s deps (kyma-project#1703) * chore: Bump k8s deps * retrigger jobs * bump api folder as well --------- Co-authored-by: Nesma Badr <[email protected]> * fix: Manifest CR should update by moduletemplate generation changes (kyma-project#1702) * when moduletemplate generation updated, then manifest CR should also updated. * refactor regular_test.go --------- Co-authored-by: Benjamin Lindner <[email protected]> * fix bug due to modified ModuleName --------- Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Amritanshu Sikdar <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]> feat: Add Version to Kyma.Spec.Modules (kyma-project#1694) * add version to kyma.spec.modules list * add missing manifest update base on moduletemplate generation change. * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) * remove parameter for NewCachedDescriptorProvider * fix dead link * adjust unit test coverage * fix flaky test * refactor FilterTemplate * add integration test * Update tests/integration/controller/kyma/kyma_module_channel_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * Update tests/integration/controller/kyma/kyma_module_version_test.go Co-authored-by: Tomasz Smelcerz <[email protected]> * fix existing test --------- Co-authored-by: Tomasz Smelcerz <[email protected]> chore: Update branch to main (kyma-project#1753) * update base branch to main * update base branch to main feat: Module catalog improvements implementation (kyma-project#1748) * Implement changes in module catalog handling * review fix * review fix * review fix * remove test * fix lint * review fix feat: Remove kyma.spec.modules[].version from api (kyma-project#1837) * remove kyma.spec.modules[n].version from api * Skip test * disable test * skip test * Skip test * Update api/v1beta2/kyma_types.go Co-authored-by: Christoph Schwägerl <[email protected]> --------- Co-authored-by: Christoph Schwägerl <[email protected]> wip wip wip review fix
chore: Sync main to feature branch (kyma-project#1718) chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) docs: Update KLM Local Test Setup Guide (kyma-project#1680) chore: Configure different requeue intervals for Manifest reconciliation (kyma-project#1690) feat: Drop multiple ways to reference modules in Kyma CR (kyma-project#1672) chore: Bump k8s deps (kyma-project#1703) fix: Manifest CR should update by moduletemplate generation changes (kyma-project#1702) feat: Add Version to Kyma.Spec.Modules (kyma-project#1694) chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) chore: Update branch to main (kyma-project#1753) feat: Module catalog improvements implementation (kyma-project#1748) feat: Remove kyma.spec.modules[].version from api (kyma-project#1837) --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Tomasz Smelcerz <[email protected]>
chore: Sync main to feature branch (kyma-project#1718) chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) docs: Update KLM Local Test Setup Guide (kyma-project#1680) chore: Configure different requeue intervals for Manifest reconciliation (kyma-project#1690) feat: Drop multiple ways to reference modules in Kyma CR (kyma-project#1672) chore: Bump k8s deps (kyma-project#1703) fix: Manifest CR should update by moduletemplate generation changes (kyma-project#1702) feat: Add Version to Kyma.Spec.Modules (kyma-project#1694) chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) chore: Update branch to main (kyma-project#1753) feat: Module catalog improvements implementation (kyma-project#1748) feat: Remove kyma.spec.modules[].version from api (kyma-project#1837) --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Tomasz Smelcerz <[email protected]>
chore: Sync main to feature branch (kyma-project#1718) chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) docs: Update KLM Local Test Setup Guide (kyma-project#1680) chore: Configure different requeue intervals for Manifest reconciliation (kyma-project#1690) feat: Drop multiple ways to reference modules in Kyma CR (kyma-project#1672) chore: Bump k8s deps (kyma-project#1703) fix: Manifest CR should update by moduletemplate generation changes (kyma-project#1702) feat: Add Version to Kyma.Spec.Modules (kyma-project#1694) chore: Refactor NewCachedDescriptorProvider (kyma-project#1695) chore: Update branch to main (kyma-project#1753) feat: Module catalog improvements implementation (kyma-project#1748) feat: Remove kyma.spec.modules[].version from api (kyma-project#1837) --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Tomasz Smelcerz <[email protected]>
* feat: Explicit version for module template (#1699) chore: Sync main to feature branch (#1718) chore: Refactor NewCachedDescriptorProvider (#1695) docs: Update KLM Local Test Setup Guide (#1680) chore: Configure different requeue intervals for Manifest reconciliation (#1690) feat: Drop multiple ways to reference modules in Kyma CR (#1672) chore: Bump k8s deps (#1703) fix: Manifest CR should update by moduletemplate generation changes (#1702) feat: Add Version to Kyma.Spec.Modules (#1694) chore: Refactor NewCachedDescriptorProvider (#1695) chore: Update branch to main (#1753) feat: Module catalog improvements implementation (#1748) feat: Remove kyma.spec.modules[].version from api (#1837) --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]> Co-authored-by: Tomasz Smelcerz <[email protected]> * review fix --------- Co-authored-by: Christoph Schwägerl <[email protected]> Co-authored-by: Nesma Badr <[email protected]> Co-authored-by: Benjamin Lindner <[email protected]>
remove DescriptorCache as input paremeter