skillfed

pulumi-azure

A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.

pulumi-azure v6.39.0 206.6K downloads/30d#9,567 on PyPI143
Permissive license Apache-2.0 Active released

What it is and what it does

Pulumi-azure is a resource provider that bridges Pulumi's infrastructure-as-code framework with Microsoft Azure, letting you define Azure resources in Python code rather than through the Azure portal or templates. It wraps the Terraform azurerm provider, exposing Azure services like compute, storage, key vault, and databases as strongly-typed Python objects. You write Python functions that declare what infrastructure you want, then Pulumi handles the provisioning and lifecycle management.

The package is explicitly positioned as the Classic provider—the description recommends Azure Native for new projects because Native has broader resource coverage and faster access to new Azure features. Azure Classic remains fully supported for existing deployments but receives new features more slowly. It depends on pulumi as its core orchestration engine, plus parver and semver for version constraint handling, and typing-extensions for runtime type support.

Use it for:

  • Define and deploy Azure infrastructure (VMs, databases, networking) using Python code instead of ARM templates or portal clicks
  • Manage existing Azure Classic deployments and updates through version-controlled infrastructure code
  • Integrate Azure resource provisioning into CI/CD pipelines as part of application deployment workflows
  • Reuse infrastructure patterns across projects by writing Python functions that generate common Azure configurations

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Pulumi provider for Azure Classic that lets you define and manage Azure cloud resources programmatically using Python, alongside parver, semver, and typing-extensions for version handling.

Yes, if you are maintaining existing Azure Classic infrastructure or prefer Python-based infrastructure-as-code with Pulumi. No, if starting a new Azure project—the package's own documentation recommends Azure Native instead for new deployments. Install friction is low and maintenance is active, but verify that Classic's slower feature velocity meets your resource and timeline needs.

Install

pulumi-azure on PyPI

pip

pip install pulumi-azure

uv

uv add pulumi-azure

poetry

poetry add pulumi-azure

Installing pulumi-azure

Before you install

Low install friction with a pure-Python wheel distribution. Active maintenance with a release 31 days ago and ongoing repository activity. Requires Python 3.9 or later.

License in practice

Licensed under Apache-2.0 (permissive), allowing use in commercial and open-source projects with minimal restrictions beyond attribution and liability disclaimers.

Quickstart

pip install pulumi-azure

import pulumi
import pulumi_azure as azure

# Create an Azure resource group
resource_group = azure.core.ResourceGroup('my-rg',
    location='eastus')

Requires Pulumi CLI to be installed separately and Azure credentials configured (via environment variables, Azure CLI, or managed identity)

Verify before relying

  • Whether Azure Classic resource coverage meets your specific infrastructure needs compared to Azure Native provider
  • Performance characteristics and deployment speed for large-scale infrastructure
  • Community support and third-party tooling ecosystem maturity

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 4 — parver, pulumi, semver, typing-extensions
Maintenance actively maintained — 31 days since the last release
Last repo commit
First released
Downloads 206,620/month — #9,567 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pulumi_azure-6.39.0-py3-none-any.whl

Keywords: pulumi, azure

Tags

infrastructure as code azurepulumi azure providerazure resource management pythoncloud infrastructure automationazure classic provisioningdeclarative azure deploymentpulumi infrastructure templates
infrastructure-as-codecloud-provisioningazure-legacy

More Build Tools packages