github.com/myhau/pulumi/pkg/v3@v3.70.2-0.20221116134521-f2775972e587/codegen/testing/test/testdata/azure-sa-pp/go/azure-sa.go (about)

     1  package main
     2  
     3  import (
     4  	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
     5  	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/storage"
     6  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
     7  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
     8  )
     9  
    10  func main() {
    11  	pulumi.Run(func(ctx *pulumi.Context) error {
    12  		cfg := config.New(ctx, "")
    13  		storageAccountNameParam := cfg.Require("storageAccountNameParam")
    14  		resourceGroupNameParam := cfg.Require("resourceGroupNameParam")
    15  		resourceGroupVar, err := core.LookupResourceGroup(ctx, &core.LookupResourceGroupArgs{
    16  			Name: resourceGroupNameParam,
    17  		}, nil)
    18  		if err != nil {
    19  			return err
    20  		}
    21  		locationParam := resourceGroupVar.Location
    22  		if param := cfg.Get("locationParam"); param != "" {
    23  			locationParam = param
    24  		}
    25  		storageAccountTierParam := "Standard"
    26  		if param := cfg.Get("storageAccountTierParam"); param != "" {
    27  			storageAccountTierParam = param
    28  		}
    29  		storageAccountTypeReplicationParam := "LRS"
    30  		if param := cfg.Get("storageAccountTypeReplicationParam"); param != "" {
    31  			storageAccountTypeReplicationParam = param
    32  		}
    33  		storageAccountResource, err := storage.NewAccount(ctx, "storageAccountResource", &storage.AccountArgs{
    34  			Name:                   pulumi.String(storageAccountNameParam),
    35  			AccountKind:            pulumi.String("StorageV2"),
    36  			Location:               pulumi.String(locationParam),
    37  			ResourceGroupName:      pulumi.String(resourceGroupNameParam),
    38  			AccountTier:            pulumi.String(storageAccountTierParam),
    39  			AccountReplicationType: pulumi.String(storageAccountTypeReplicationParam),
    40  		})
    41  		if err != nil {
    42  			return err
    43  		}
    44  		ctx.Export("storageAccountNameOut", storageAccountResource.Name)
    45  		return nil
    46  	})
    47  }