Skip to content

Conversation

@lindnerby
Copy link
Member

Description

Changes proposed in this pull request:

  • ...
  • ...
  • ...

Related issue(s)

@lindnerby lindnerby requested a review from a team as a code owner October 16, 2025 10:18
@lindnerby lindnerby added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Oct 16, 2025
@lindnerby lindnerby changed the title Split kyma controller refactor: Split kyma controller Oct 16, 2025
@lindnerby lindnerby linked an issue Oct 21, 2025 that may be closed by this pull request
3 tasks
@c-pius
Copy link
Contributor

c-pius commented Nov 7, 2025

E2E module-without-default-cr

  • general, I think this test is obsolete and should be removed as of this decision: All Modules MUST Provide Default Module CR Data Except Mandatory Modules community#982
    • still trying to use it to find the general issue of why deletion reconciler is not triggered
    • when trying to prepare this test locally, we see issues that default CR data cannot be empty
      moduletemplates kubectl apply -f template-operator.yaml -f template-operator-0.0.1-catalog-meta.yaml
      modulereleasemeta.operator.kyma-project.io/template-operator created
      The ModuleTemplate "template-operator-0.0.1-catalog-meta" is invalid: 
      * spec.data.apiVersion: Required value: must not
      
    • looking into the logs, we can see that actually a MT with default CR data is deployed... Something is wrong in the test setup => this was wrong, we actually create a MT without default CR further below... Above error is probably because we need to exclude the attribute entirely and not provide an empty object as I did.
      c93c-478e-944f-286c8b37146c" />
  • test stales between those two steps: https://github.com/kyma-project/lifecycle-manager/blob/main/tests/e2e/no_default_cr_test.go#L96-L112
    • Kyma is expected to transition to Error state
    • test logs show Kyma.Status.State: Processing, Kyma.Status.Modules[].State: Deleting
      kyma (kyma-sample-ynumpwax) in cluster: Spec: {Channel:regular SkipMaintenanceWindows:false Modules:[]}, Status: {LastOperation:{Operation:waiting for all modules to become ready LastUpdateTime:2025-11-07 14:15:05 +0000 UTC} State:Processing Conditions:[{Type:Modules Status:False ObservedGeneration:1 LastTransitionTime:2025-11-07 14:15:05 +0000 UTC Reason:Ready Message:not all modules are in ready state} {Type:ModuleCatalog Status:True ObservedGeneration:1 LastTransitionTime:2025-11-07 14:15:05 +0000 UTC Reason:Ready Message:module templates are synchronized} {Type:SKRWebhook Status:True ObservedGeneration:1 LastTransitionTime:2025-11-07 14:15:05 +0000 UTC Reason:Ready Message:skrwebhook is synchronized}] Modules:[{Name:template-operator FQDN:kyma-project.io/module/template-operator Channel:regular Version:1.0.0-no-default-cr Message: State:Deleting Manifest:&TypeMeta{Kind:Manifest,APIVersion:operator.kyma-project.io/v1beta2,} Resource:<nil> Template:&TypeMeta{Kind:ModuleTemplate,APIVersion:operator.kyma-project.io/v1beta2,} Maintenance:false}] ActiveChannel:regular}
      
    • we see error logs from purge reconciler related to the failed connecton (expected)
    • we don't see logs from deletion controller
    • we would expect that this code is entered, which sets Kyma to ready state, but it seemingly doesn't: https://github.com/lindnerby/lifecycle-manager/blob/a7128c59616fe560fc2f1d5d5279f3caca360931/internal/controller/kyma/deletion_controller.go#L108-L111
      • => needs to be found out why
      • log Kyma deletion reconciliation started not found (we see other DEBUG level logs)
        • => looks like the deletion reconciler is not even triggered
          • func (r *DeletionReconciler) SetupWithManager(mgr ctrl.Manager, opts ctrlruntime.Options) error { is unused
            • probably got removed when merging the conflicts earlier
            • => re-add Setup DeletionReconciler 59f15bb
              • still can't see any logs from deletion controller
              • still stuck between the same test steps
              • kyma and module status is Ready now

@lindnerby
Copy link
Member Author

* => needs to be found out why
* log `Kyma deletion reconciliation started` not found (we see other DEBUG level logs)
  
  * => looks like the deletion reconciler is not even triggered
    
    * `func (r *DeletionReconciler) SetupWithManager(mgr ctrl.Manager, opts ctrlruntime.Options) error {` is unused
      
      * probably got removed when merging the conflicts earlier
      * => re-add Setup DeletionReconciler [59f15bb](https://github.com/kyma-project/lifecycle-manager/commit/59f15bbf2c33c21bb3d865055fea184f8dc5ef0f)

Was added to unreachable code location. Moved it out of the err branch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement a dedicated controller for handling Kyma deprovisioning

2 participants