Azure / azure-cli

Azure Command-Line Interface
MIT License
4.03k stars 3.01k forks source link

Split azure/cli/command_modules/keyvault/vendored_sdks into it's own python package #29998

Open p3ck opened 1 month ago

p3ck commented 1 month ago

Related command az keyvault security-domain download

Is your feature request related to a problem? Please describe. This request is to split the vendored_sdks into a separate python package which can be used by both azure-cli and the azure ansible package (https://github.com/ansible-collections/azure/).

I'm unable to find if this code lives in any other repository or python library.

Describe the solution you'd like Splitting the vendored_sdks into a subpackage will allow us to share this code without conflicting.

Describe alternatives you've considered I'm also unable to simply depend on azure-cli package since the two projects have conflicting requirements on the azure-mgmt-* packages

Additional context My PR in the azure ansible collection: https://github.com/ansible-collections/azure/pull/1717

Thanks

yonzhan commented 1 month ago

Thank you for opening this issue, we will look into it.

evelyn-ys commented 1 month ago

@chlowell from Python SDK team for awareness

chlowell commented 1 month ago

If the security domain client were in a separate package, would you still want to import azure.cli.command_modules.keyvault.security_domain for these encoding helpers?

p3ck commented 1 month ago

It would be better if it was packaged separately from the azure-cli since installing the azure-cli pulls in so many azure-mgmt- requirements. The azure ansible package also pulls in azure-mgmt- requirements and we may not always be in sync. If this was part of the azure-sdk-for-python it would make it much easier.

Thanks

chlowell commented 1 month ago

If this hypothetical separate package didn't contain the encoding helpers you're using in the linked PR, would you still import them from azure-cli?

p3ck commented 1 month ago

We could duplicate the azure.cli.command_modules.keyvault.security_domain.utils file in the ansible module since it's fairly small. So no, we would not import them from azure-cli.

p3ck commented 1 month ago

I've updated the PR https://github.com/ansible-collections/azure/pull/1717 to not use security_domain/utils.py from the cli. So I really just need the vendored_sdks to be packaged in the azure-python-sdk or some other package that can be pip installed.

Thanks

evelyn-ys commented 1 month ago

I've updated the PR ansible-collections/azure#1717 to not use security_domain/utils.py from the cli. So I really just need the vendored_sdks to be packaged in the azure-python-sdk or some other package that can be pip installed.

Thanks

@mccoyp is working on security-domain track2 SDK