1. Packages
  2. Azure Classic
  3. How-to Guides
  4. Azure Resource Manager (ARM) Template

We recommend using Azure Native.

Azure Classic v5.73.0 published on Monday, Apr 22, 2024 by Pulumi

Azure Resource Manager (ARM) Template

azure logo

We recommend using Azure Native.

Azure Classic v5.73.0 published on Monday, Apr 22, 2024 by Pulumi

    View Code Deploy

    This example simply deploys an existing Azure Resource Manager (ARM) template using Pulumi. This accepts any existing valid ARM template, enabling easy migration from existing JSON templates and towards infrastructure as code using Pulumi. Once deployed, it is easy to incrementally refactor resources at a time out of the template and into code.

    Read more about ARM templates here.

    Prerequisites

    Ensure you have downloaded and installed the Pulumi CLI.

    We will be deploying to Azure, so you will need an Azure account. If you don’t have an account, sign up for free here. Follow the instructions here to connect Pulumi to your Azure account.

    Now, install dependencies:

    npm install
    

    Running the App

    1. Create a new stack:

      $ pulumi stack init
      Enter a stack name: azure-arm-dev
      
    2. Set the required configuration variables for this program, and log into Azure:

      $ pulumi config set azure:environment public
      $ pulumi config set azure:location westus2
      $ az login
      
    3. Perform the deployment:

      $ pulumi up
      Updating stack 'azure-arm-dev'
      Performing changes:
      
           Type                                           Name                      Status
       +   pulumi:pulumi:Stack                            azure-arm--azure-arm-dev  created
       +   ├─ azure:core:ResourceGroup                    rg                        created
       +   └─ azure:core:ResourceGroupTemplateDeployment  arm-dep                   created
      
      Outputs:
          storageAccountName: "abevrwebgje2wstorage"
      
      Resources:
          + 3 created
      
      Duration: 1m8s
      

      Notice here that the storageAccountName allocated by the ARM template deployment is exported.

    4. Tidy up and delete all resources allocated by your deployment:

      $ pulumi destroy -y --skip-preview
      $ pulumi stack rm -y --skip-preview
      

    Next Steps

    For more Azure examples, please check out the Azure Getting Started Guide.

    azure logo

    We recommend using Azure Native.

    Azure Classic v5.73.0 published on Monday, Apr 22, 2024 by Pulumi