bumpy-byte-21437
10/06/2020, 12:45 PMimport pulumi
config = pulumi.Config()
import pulumi_azure_nextgen as azure
#----------------------------------------------------------------------------------------
# Resourcegroups
#----------------------------------------------------------------------------------------
resource_group = azure.resources.latest.ResourceGroup("resourceGroup",
location=(config.require('region')),
resource_group_name="dkotst342")
#----------------------------------------------------------------------------------------
# Storage accounts
#----------------------------------------------------------------------------------------
storage_account = azure.storage.latest.StorageAccount("storageAccount",
account_name=(config.require('sa_name')),
allow_blob_public_access=False,
is_hns_enabled=True,
kind="StorageV2",
location=(config.require('region')),
minimum_tls_version="TLS1_2",
enable_https_traffic_only=True,
resource_group_name=resource_group.name,
routing_preference={
"publishInternetEndpoints": True,
"publishMicrosoftEndpoints": True,
"routingChoice": "MicrosoftRouting",
},
sku={
"name": "Standard_GRS",
},)
#----------------------------------------------------------------------------------------
# Storage containers
#----------------------------------------------------------------------------------------
blob_container = azure.storage.latest.BlobContainer("blobContainer",
account_name=storage_account.name,
container_name="container231",
resource_group_name=resource_group.name)
#----------------------------------------------------------------------------------------
# Storage account management policy
#----------------------------------------------------------------------------------------
management_policy = azure.storage.latest.ManagementPolicy("managementPolicy",
account_name=storage_account.name,
management_policy_name="default",
policy={
"rules": [
{
"definition": {
"actions": {
"baseBlob": {
"delete": {
"daysAfterModificationGreaterThan": 1000,
},
"tierToArchive": {
"daysAfterModificationGreaterThan": 90,
},
"tierToCool": {
"daysAfterModificationGreaterThan": 30,
},
},
},
"filters": {
"blobTypes": [ "blockBlob" ],
"prefixMatch": [ "olcmtestcontainer2" ],
},
},
"enabled": True,
"name": "dkotst",
"type": "Lifecycle",
},
],
},
resource_group_name=resource_group.name)