Skip to main content

azure-mgmt-fabric-py

Azure Fabric Management SDK for Python. Use for managing Microsoft Fabric capacities and resources. Triggers: "azure-mgmt-fabric", "FabricMgmtClient", "Fabric capacity", "Microsoft Fabric", "Power BI capacity".

跳到安装

来源信息

仓库
LongLeo287/OmniClaw
最近来源活动
2026年4月11日 09:08
检测到的 SKILL.md 语言
英语
星标
7
分支
0

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
5 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
azure_mgmt_fabric_py
description
Azure Fabric Management SDK for Python. Use for managing Microsoft Fabric capacities and resources. Triggers: "azure-mgmt-fabric", "FabricMgmtClient", "Fabric capacity", "Microsoft Fabric", "Power BI capacity".
license
MIT
metadata
{"author":"Microsoft","version":"1.0.0"}
# Azure Fabric Management SDK for Python Manage Microsoft Fabric capacities and resources programmatically. ## Installation ```bash pip install azure-mgmt-fabric pip install azure-identity ``` ## Environment Variables ```bash AZURE_SUBSCRIPTION_ID=<your-subscription-id> AZURE_RESOURCE_GROUP=<your-resource-group> ``` ## Authentication ```python from azure.identity import DefaultAzureCredential from azure.mgmt.fabric import FabricMgmtClient import os credential = DefaultAzureCredential() client = FabricMgmtClient( credential=credential, subscription_id=os.environ["AZURE_SUBSCRIPTION_ID"] ) ``` ## Create Fabric Capacity ```python from azure.mgmt.fabric import FabricMgmtClient from azure.mgmt.fabric.models import FabricCapacity, FabricCapacityProperties, CapacitySku from azure.identity import DefaultAzureCredential import os credential = DefaultAzureCredential() client = FabricMgmtClient( credential=credential, subscription_id=os.environ["AZURE_SUBSCRIPTION_ID"] ) resource_group = os.environ["AZURE_RESOURCE_GROUP"] capacity_name = "myfabriccapacity" capacity = client.fabric_capacities.begin_create_or_update( resource_group_name=resource_group, capacity_name=capacity_name, resource=FabricCapacity( location="eastus", sku=CapacitySku( name="F2", # Fabric SKU tier="Fabric" ), properties=FabricCapacityProperties( administration=FabricCapacityAdministration( members=["user@contoso.com"] ) ) ) ).result() print(f"Capacity created: {capacity.name}") ``` ## Get Capacity Details ```python capacity = client.fabric_capacities.get( resource_group_name=resource_group, capacity_name=capacity_name ) print(f"Capacity: {capacity.name}") print(f"SKU: {capacity.sku.name}") print(f"State: {capacity.properties.state}") print(f"Location: {capacity.location}") ``` ## List Capacities in Resource Group ```python capacities = client.fabric_capacities.list_by_resource_group( resource_group_name=resource_group ) for capacity in capacities: print(f"Capacity: {capacity.name} - SKU: {capacity.sku.name}") ``` ## List All Capacities in Subscription ```python all_capacities = client.fabric_capacities.list_by_subscription() for capacity in all_capacities: print(f"Capacity: {capacity.name} in {capacity.location}") ``` ## Update Capacity ```python from azure.mgmt.fabric.models import FabricCapacityUpdate, CapacitySku updated = client.fabric_capacities.begin_update( resource_group_name=resource_group, capacity_name=capacity_name, properties=FabricCapacityUpdate( sku=CapacitySku( name="F4", # Scale up tier="Fabric" ), tags={"environment": "production"} ) ).result() print(f"Updated SKU: {updated.sku.name}") ``` ## Suspend Capacity Pause capacity to stop billing: ```python client.fabric_capacities.begin_suspend( resource_group_name=resource_group, capacity_name=capacity_name ).result() print("Capacity suspended") ``` ## Resume Capacity Resume a paused capacity: ```python client.fabric_capacities.begin_resume( resource_group_name=resource_group, capacity_name=capacity_name ).result() print("Capacity resumed") ``` ## Delete Capacity ```python client.fabric_capacities.begin_delete( resource_group_name=resource_group, capacity_name=capacity_name ).result() print("Capacity deleted") ``` ## Check Name Availability ```python from azure.mgmt.fabric.models import CheckNameAvailabilityRequest result = client.fabric_capacities.check_name_availability( location="eastus", body=CheckNameAvailabilityRequest( name="my-new-capacity", type="Microsoft.Fabric/capacities" ) ) if result.name_available: print("Name is available") else: print(f"Name not available: {result.reason}") ``` ## List Available SKUs ```python skus = client.fabric_capacities.list_skus( resource_group_name=resource_group, capacity_name=capacity_name ) for sku in skus: print(f"SKU: {sku.name} - Tier: {sku.tier}") ``` ## Client Operations | Operation | Method | |-----------|--------| | `client.fabric_capacities` | Capacity CRUD operations | | `client.operations` | List available operations | ## Fabric SKUs | SKU | Description | CUs | |-----|-------------|-----| | `F2` | Entry level | 2 Capacity Units | | `F4` | Small | 4 Capacity Units | | `F8` | Medium | 8 Capacity Units | | `F16` | Large | 16 Capacity Units | | `F32` | X-Large | 32 Capacity Units | | `F64` | 2X-Large | 64 Capacity Units | | `F128` | 4X-Large | 128 Capacity Units | | `F256` | 8X-Large | 256 Capacity Units | | `F512` | 16X-Large | 512 Capacity Units | | `F1024` | 32X-Large | 1024 Capacity Units | | `F2048` | 64X-Large | 2048 Capacity Units | ## Capacity States | State | Description | |-------|-------------| | `Active` | Capacity is running | | `Paused` | Capacity is suspended (no billing) | | `Provisioning` | Being created | | `Updating` | Being modified | | `Deleting` | Being removed | | `Failed` | Operation failed | ## Long-Running Operations All mutating operations are long-running (LRO). Use `.result()` to wait: ```python # Synchronous wait capacity = client.fabric_capacities.begin_create_or_update(...).result() # Or poll manually poller = client.fabric_capacities.begin_create_or_update(...) while not poller.done(): print(f"Status: {poller.status()}") time.sleep(5) capacity = poller.result() ``` ## Best Practices 1. **Use DefaultAzureCredential** for authentication 2. **Suspend unused capacities** to reduce costs 3. **Start with smaller SKUs** and scale up as needed 4. **Use tags** for cost tracking and organization 5. **Check name availability** before creating capacities 6. **Handle LRO properly** — don't assume immediate completion 7. **Set up capacity admins** — specify users who can manage workspaces 8. **Monitor capacity usage** via Azure Monitor metrics
在 GitHub 查看