-
Notifications
You must be signed in to change notification settings - Fork 2.8k
fix(azure): enhance retry logic using azure SDK #5361
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(azure): enhance retry logic using azure SDK #5361
Conversation
|
Welcome @Reddyshruti26! |
|
Hi @Reddyshruti26. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. |
|
@Reddyshruti26 You need to sign the CLA before we can review this PR. |
ce7c1e3 to
0869c4a
Compare
|
/ok-to-test |
mloiseleur
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @mloiseleur, Could you please clarify if the AZURE_SDK_MAX_RETRIES should be configured as a CLI argument instead of an environment variable? |
Yes, that's my point. |
|
To be more precise, all CLI flags can be used as env variable. See --help on azure: --azure-config-file="/etc/kubernetes/azure.json"
When using the Azure provider,
specify the Azure configuration file
(required when --provider=azure)
($EXTERNAL_DNS_AZURE_CONFIG_FILE)
--azure-resource-group="" When using the Azure provider, override
the Azure resource group to use (optional)
($EXTERNAL_DNS_AZURE_RESOURCE_GROUP)
--azure-subscription-id="" When using the Azure provider, override
the Azure subscription to use (optional)
($EXTERNAL_DNS_AZURE_SUBSCRIPTION_ID)
--azure-user-assigned-identity-client-id=""
When using the Azure provider,
override the client id of user assigned
identity in config file (optional)
($EXTERNAL_DNS_AZURE_USER_ASSIGNED_IDENTITY_CLIENT_ID)
--azure-zones-cache-duration=0s
When using the Azure provider, set the
zones list cache TTL (0s to disable).
($EXTERNAL_DNS_AZURE_ZONES_CACHE_DURATION)
|
Hi @mloiseleur, I am assuming the implementation of this is already in place and I just have to implement the new flag as requested earlier. Or, do I have to implement the new flag and corresponding env variable? |
|
@sfiguemsft Any comment ? |
|
LGTM. It needs a 2nd review. |
Approved - please let me know if you need any further input. |
|
/label tide/merge-method-squash |
… value from cli/env
ivankatliarchuk
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: ivankatliarchuk, mloiseleur The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
| } | ||
|
|
||
| // Helper function to parse max retries value | ||
| func parseMaxRetries(value string, defaultValue int) (int, error) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
defaultValue is not used in this function.
Is this expected ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a redundant parameter that might have been missed during code clean-up.


Description
This PR enhances the retry logic of the Azure SDK to allow customers to configure it using an environment variable specified in the manifest file, depending on their workload. Currently, this serves as a short-term solution for our users for both public and private DNS. A long-term fix is planned and will be implemented in the near future. The relevant documentation has been updated accordingly to reflect this change.
Fixes #4839
Checklist