Skip to content

Missing "Endpoint" permission in ClusterRole when installing v0.18.0 #5701

@hamzabouissi

Description

@hamzabouissi

What happened:
installed external-dns using helm chart, when I tried to see exteranl-dns why it's not syncing ingress records, the logs I found are :
"Failed to watch" err="failed to list *v1.Endpoints: endpoints is forbidden: User \"system:serviceaccount:glueops-core-external-dns:external-dns\" cannot list resource \"endpoints\"

What you expected to happen:
syncing endpoints without adding additional rbac

How to reproduce it (as minimally and precisely as possible):
just install external-dns using helm chart, and check the ClusterRole binded to your serviceaccount, here is what we had:

PolicyRule:                                                                                                                                                │
│   Resources                               Non-Resource URLs  Resource Names  Verbs                                                                         │
│   ---------                               -----------------  --------------  -----                                                                         │
│   dnsendpoints.externaldns.k8s.io/status  []                 []              [*]                                                                           │
│   pods                                    []                 []              [get watch list]                                                              │
│   services                                []                 []              [get watch list]                                                              │
│   endpointslices.discovery.k8s.io         []                 []              [get watch list]                                                              │
│   ingresses.extensions                    []                 []              [get watch list]                                                              │
│   dnsendpoints.externaldns.k8s.io         []                 []              [get watch list]                                                              │
│   ingresses.networking.k8s.io             []                 []              [get watch list]                                                              │
│   nodes                                   []                 []              [list watch]   

Anything else we need to know?:
we reverted back to use v0.15.0 because ClusterRole was considering Endpoint

PolicyRule:                                                                                                                                                │
│   Resources                               Non-Resource URLs  Resource Names  Verbs                                                                         │
│   ---------                               -----------------  --------------  -----                                                                         │
│   dnsendpoints.externaldns.k8s.io/status  []                 []              [*]                                                                           │
│   endpoints                               []                 []              [get watch list]                                                              │
│   pods                                    []                 []              [get watch list]                                                              │
│   services                                []                 []              [get watch list]                                                              │
│   ingresses.extensions                    []                 []              [get watch list]                                                              │
│   dnsendpoints.externaldns.k8s.io         []                 []              [get watch list]                                                              │
│   ingresses.networking.k8s.io             []                 []              [get watch list]                                                              │
│   nodes                                   []                 []              [list watch] 

Environment:

  • External-DNS version (v0.18.0):
  • DNS provider: aws

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugCategorizes issue or PR as related to a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions