概要
Azure SDK for Python を利用して、特定のサブスクリプションにあるリソースグループ一覧を取得するための Python プログラムです。
実行環境
macOS Big Sur 11.1
python 3.8.3
実行プログラム
GetResourceGroup.py
import os
import time
import argparse
from azure.mgmt.resource import ResourceManagementClient
from azure.identity import AzureCliCredential
SUBSCRIPTION_ID = os.environ['ARM_SUBSCRIPTION_ID']
# 特定のサブスクリプションIDのリソースグループを操作するオブジェクトを取得
def GetResourceGroupObject(subs_id):
resource_client = ResourceManagementClient(
credential=AzureCliCredential(),
subscription_id=subs_id
)
return resource_client
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='Subscription の ResourceGroup 一覧の取得')
args = parser.parse_args()
start = time.time()
resource_client = GetResourceGroupObject(SUBSCRIPTION_ID)
generate_time = time.time() - start
print("\n 取得時間:{0}".format(generate_time) + " [sec]")
print("\n リソースグループ一覧:")
# リソースグループ一覧を取得
for num, rg in enumerate(resource_client.resource_groups.list()):
print("{} {}".format(rg.name, rg.location))
resource_client.close()
print("\n リソースグループ数:{0} \n".format(num+1))
プログラムの実行
$ python GetResourceGroup.py
取得時間:0.0002779960632324219 [sec]
リソースグループ一覧:
rg-yas-01 japaneast
rg-yas-02 japaneast
rg_koumu japaneast
rg_c4th japaneast
:
中略
:
rg_azstackhci japaneast
rg-lab-01 japaneast
rg-lab-02 southeastasia
リソースグループ数:22
まとめ
Azure CLI で取得するのもよいですが、プログラムでゴリゴリしたいときはこちらですね。