我想要实现的
我试图使用Python在Azure上自动化订阅和资源组创建。
为此,我需要一个具有至少检索注册帐户和创建订阅和资源组权限的服务主体帐户(客户端Id;客户端秘密;租户Id)。
我是如何努力实现它的
我试图列出注册帐户,但没有成功(是的,我正在导入azure.mgmt.billing、azure.mgmt和azure.common等)
我面临什么问题?
我遇到的问题是,我得到了以下错误:
分页异步迭代器协议不适用于EnrollmentAccountPaged
其他list()方法也会出现这种情况,例如当我使用以下内容检索资源组时
rm_client = ResourceManagementClient(credentials, subscription_id)
resource_groups = rm_client.resource_groups.list()然后,我得到了错误:
分页异步迭代器协议不适用于ResourceGroupPaged
我怎么认为我的问题解决了?
我很想知道为什么我会有这个错误,以及如何修正它。Azure的示例代码不以不同的方式使用方法或对象。
环境怎么样?
Python:Python 3.7
套餐:
Package Version Latest Version
PyJWT 1.6.4 1.6.4
adal 1.1.0 1.1.0
asn1crypto 0.24.0 0.24.0
azure-common 1.1.16 1.1.16
azure-mgmt 4.0.0 4.0.0
azure-mgmt-advisor 1.0.1 1.0.1
azure-mgmt-applicationinsights 0.1.1 0.1.1
azure-mgmt-authorization 0.50.0 0.50.0
azure-mgmt-batch 5.0.1 5.0.1
azure-mgmt-batchai 2.0.0 2.0.0
azure-mgmt-billing 0.2.0 0.2.0
azure-mgmt-cdn 3.0.0 3.0.0
azure-mgmt-cognitiveservices 3.0.0 3.0.0
azure-mgmt-commerce 1.0.1 1.0.1
azure-mgmt-compute 4.3.0 4.3.0
azure-mgmt-consumption 2.0.0 2.0.0
azure-mgmt-containerinstance 1.2.0 1.2.0
azure-mgmt-containerregistry 2.2.0 2.2.0
azure-mgmt-containerservice 4.2.2 4.2.2
azure-mgmt-cosmosdb 0.4.1 0.5.0
azure-mgmt-datafactory 0.6.0 0.6.0
azure-mgmt-datalake-analytics 0.6.0 0.6.0
azure-mgmt-datalake-nspkg 2.0.0 3.0.0
azure-mgmt-datalake-store 0.5.0 0.5.0
azure-mgmt-datamigration 1.0.0 2.0.0
azure-mgmt-devspaces 0.1.0 0.1.0
azure-mgmt-devtestlabs 2.2.0 2.2.0
azure-mgmt-dns 2.1.0 2.1.0
azure-mgmt-eventgrid 1.0.0 1.0.0
azure-mgmt-eventhub 2.1.0 2.1.0
azure-mgmt-hanaonazure 0.1.1 0.2.1
azure-mgmt-iotcentral 0.1.0 0.2.0
azure-mgmt-iothub 0.5.0 0.6.0
azure-mgmt-iothubprovisioningservices 0.2.0 0.2.0
azure-mgmt-keyvault 1.1.0 1.1.0
azure-mgmt-loganalytics 0.2.0 0.2.0
azure-mgmt-logic 3.0.0 3.0.0
azure-mgmt-machinelearningcompute 0.4.1 0.4.1
azure-mgmt-managementgroups 0.1.0 0.1.0
azure-mgmt-managementpartner 0.1.0 0.1.0
azure-mgmt-maps 0.1.0 0.1.0
azure-mgmt-marketplaceordering 0.1.0 0.1.0
azure-mgmt-media 1.0.0 1.0.0
azure-mgmt-monitor 0.5.2 0.5.2
azure-mgmt-msi 0.2.0 0.2.0
azure-mgmt-network 2.2.1 2.2.1
azure-mgmt-notificationhubs 2.0.0 2.0.0
azure-mgmt-nspkg 3.0.2 3.0.2
azure-mgmt-policyinsights 0.1.0 0.1.0
azure-mgmt-powerbiembedded 2.0.0 2.0.0
azure-mgmt-rdbms 1.3.0 1.3.0
azure-mgmt-recoveryservices 0.3.0 0.3.0
azure-mgmt-recoveryservicesbackup 0.3.0 0.3.0
azure-mgmt-redis 5.0.0 5.0.0
azure-mgmt-relay 0.1.0 0.1.0
azure-mgmt-reservations 0.2.1 0.3.0
azure-mgmt-resource 2.0.0 2.0.0
azure-mgmt-scheduler 2.0.0 2.0.0
azure-mgmt-search 2.0.0 2.0.0
azure-mgmt-servicebus 0.5.2 0.5.2
azure-mgmt-servicefabric 0.2.0 0.2.0
azure-mgmt-signalr 0.1.1 0.1.1
azure-mgmt-sql 0.9.1 0.9.1
azure-mgmt-storage 2.0.0 3.0.0
azure-mgmt-subscription 0.2.0 0.2.0
azure-mgmt-trafficmanager 0.50.0 0.50.0
azure-mgmt-web 0.35.0 0.40.0
azure-nspkg 3.0.2 3.0.2
certifi 2018.8.24 2018.8.24
cffi 1.11.5 1.11.5
chardet 3.0.4 3.0.4
cryptography 2.3.1 2.3.1
idna 2.7 2.7
isodate 0.6.0 0.6.0
msrest 0.6.0 0.6.0
msrestazure 0.5.0 0.5.0
oauthlib 2.1.0 2.1.0
pip 10.0.1 18.1
pycparser 2.19 2.19
python-dateutil 2.7.3 2.7.3
requests 2.19.1 2.19.1
requests-oauthlib 1.0.0 1.0.0
setuptools 39.1.0 40.4.3发布于 2018-10-10 16:43:40
这是一个日志警告,告诉您这个包还没有准备好支持异步语法,这是事实,我们在msrest 0.6.0中发布了运行时的第一部分,但是我们还没有发布任何具有异步支持的包。
这只是一个警告:paging.py#L40
它不会影响任何代码,也不会引发任何异常。只有尝试使用异步语法的async for (因为警告告诉您,它还没有准备好),您才会遇到问题。
当我们将在今年年底开始发布兼容异步的包时,随着越来越多的包准备就绪,这个警告将自动消失。
如果此警告对您来说确实是个问题,您可以禁用记录器"msrest.async_paging“或将msrest引脚到0.5.5 (在异步核心支持之前)。
如果你觉得这真的是一个很大的问题,可以随意在我们的追踪器上打开一个问题,并且取决于我收到坏反馈的人数,我可能会更改它来调试几个月。但是一旦异步包发布,它将是一个重要的反馈源,我真的认为它应该受到警告。https://github.com/Azure/azure-sdk-for-python/issues
感谢您的反馈!
(我在微软拥有这段代码)。
编辑:由于你不是唯一对此有疑问的人,所以我发布了一个0.6.1,它删除了这个警告。
https://stackoverflow.com/questions/52736390
复制相似问题