184 lines
8.0 KiB
Markdown
184 lines
8.0 KiB
Markdown
---
|
||
title: Azure Infrastructure as Code
|
||
layout: azure
|
||
url: /azure/azure-infrastructure-as-code
|
||
|
||
meta_desc: Azure Infrastructure as Code means you can model and manage Azure resources using programming languages such as C#/F#, Python, TypeScript/JavaScript, and Go.
|
||
|
||
hero:
|
||
title: Improve your cloud application knowledge with your existing programming skills
|
||
description: |
|
||
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](/what-is/what-is-infrastructure-as-code/).
|
||
ide:
|
||
tabs:
|
||
- title: index.ts
|
||
language: typescript
|
||
code: |
|
||
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", {
|
||
resourceGroupName: resourceGroup.name,
|
||
sku: {
|
||
name: "Standard_LRS",
|
||
},
|
||
kind: "StorageV2",
|
||
});
|
||
- title: __main__.py
|
||
language: python
|
||
code: |
|
||
from pulumi_azure_native import storage
|
||
from pulumi_azure_native import resources
|
||
|
||
resource_group = resources.ResourceGroup('resource_group')
|
||
|
||
account = storage.StorageAccount('sa',
|
||
resource_group_name=resource_group.name,
|
||
sku=storage.SkuArgs(name='Standard_LRS'),
|
||
kind='StorageV2')
|
||
- title: main.go
|
||
language: go
|
||
code: |
|
||
package main
|
||
|
||
import (
|
||
"github.com/pulumi/pulumi-azure-native/sdk/go/azure/resources"
|
||
"github.com/pulumi/pulumi-azure-native/sdk/go/azure/storage"
|
||
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
|
||
)
|
||
|
||
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
|
||
})
|
||
}
|
||
- title: MyStack.cs
|
||
language: csharp
|
||
code: |
|
||
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"
|
||
});
|
||
}
|
||
}
|
||
|
||
customer_logos:
|
||
title: Powering top engineering teams
|
||
logos:
|
||
- items:
|
||
- snowflake
|
||
- tableau
|
||
- atlassian
|
||
- fauna
|
||
- sans
|
||
- items:
|
||
- mindbody
|
||
- sourcegraph
|
||
- fenergo
|
||
- skai
|
||
- lemonade
|
||
- items:
|
||
- clearsale
|
||
- angellist
|
||
- webflow
|
||
- supabase
|
||
- ro
|
||
|
||
detail_sections:
|
||
- title: Azure Infrastructure as Code makes developing on the cloud easier
|
||
description: |
|
||
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.
|
||
items:
|
||
- title: Everything in one place
|
||
icon: cloud-with-nodes
|
||
icon_color: violet
|
||
description: |
|
||
Azure Infrastructure as Code means you can model and manage Azure resources using programming languages such as C#/F#, Python, TypeScript/JavaScript, and Go.
|
||
|
||
- title: Use existing tooling
|
||
icon: lightning
|
||
icon_color: yellow
|
||
description: |
|
||
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.
|
||
|
||
- title: Automation
|
||
icon: rocketship
|
||
icon_color: salmon
|
||
description: |
|
||
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.
|
||
|
||
- title: Pulumi is your window to the cloud
|
||
description: |
|
||
Pulumi’s [Cloud Engineering Platform](/azure/) enables you to manage Azure infrastructure as code using your favorite languages and tools. It’s open source and backed by a vibrant community.
|
||
items:
|
||
- title: Learn cloud concepts faster through coding
|
||
icon: cycle
|
||
icon_color: blue
|
||
description: Leverage Pulumi’s programmable cloud interface with code auto-completion, smart configuration defaults, type & error checking, and reusable packages with best practices.
|
||
|
||
- title: Complete coverage of the Azure platform
|
||
icon: clipboard
|
||
icon_color: purple
|
||
description: The [Pulumi Azure Native Provider SDK](/registry/packages/azure-native/) covers 100% of the resources available in Azure Resource Manager and gives you same-day access to newly released Azure features.
|
||
|
||
- title: Use engineering practices with infrastructure
|
||
icon: nodes
|
||
icon_color: salmon
|
||
description: Adopt infrastructure as code automation, combined with tried and true software engineering practices—including modularity, testing, and CI/CD—to do more with less.
|
||
|
||
- title: Use familiar tools and services
|
||
icon: code
|
||
icon_color: yellow
|
||
description: 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.
|
||
|
||
resources:
|
||
azure:
|
||
title: Become a super effective Azure developer today
|
||
description: |
|
||
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](/blog/top-5-things-for-azure-devs-intro/).
|
||
items:
|
||
- "[Azure Virtual Machines](/blog/top-5-things-for-azure-devs-vm/)"
|
||
- "[Serverless](/blog/top-5-things-for-azure-devs-serverless/)"
|
||
- "[Static websites](/blog/top-5-things-for-azure-devs-static-websites/)"
|
||
- "[Kubernetes infrastructure](/blog/top-5-things-for-azure-devs-kubernetes-infrastructure/) and [Kubernetes applications](/blog/top-5-things-for-azure-devs-kubernetes-apps/)"
|
||
- "[DevOps integration](/blog/top-5-things-for-azure-devs-devops/)"
|
||
|
||
other:
|
||
title: Other resources
|
||
items:
|
||
- "[Watch a workshop](/resources/getting-started-with-azure-native/)"
|
||
- "[Convert an existing ARM template](/arm2pulumi/)"
|
||
---
|