From 300591faff1015752d9ad2b342b946221e10e21f Mon Sep 17 00:00:00 2001 From: Devin Buhl Date: Tue, 19 Mar 2024 15:40:35 -0400 Subject: [PATCH 1/6] Add `dnsendpoint` CRD to Helm chart Fixes: https://github.com/kubernetes-sigs/external-dns/issues/2640 --- charts/external-dns/crds/dnsendpoint.yaml | 93 +++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 charts/external-dns/crds/dnsendpoint.yaml diff --git a/charts/external-dns/crds/dnsendpoint.yaml b/charts/external-dns/crds/dnsendpoint.yaml new file mode 100644 index 0000000000..9254f89d1e --- /dev/null +++ b/charts/external-dns/crds/dnsendpoint.yaml @@ -0,0 +1,93 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.5.0 + api-approved.kubernetes.io: "https://github.com/kubernetes-sigs/external-dns/pull/2007" + creationTimestamp: null + name: dnsendpoints.externaldns.k8s.io +spec: + group: externaldns.k8s.io + names: + kind: DNSEndpoint + listKind: DNSEndpointList + plural: dnsendpoints + singular: dnsendpoint + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: DNSEndpointSpec defines the desired state of DNSEndpoint + properties: + endpoints: + items: + description: Endpoint is a high-level way of a connection between a service and an IP + properties: + dnsName: + description: The hostname of the DNS record + type: string + labels: + additionalProperties: + type: string + description: Labels stores labels defined for the Endpoint + type: object + providerSpecific: + description: ProviderSpecific stores provider specific config + items: + description: ProviderSpecificProperty holds the name and value of a configuration which is specific to individual DNS providers + properties: + name: + type: string + value: + type: string + type: object + type: array + recordTTL: + description: TTL for the record + format: int64 + type: integer + recordType: + description: RecordType type of record, e.g. CNAME, A, SRV, TXT etc + type: string + setIdentifier: + description: Identifier to distinguish multiple records with the same name and type (e.g. Route53 records with routing policies other than 'simple') + type: string + targets: + description: The targets the DNS record points to + items: + type: string + type: array + type: object + type: array + type: object + status: + description: DNSEndpointStatus defines the observed state of DNSEndpoint + properties: + observedGeneration: + description: The generation observed by the external-dns controller. + format: int64 + type: integer + type: object + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: [] + storedVersions: [] From 162b5b66c6f74f1eed7992c99530aa8319432b95 Mon Sep 17 00:00:00 2001 From: Devin Buhl Date: Mon, 25 Mar 2024 09:13:24 -0400 Subject: [PATCH 2/6] Update charts/external-dns/crds/dnsendpoint.yaml Co-authored-by: Steve Hipwell --- charts/external-dns/crds/dnsendpoint.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/charts/external-dns/crds/dnsendpoint.yaml b/charts/external-dns/crds/dnsendpoint.yaml index 9254f89d1e..88eb93eede 100644 --- a/charts/external-dns/crds/dnsendpoint.yaml +++ b/charts/external-dns/crds/dnsendpoint.yaml @@ -1,4 +1,3 @@ ---- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: From 92e84ffbfc69bf65ee0b281f445da9e2d726a5fc Mon Sep 17 00:00:00 2001 From: Devin Buhl Date: Mon, 25 Mar 2024 09:13:40 -0400 Subject: [PATCH 3/6] Update charts/external-dns/crds/dnsendpoint.yaml Co-authored-by: Steve Hipwell --- charts/external-dns/crds/dnsendpoint.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/charts/external-dns/crds/dnsendpoint.yaml b/charts/external-dns/crds/dnsendpoint.yaml index 88eb93eede..952d6ab7d1 100644 --- a/charts/external-dns/crds/dnsendpoint.yaml +++ b/charts/external-dns/crds/dnsendpoint.yaml @@ -1,10 +1,6 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: - annotations: - controller-gen.kubebuilder.io/version: v0.5.0 - api-approved.kubernetes.io: "https://github.com/kubernetes-sigs/external-dns/pull/2007" - creationTimestamp: null name: dnsendpoints.externaldns.k8s.io spec: group: externaldns.k8s.io From c3a64402dfa862adf135b4712bb0cb33260b6a32 Mon Sep 17 00:00:00 2001 From: Devin Buhl Date: Mon, 25 Mar 2024 09:13:51 -0400 Subject: [PATCH 4/6] Update charts/external-dns/crds/dnsendpoint.yaml Co-authored-by: Steve Hipwell --- charts/external-dns/crds/dnsendpoint.yaml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/charts/external-dns/crds/dnsendpoint.yaml b/charts/external-dns/crds/dnsendpoint.yaml index 952d6ab7d1..ded646aa9f 100644 --- a/charts/external-dns/crds/dnsendpoint.yaml +++ b/charts/external-dns/crds/dnsendpoint.yaml @@ -80,9 +80,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] From b3bc78a35843eb00381833d04fe9d5eab5a63eae Mon Sep 17 00:00:00 2001 From: Devin Buhl Date: Mon, 25 Mar 2024 09:16:03 -0400 Subject: [PATCH 5/6] Update CHANGELOG.md --- charts/external-dns/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/charts/external-dns/CHANGELOG.md b/charts/external-dns/CHANGELOG.md index 8c0fa5c028..16ec577e0f 100644 --- a/charts/external-dns/CHANGELOG.md +++ b/charts/external-dns/CHANGELOG.md @@ -19,6 +19,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [UNRELEASED] - Added support for dnsConfig. ([#4265](https://github.com/kubernetes-sigs/external-dns/pull/4265)) [@davhdavh](https://github.com/davhdavh) +- Added support for DNSEndpoint CRD ([#4322](https://github.com/kubernetes-sigs/external-dns/pull/4322)) [@onedr0p](https://github.com/onedr0p) ## [v1.14.3] - 2023-01-26 From 0248ab0f5a5482637cb001378ef891cfc7c97321 Mon Sep 17 00:00:00 2001 From: Devin Buhl Date: Mon, 25 Mar 2024 09:22:50 -0400 Subject: [PATCH 6/6] add required annotation back to fix helm lint --- charts/external-dns/crds/dnsendpoint.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/charts/external-dns/crds/dnsendpoint.yaml b/charts/external-dns/crds/dnsendpoint.yaml index ded646aa9f..66f5f5206a 100644 --- a/charts/external-dns/crds/dnsendpoint.yaml +++ b/charts/external-dns/crds/dnsendpoint.yaml @@ -2,6 +2,8 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: name: dnsendpoints.externaldns.k8s.io + annotations: + api-approved.kubernetes.io: "https://github.com/kubernetes-sigs/external-dns/pull/2007" spec: group: externaldns.k8s.io names: