Pulumi Azure Classic
raw JSON → 6.35.0 verified Fri May 01 auth: no python
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. Version 6.35.0, released monthly. Note: Pulumi recommends using the Azure Native provider (pulumi-azure-native) for complete coverage and same-day updates.
pip install pulumi-azure Common errors
error ImportError: cannot import name 'ResourceGroup' from 'pulumi_azure' ↓
cause Attempting to import ResourceGroup from the top-level package instead of submodule.
fix
Use: from pulumi_azure.core import ResourceGroup
error pulumi_azure.exceptions.InvalidResourceType: The resource type 'azurerm_resource_group' is not valid ↓
cause Using Terraform-style resource names (azurerm_*) in Pulumi.
fix
Use the Pulumi resource class, e.g., ResourceGroup instead of 'azurerm_resource_group'.
error KeyError: 'location' ↓
cause Forgot to specify location for a resource that requires it.
fix
Add the location argument: ResourceGroup("my-rg", location="West US")
Warnings
deprecated pulumi-azure is deprecated in favor of pulumi-azure-native for new projects. Azure Native provides complete coverage and same-day updates. ↓
fix Use pulumi-azure-native instead: pip install pulumi-azure-native
breaking Version 6.0.0 introduced breaking changes, including renaming resources and modules. For example, azure.publicip became azure.network.PublicIp. ↓
fix Consult the migration guide: https://www.pulumi.com/docs/guides/crosswalk/azure/migration-v5-v6/
gotcha Resource group location must be set explicitly; it does not default to the provider region. ↓
fix Always specify the location argument for resources that require it.
Imports
- ResourceGroup wrong
from pulumi_azure import ResourceGroupcorrectfrom pulumi_azure.core import ResourceGroup - AppServicePlan wrong
from pulumi_azure.appservice import AppServicePlancorrectfrom pulumi_azure.appservice import Plan
Quickstart
import pulumi
from pulumi_azure.core import ResourceGroup
config = pulumi.Config()
location = config.get("location", "West Europe")
rg = ResourceGroup("my-rg", location=location)
pulumi.export("resource_group_name", rg.name)