Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
1b7fbd2
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
a67a3d7
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
1a5aa57
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
e155ca5
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
cbda46c
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
f171502
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
4d1a17f
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
4d2729c
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
e8bb3d8
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
255d6e1
feat(source): add unstructured source
ivankatliarchuk Feb 7, 2026
e044a4e
feat(source): add unstructured source
ivankatliarchuk Feb 20, 2026
bd7c717
Merge branch 'kubernetes-sigs:master' into issue-3437-unstructured
ivankatliarchuk Feb 21, 2026
33e5135
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
90f38bf
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
c3aec80
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
27954ba
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
71007a7
Update docs/sources/unstructured.md
ivankatliarchuk Feb 21, 2026
df73b62
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
bd31dc8
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
fc7da8b
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
a325485
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
b4f6f0c
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
6446237
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
ca98c1a
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
fc6da26
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
59accf5
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
be331ba
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
7afd6f2
feat(source): add unstructured source
ivankatliarchuk Feb 21, 2026
47d9ec8
feat(source): add unstructured source
ivankatliarchuk Feb 22, 2026
64158c8
Merge branch 'master' into issue-3437-unstructured
ivankatliarchuk Feb 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions docs/flags.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@
| `--[no-]always-publish-not-ready-addresses` | Always publish also not ready addresses for headless services (optional) |
| `--annotation-filter=""` | Filter resources queried for endpoints by annotation, using label selector semantics |
| `--annotation-prefix="external-dns.alpha.kubernetes.io/"` | Annotation prefix for external-dns annotations (default: external-dns.alpha.kubernetes.io/) |
| `--[no-]combine-fqdn-annotation` | Combine FQDN template and Annotations instead of overwriting (default: false) |
| `--compatibility=` | Process annotation semantics from legacy implementations (optional, options: mate, molecule, kops-dns-controller) |
| `--connector-source-server="localhost:8080"` | The server to connect for connector source, valid only when using connector source |
| `--crd-source-apiversion="externaldns.k8s.io/v1alpha1"` | API version of the CRD for crd source, e.g. `externaldns.k8s.io/v1alpha1`, valid only when using crd source |
Expand All @@ -29,7 +28,6 @@
| `--exclude-target-net=EXCLUDE-TARGET-NET` | Exclude target nets (optional) |
| `--[no-]exclude-unschedulable` | Exclude nodes that are considered unschedulable (default: true) |
| `--[no-]expose-internal-ipv6` | When using the node source, expose internal IPv6 addresses (optional, default: false) |
| `--fqdn-template=""` | A templated string that's used to generate DNS names from sources that don't define a hostname themselves, or to add a hostname suffix when paired with the fake source (optional). Accepts comma separated list for multiple global FQDN. |
| `--gateway-label-filter=""` | Filter Gateways of Route endpoints via label selector (default: all gateways) |
| `--gateway-name=""` | Limit Gateways of Route endpoints to a specific name (default: all names) |
| `--gateway-namespace=""` | Limit Gateways of Route endpoints to a specific namespace (default: all namespaces) |
Expand All @@ -50,6 +48,7 @@
| `--target-net-filter=TARGET-NET-FILTER` | Limit possible targets by a net filter; specify multiple times for multiple possible nets (optional) |
| `--[no-]traefik-enable-legacy` | Enable legacy listeners on Resources under the traefik.containo.us API Group |
| `--[no-]traefik-disable-new` | Disable listeners on Resources under the traefik.io API Group |
| `--unstructured-resource=UNSTRUCTURED-RESOURCE` | When using the unstructured source, specify resources in resource.version.group format (e.g., virtualmachineinstances.v1.kubevirt.io, configmap.v1); specify multiple times for multiple resources |
| `--events-emit=EVENTS-EMIT` | Events that should be emitted. Specify multiple times for multiple events support (optional, default: none, expected: RecordReady, RecordDeleted, RecordError) |
| `--provider-cache-time=0s` | The time to cache the DNS provider record list requests. |
| `--domain-filter=` | Limit possible target zones by a domain suffix; specify multiple times for multiple domains (optional) |
Expand Down Expand Up @@ -181,5 +180,9 @@
| `--webhook-provider-read-timeout=5s` | The read timeout for the webhook provider in duration format (default: 5s) |
| `--webhook-provider-write-timeout=10s` | The write timeout for the webhook provider in duration format (default: 10s) |
| `--[no-]webhook-server` | When enabled, runs as a webhook server instead of a controller. (default: false). |
| `--[no-]combine-fqdn-annotation` | Combine FQDN template and Annotations instead of overwriting (default: false) |
| `--fqdn-template=""` | A templated string that's used to generate DNS names from sources that don't define a hostname themselves, or to add a hostname suffix when paired with the fake source (optional). Accepts comma separated list for multiple global FQDN. |
| `--target-template=""` | A templated string used to generate DNS targets (IP or hostname) from sources that support it (optional). Accepts comma separated list for multiple targets. |
| `--fqdn-target-template=""` | A template that returns host:target pairs (e.g., '{{range .Object.endpoints}}{{.targetRef.name}}.svc.example.com:{{index .addresses 0}},{{end}}'). Accepts comma separated list for multiple pairs. |
| `--provider=provider` | The DNS provider where the DNS records will be created (required, options: akamai, alibabacloud, aws, aws-sd, azure, azure-dns, azure-private-dns, civo, cloudflare, coredns, digitalocean, dnsimple, exoscale, gandi, godaddy, google, inmemory, linode, ns1, oci, ovh, pdns, pihole, plural, rfc2136, scaleway, skydns, transip, webhook) |
| `--source=source` | The resource types that are queried for endpoints; specify multiple times for multiple sources (required, options: service, ingress, node, pod, gateway-httproute, gateway-grpcroute, gateway-tlsroute, gateway-tcproute, gateway-udproute, istio-gateway, istio-virtualservice, contour-httpproxy, gloo-proxy, fake, connector, crd, empty, skipper-routegroup, openshift-route, ambassador-host, kong-tcpingress, f5-virtualserver, f5-transportserver, traefik-proxy) |
| `--source=source` | The resource types that are queried for endpoints; specify multiple times for multiple sources (required, options: service, ingress, node, pod, gateway-httproute, gateway-grpcroute, gateway-tlsroute, gateway-tcproute, gateway-udproute, istio-gateway, istio-virtualservice, contour-httpproxy, gloo-proxy, fake, connector, crd, empty, skipper-routegroup, openshift-route, ambassador-host, kong-tcpingress, f5-virtualserver, f5-transportserver, traefik-proxy, unstructured) |
1 change: 1 addition & 0 deletions docs/sources/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ Sources are responsible for:
| **service** | Service | annotation,label | all,single | true | false | kubernetes core |
| **skipper-routegroup** | RouteGroup.zalando.org | annotation | all,single | true | false | ingress controllers |
| **traefik-proxy** | IngressRoute.traefik.io<br/>IngressRouteTCP.traefik.io<br/>IngressRouteUDP.traefik.io | annotation | all,single | false | false | ingress controllers |
| **unstructured** | Unstructured | annotation,label | all,single | true | false | custom resources |

## Usage

Expand Down
Loading
Loading