* chore(source): reorganise sources and wrappers
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* chore(source): reorganise sources and wrappers
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* chore(source): reorganise sources and wrappers
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
---------
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
- add flag to enable regional hostname feature
- support deletion of regional hostname on annotation edit
- correctly support differences detection with cloudflare state
- increased tests coverage
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
* chore(codebase): reduce complexity and improve code coverage for controller/execute.go
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* apply suggestions from code review
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
* chore(codebase): reduce complexity and improve code coverage for controller/execute.go
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* chore(codebase): reduce complexity and improve code coverage for controller/execute.go
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
---------
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
* feat(controller): add more metrics for all supported endpoint types
* feat(controller): add cardinality and labels for records metrics
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* feat(controller): add cardinality and labels for records metrics
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* feat(controller): add cardinality and labels for records metrics
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* feat(controller): add cardinality and labels for records metrics
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* feat(controller): add cardinality and labels for records metrics
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* feat(controller): add cardinality and labels for records metrics
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* feat(controller): add cardinality and labels for records metrics
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
* feat(controller): add cardinality and labels for records metrics
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
* fix rebase
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
---------
Signed-off-by: ivan katliarchuk <ivan.katliarchuk@gmail.com>
Co-authored-by: Michel Loiseleur <97035654+mloiseleur@users.noreply.github.com>
* fix(azure): Enhance retry logic using azure SDK
* Added the changes for flag based maxretries configuration
* Fixed types.go, flags.md and delected unneccesary comments
* Added the correct image for the Azure Private DNS tutorial
* Following the go naming convention for maxRetriesCount
* Added the correct flag information to the --azure-maxretries-count
* Made the required changes to accept the --azure-maxretries-count flag value from cli/env
* fix(plan): always use managed records
* robust random port in test
* use defaultconfig for managed-record-types
* be explicit about static variable
* fix wait
* re-order flags related to sources + dynamic managedrecordtype help
* fix flag doc
**Description**
In the command line arguments, we see `min-event-sync-interval` as
"The minimum interval between two consecutive synchronizations triggered from kubernetes events"
In the code, it actually acts a different way.
It imposes a certain dealy between syncs.
While this is compliant with the "minimum delay between 2 consecutive
synchronizations", it has side-effects in case of large delays.
In particular, when trying to fine-tune external-dns to match the
provider rate-limits.
In this case, it may be interesting to restrict the rate of reconciling
actions happening by having a high `min-event-sync-interval`, while
keeping a low latency for initial events.
This would allow to maximise the bulk effect of high change rate while
keeping fast enough reaction for isolated changes.
**Checklist**
- [X] Unit tests updated
- [X] End user documentation updated
> End user documentation matches the updated behaviour with more
> accuracy
Change-Id: Ibcea707974a095a2d5861a3974b4c79e5a15b00e
the entire logic of missing endpoints was removed from the controller
taking leverage on the planner
Signed-off-by: Matias Charriere <matias@giantswarm.io>
This change tries to remove part of the logic added in 50f196c0db.
The forceUpdate strategy relies on existing code of the planner to migrate TXT records to the new format,
being the main goal to avoid conflicts during apply.
Signed-off-by: Matias Charriere <matias@giantswarm.io>
Changes to add A records of source and registry as metrics. The existing metrics -
external_dns_registry_endpoints_total & external_dns_source_endpoints_total gives a cumulative count of records all records (A, SRV, CNAME, TXT).
We have a metric - external_dns_controller_verified_records which gives the intersection of A records between source & regsitry. However, in order to determined how many records are yet to be synced to registry, we need count of total A records in registry & source.