Azure Infrastructure as Code

Improve your cloud application knowledge with your existing programming skills

If you’re a developer building on Microsoft Azure, then you’ve probably encountered challenges deploying cloud applications. With over 200 services, it can be difficult to know where to start.

What if you could radically simplify building on Azure by using your existing programming knowledge, software tools, and software engineering principles? Enter Infrastructure as Code.

  • index.ts
  • main.go
  • MyStack.cs
import * as resources from "@pulumi/azure-native/resources";
import * as storage from "@pulumi/azure-native/storage";

const resourceGroup = new resources.ResourceGroup("resourceGroup");

const storageAccount = new storage.StorageAccount("sa", {
    sku: {
        name: "Standard_LRS",
    kind: "StorageV2",
from pulumi_azure_native import storage
from pulumi_azure_native import resources

resource_group = resources.ResourceGroup('resource_group')

account = storage.StorageAccount('sa',,
package main

import (

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        resourceGroup, err := resources.NewResourceGroup(ctx, "resourceGroup", nil)
        if err != nil {
            return err

        account, err := storage.NewStorageAccount(ctx, "sa", &storage.StorageAccountArgs{
            ResourceGroupName: resourceGroup.Name,
            Sku: &storage.SkuArgs{
                Name: pulumi.String("Standard_LRS"),
            Kind: pulumi.String("StorageV2"),

        return err
using Pulumi;
using Pulumi.AzureNative.Resources;
using Pulumi.AzureNative.Storage;
using Pulumi.AzureNative.Storage.Inputs;

class MyStack : Stack
    public MyStack()
        var resourceGroup = new ResourceGroup("resourceGroup");

        var storageAccount = new StorageAccount("sa", new StorageAccountArgs
            ResourceGroupName = resourceGroup.Name,
            Sku = new SkuArgs { Name = "Standard_LRS" },
            Kind = "StorageV2"
Powering top engineering teams

Azure Infrastructure as Code makes developing on the cloud easier

The Pulumi Azure provider covers 100% of the resources available in Azure Resource Manager giving you the full power of Azure at your fingertips. Every property of each resource is always represented in the SDKs.

Everything in one place

Azure Infrastructure as Code means you can model and manage Azure resources using programming languages such as C#/F#, Python, TypeScript/JavaScript, and Go.

Use existing tooling

Azure infrastructure becomes application code. You can author code in IDEs and validate it with standard test frameworks. You can also find and use existing libraries in package managers.


You can deploy your Azure infrastructure with a CLI or through your CI/CD process. When changes are needed, simply update your code, check your code into Git and run an update.

Pulumi is your window to the cloud

Pulumi’s Cloud Engineering Platform enables you to manage Azure infrastructure as code using your favorite languages and tools. It’s open source and backed by a vibrant community.

Learn cloud concepts faster through coding

Leverage Pulumi’s programmable cloud interface with code auto-completion, smart configuration defaults, type & error checking, and reusable packages with best practices.

Complete coverage of the Azure platform

The Pulumi Azure Native Provider SDK covers 100% of the resources available in Azure Resource Manager and gives you same-day access to newly released Azure features.

Use engineering practices with infrastructure

Adopt infrastructure as code automation, combined with tried and true software engineering practices—including modularity, testing, and CI/CD—to do more with less.

Use familiar tools and services

Pulumi supports IDEs like Visual Studio and VS Code, package managers like NuGet Gallery, common test frameworks, and developer tools like GitHub and Azure DevOps.

Become a super effective Azure developer today

Are you ready to level up your cloud skills with Azure Infrastructure as Code? Get started with Pulumi today by following our five-part series on top 5 things Azure developers should know.

Need Help?

Need technical help?

Use our Support Portal to get in touch.

Need help getting started?

Send us a note, and someone will reach out to help you.

Want a demo?

Talk with an expert to see how Pulumi fits your use case.

Something else on your mind?

Send us a note.