Skip to content
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

[FEATURE REQ] ApiOps operations to go straight to APIM management endpoint #490

Closed
jeremypicado43 opened this issue Feb 23, 2024 · 5 comments

Comments

@jeremypicado43
Copy link

Please describe the feature.

Currently the ApiOps leverages Azure Resource Manager(ARM) to perform the CRUD operations for the APIM resources, this means the ARM 110 seconds timeout will be enforced. For large deployments when dealing with big API schemas and lot more entities concurrently, it will take more time for all these to be executed, therefore the ARM timeout issue will appear.

By calling directly the management endpoint, the ARM layer is bypassed and above timeout and other limits won't apply as outlined here: https://learn.microsoft.com/en-us/rest/api/apimanagement/apimanagementrest/api-management-rest

Thanks.

Copy link

  Thank you for opening this issue! Please be patient while we will look into it and get back to you as this is an open source project. In the meantime make sure you take a look at the [closed issues](https://github.com/Azure/apiops/issues?q=is%3Aissue+is%3Aclosed) in case your question has already been answered. Don't forget to provide any additional information if needed (e.g. scrubbed logs, detailed feature requests,etc.).
  Whenever it's feasible, please don't hesitate to send a Pull Request (PR) our way. We'd greatly appreciate it, and we'll gladly assess and incorporate your changes.

@waelkdouh
Copy link
Contributor

Definitely not a short-term endeavor. All the models and API calls in ApiOps were written for the ARM REST API. We don't know what's supported in this direct management API, if the URLs are different, etc.

Also we are not sure what we'd gain by switching to it. Regarding throttling, ApiOps already does retries when making API calls. Since we only publish resources that were changed in Git, we're less likely to run into throttling issues. And if we do, we wait and retry.

@waelkdouh waelkdouh closed this as not planned Won't fix, can't repro, duplicate, stale Feb 23, 2024
@jeremypicado43
Copy link
Author

Thanks for the response Wael, the URL would remain exactly the same but the hostname. The other required change would be the autorization.

@waelkdouh
Copy link
Contributor

Please create a PR and we can take a look. Please make sure you do heavy testing on all the different artifacts.

@waelkdouh
Copy link
Contributor

@jeremypicado43 also thinking out loud. requiring users to enable direct access to the apim restful api could be a sticky point bs our current approach which is seamless.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants