gardener / gardener-extension-shoot-dns-service

Gardener extension controller for DNS services for shoot clusters.
https://gardener.cloud
Apache License 2.0
8 stars 34 forks source link

Add appropriate error code for error ` duplicate zones [...]` #329

Closed Kostov6 closed 3 months ago

Kostov6 commented 4 months ago

How to categorize this issue?

/area ops-productivity /kind enhancement

What would you like to be added: We see Extensions of type shoot-dns-service that fail to be created with:

$ k get extensions shoot-dns-service -o yaml
...
status:
  conditions:
  - lastTransitionTime: "2024-05-14T08:26:26Z"
    lastUpdateTime: "2024-05-14T08:26:26Z"
    message: All health checks successful
    reason: HealthCheckSuccessful
    status: "True"
    type: ControlPlaneHealthy
  lastError:
    description: "Error reconciling Extension: 1 error occurred:\n\t* Error while
      waiting for DNSProvider ...
      to become ready: state Error: duplicate zones ...\n\n"
    lastUpdateTime: "2024-05-14T09:11:22Z"
  lastOperation:
    description: "Error reconciling Extension: 1 error occurred:\n\t* Error while
      waiting for DNSProvider ...
      to become ready: state Error: duplicate zones ...
      and...\n\n"
    lastUpdateTime: "2024-05-14T09:11:22Z"
    progress: 50
    state: Error
    type: Create

We can see two hosted zones with the same hosted zone name. If possible, such error should be reported with error code ERR_CONFIGURATION_PROBLEM in the Extension status.

It seems it comes from here: https://github.com/gardener/gardener-extension-shoot-dns-service/blob/8258c4f47adc674c50ba5252f8fa6c64a8e7ddc4/pkg/controller/lifecycle/dnsprovider.go#L110-L133

Why is this needed: To prevent ops people looking into Shoots which are pure end user configuration problems.

Kostov6 commented 4 months ago

/cc @MartinWeindel