From 14661dfda722e26605a0983e9fcea17732fc6279 Mon Sep 17 00:00:00 2001 From: pulumi-bot Date: Mon, 18 Dec 2023 14:21:45 +0000 Subject: [PATCH 1/2] make tfgen --- examples/go.mod | 6 ++- examples/go.sum | 8 ++-- .../cmd/pulumi-resource-azure/schema.json | 40 +++++++++---------- provider/go.mod | 6 ++- provider/go.sum | 8 ++-- sdk/go.mod | 4 ++ sdk/go.sum | 4 +- 7 files changed, 44 insertions(+), 32 deletions(-) diff --git a/examples/go.mod b/examples/go.mod index 3bde8912bb..0bf8da00cf 100644 --- a/examples/go.mod +++ b/examples/go.mod @@ -144,7 +144,7 @@ require ( github.com/pmezard/go-difflib v1.0.0 // indirect github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 // indirect github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5 // indirect - github.com/pulumi/pulumi/sdk/v3 v3.96.2 // indirect + github.com/pulumi/pulumi/sdk/v3 v3.97.0 // indirect github.com/rivo/uniseg v0.4.4 // indirect github.com/rogpeppe/go-internal v1.11.0 // indirect github.com/ryanuber/go-glob v1.0.0 // indirect @@ -193,3 +193,7 @@ require ( gopkg.in/yaml.v3 v3.0.1 // indirect lukechampine.com/frand v1.4.2 // indirect ) + +replace github.com/pulumi/pulumi/pkg/v3 => github.com/pulumi/pulumi/pkg/v3 v3.78.2-0.20231218141242-d45f203c99f7 + +replace github.com/pulumi/pulumi/sdk/v3 => github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7 diff --git a/examples/go.sum b/examples/go.sum index 3287a36a17..148e7dbf46 100644 --- a/examples/go.sum +++ b/examples/go.sum @@ -1447,10 +1447,10 @@ github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435 github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5 h1:1DJMji9F7XPea46bSuhy4/85n8J4/Mfz8PWLZtjKKiI= github.com/pulumi/esc v0.6.1-0.20231111193429-44b746a5b3b5/go.mod h1:Y6W21yUukvxS2NnS5ae1beMSPhMvj0xNAYcDqDHVj/g= -github.com/pulumi/pulumi/pkg/v3 v3.96.2 h1:d+zDsh4K1j90q/upDRkhgxHkspP20Xxd3g6OaMbw574= -github.com/pulumi/pulumi/pkg/v3 v3.96.2/go.mod h1:lR+q06XrnEqRzJXZ6IeHb4nu+U5fswFcc51Q0MRBTio= -github.com/pulumi/pulumi/sdk/v3 v3.96.2 h1:q5ZKdf+e9JR+a6Eiueg0Ohy6jCQGk9pO2V7xI/qGP3I= -github.com/pulumi/pulumi/sdk/v3 v3.96.2/go.mod h1:yvD23IIRiqIXuo4kaZNe5zK/uT0nhO99wr6BVEqoi7A= +github.com/pulumi/pulumi/pkg/v3 v3.78.2-0.20231218141242-d45f203c99f7 h1:a+qLIfU0BGhjyjWtgTlyvj/Eu1fjfxTO4eJ7VH2fXko= +github.com/pulumi/pulumi/pkg/v3 v3.78.2-0.20231218141242-d45f203c99f7/go.mod h1:GmiL5PyX6XW45zwUyoinz7vp1dMdKjDHJORUdoP+RVI= +github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7 h1:zXfLod7sP0MzAZlaMgrpxONdTVuBZ108QowGVZ+G+HI= +github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7/go.mod h1:yvD23IIRiqIXuo4kaZNe5zK/uT0nhO99wr6BVEqoi7A= github.com/rakyll/embedmd v0.0.0-20171029212350-c8060a0752a2/go.mod h1:7jOTMgqac46PZcF54q6l2hkLEG8op93fZu61KmxWDV4= github.com/rcrowley/go-metrics v0.0.0-20181016184325-3113b8401b8a/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= diff --git a/provider/cmd/pulumi-resource-azure/schema.json b/provider/cmd/pulumi-resource-azure/schema.json index 9dfc726bac..ca41eaf60d 100644 --- a/provider/cmd/pulumi-resource-azure/schema.json +++ b/provider/cmd/pulumi-resource-azure/schema.json @@ -101924,7 +101924,7 @@ } }, "azure:apimanagement/certificate:Certificate": { - "description": "Manages an Certificate within an API Management Service.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### With Base64 Certificate)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"My Company\",\n publisherEmail: \"company@exmaple.com\",\n skuName: \"Developer_1\",\n});\nconst exampleCertificate = new azure.apimanagement.Certificate(\"exampleCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n data: Buffer.from(fs.readFileSync(\"example.pfx\"), 'binary').toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"My Company\",\n publisher_email=\"company@exmaple.com\",\n sku_name=\"Developer_1\")\nexample_certificate = azure.apimanagement.Certificate(\"exampleCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n data=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.pfx\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"My Company\",\n PublisherEmail = \"company@exmaple.com\",\n SkuName = \"Developer_1\",\n });\n\n var exampleCertificate = new Azure.ApiManagement.Certificate(\"exampleCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Data = ReadFileBase64(\"example.pfx\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"My Company\"),\n\t\t\tPublisherEmail: pulumi.String(\"company@exmaple.com\"),\n\t\t\tSkuName: pulumi.String(\"Developer_1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewCertificate(ctx, \"exampleCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tData: filebase64OrPanic(\"example.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"My Company\")\n .publisherEmail(\"company@exmaple.com\")\n .skuName(\"Developer_1\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .data(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.pfx\"))))\n .build());\n\n }\n}\n```\n\n{{% /example %}}\n{{% example %}}\n### With Key Vault Certificate)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"My Company\",\n publisherEmail: \"company@terraform.io\",\n skuName: \"Developer_1\",\n identity: {\n type: \"SystemAssigned\",\n },\n});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"standard\",\n});\nconst exampleAccessPolicy = new azure.keyvault.AccessPolicy(\"exampleAccessPolicy\", {\n keyVaultId: exampleKeyVault.id,\n tenantId: exampleService.identity.apply(identity =\u003e identity?.tenantId),\n objectId: exampleService.identity.apply(identity =\u003e identity?.principalId),\n secretPermissions: [\"Get\"],\n certificatePermissions: [\"Get\"],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"example_cert.pfx\"), 'binary').toString('base64'),\n password: \"terraform\",\n },\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: false,\n },\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n },\n});\nconst exampleApimanagement_certificateCertificate = new azure.apimanagement.Certificate(\"exampleApimanagement/certificateCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n keyVaultSecretId: exampleCertificate.secretId,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"My Company\",\n publisher_email=\"company@terraform.io\",\n sku_name=\"Developer_1\",\n identity=azure.apimanagement.ServiceIdentityArgs(\n type=\"SystemAssigned\",\n ))\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"standard\")\nexample_access_policy = azure.keyvault.AccessPolicy(\"exampleAccessPolicy\",\n key_vault_id=example_key_vault.id,\n tenant_id=example_service.identity.tenant_id,\n object_id=example_service.identity.principal_id,\n secret_permissions=[\"Get\"],\n certificate_permissions=[\"Get\"])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example_cert.pfx\"),\n password=\"terraform\",\n ),\n certificate_policy=azure.keyvault.CertificateCertificatePolicyArgs(\n issuer_parameters=azure.keyvault.CertificateCertificatePolicyIssuerParametersArgs(\n name=\"Self\",\n ),\n key_properties=azure.keyvault.CertificateCertificatePolicyKeyPropertiesArgs(\n exportable=True,\n key_size=2048,\n key_type=\"RSA\",\n reuse_key=False,\n ),\n secret_properties=azure.keyvault.CertificateCertificatePolicySecretPropertiesArgs(\n content_type=\"application/x-pkcs12\",\n ),\n ))\nexample_apimanagement_certificate_certificate = azure.apimanagement.Certificate(\"exampleApimanagement/certificateCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n key_vault_secret_id=example_certificate.secret_id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"My Company\",\n PublisherEmail = \"company@terraform.io\",\n SkuName = \"Developer_1\",\n Identity = new Azure.ApiManagement.Inputs.ServiceIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"standard\",\n });\n\n var exampleAccessPolicy = new Azure.KeyVault.AccessPolicy(\"exampleAccessPolicy\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n TenantId = exampleService.Identity.Apply(identity =\u003e identity?.TenantId),\n ObjectId = exampleService.Identity.Apply(identity =\u003e identity?.PrincipalId),\n SecretPermissions = new[]\n {\n \"Get\",\n },\n CertificatePermissions = new[]\n {\n \"Get\",\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"example_cert.pfx\"),\n Password = \"terraform\",\n },\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = false,\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n },\n });\n\n var exampleApimanagement_certificateCertificate = new Azure.ApiManagement.Certificate(\"exampleApimanagement/certificateCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n KeyVaultSecretId = exampleCertificate.SecretId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"My Company\"),\n\t\t\tPublisherEmail: pulumi.String(\"company@terraform.io\"),\n\t\t\tSkuName: pulumi.String(\"Developer_1\"),\n\t\t\tIdentity: \u0026apimanagement.ServiceIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"standard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewAccessPolicy(ctx, \"exampleAccessPolicy\", \u0026keyvault.AccessPolicyArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tTenantId: exampleService.Identity.ApplyT(func(identity apimanagement.ServiceIdentity) (*string, error) {\n\t\t\t\treturn \u0026identity.TenantId, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tObjectId: exampleService.Identity.ApplyT(func(identity apimanagement.ServiceIdentity) (*string, error) {\n\t\t\t\treturn \u0026identity.PrincipalId, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t},\n\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"example_cert.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"terraform\"),\n\t\t\t},\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewCertificate(ctx, \"exampleApimanagement/certificateCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tKeyVaultSecretId: exampleCertificate.SecretId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.inputs.ServiceIdentityArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.AccessPolicy;\nimport com.pulumi.azure.keyvault.AccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"My Company\")\n .publisherEmail(\"company@terraform.io\")\n .skuName(\"Developer_1\")\n .identity(ServiceIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"standard\")\n .build());\n\n var exampleAccessPolicy = new AccessPolicy(\"exampleAccessPolicy\", AccessPolicyArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .tenantId(exampleService.identity().applyValue(identity -\u003e identity.tenantId()))\n .objectId(exampleService.identity().applyValue(identity -\u003e identity.principalId()))\n .secretPermissions(\"Get\")\n .certificatePermissions(\"Get\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example_cert.pfx\"))))\n .password(\"terraform\")\n .build())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(false)\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .build())\n .build());\n\n var exampleApimanagement_certificateCertificate = new Certificate(\"exampleApimanagement/certificateCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .keyVaultSecretId(exampleCertificate.secretId())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1/certificates/certificate1\n```\n\n ", + "description": "Manages an Certificate within an API Management Service.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### With Base64 Certificate)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"My Company\",\n publisherEmail: \"company@exmaple.com\",\n skuName: \"Developer_1\",\n});\nconst exampleCertificate = new azure.apimanagement.Certificate(\"exampleCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n data: Buffer.from(fs.readFileSync(\"example.pfx\", 'binary')).toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"My Company\",\n publisher_email=\"company@exmaple.com\",\n sku_name=\"Developer_1\")\nexample_certificate = azure.apimanagement.Certificate(\"exampleCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n data=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.pfx\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"My Company\",\n PublisherEmail = \"company@exmaple.com\",\n SkuName = \"Developer_1\",\n });\n\n var exampleCertificate = new Azure.ApiManagement.Certificate(\"exampleCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Data = ReadFileBase64(\"example.pfx\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"My Company\"),\n\t\t\tPublisherEmail: pulumi.String(\"company@exmaple.com\"),\n\t\t\tSkuName: pulumi.String(\"Developer_1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewCertificate(ctx, \"exampleCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tData: filebase64OrPanic(\"example.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"My Company\")\n .publisherEmail(\"company@exmaple.com\")\n .skuName(\"Developer_1\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .data(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.pfx\"))))\n .build());\n\n }\n}\n```\n\n{{% /example %}}\n{{% example %}}\n### With Key Vault Certificate)\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"My Company\",\n publisherEmail: \"company@terraform.io\",\n skuName: \"Developer_1\",\n identity: {\n type: \"SystemAssigned\",\n },\n});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"standard\",\n});\nconst exampleAccessPolicy = new azure.keyvault.AccessPolicy(\"exampleAccessPolicy\", {\n keyVaultId: exampleKeyVault.id,\n tenantId: exampleService.identity.apply(identity =\u003e identity?.tenantId),\n objectId: exampleService.identity.apply(identity =\u003e identity?.principalId),\n secretPermissions: [\"Get\"],\n certificatePermissions: [\"Get\"],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"example_cert.pfx\", 'binary')).toString('base64'),\n password: \"terraform\",\n },\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: false,\n },\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n },\n});\nconst exampleApimanagement_certificateCertificate = new azure.apimanagement.Certificate(\"exampleApimanagement/certificateCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n keyVaultSecretId: exampleCertificate.secretId,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"My Company\",\n publisher_email=\"company@terraform.io\",\n sku_name=\"Developer_1\",\n identity=azure.apimanagement.ServiceIdentityArgs(\n type=\"SystemAssigned\",\n ))\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"standard\")\nexample_access_policy = azure.keyvault.AccessPolicy(\"exampleAccessPolicy\",\n key_vault_id=example_key_vault.id,\n tenant_id=example_service.identity.tenant_id,\n object_id=example_service.identity.principal_id,\n secret_permissions=[\"Get\"],\n certificate_permissions=[\"Get\"])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example_cert.pfx\"),\n password=\"terraform\",\n ),\n certificate_policy=azure.keyvault.CertificateCertificatePolicyArgs(\n issuer_parameters=azure.keyvault.CertificateCertificatePolicyIssuerParametersArgs(\n name=\"Self\",\n ),\n key_properties=azure.keyvault.CertificateCertificatePolicyKeyPropertiesArgs(\n exportable=True,\n key_size=2048,\n key_type=\"RSA\",\n reuse_key=False,\n ),\n secret_properties=azure.keyvault.CertificateCertificatePolicySecretPropertiesArgs(\n content_type=\"application/x-pkcs12\",\n ),\n ))\nexample_apimanagement_certificate_certificate = azure.apimanagement.Certificate(\"exampleApimanagement/certificateCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n key_vault_secret_id=example_certificate.secret_id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"My Company\",\n PublisherEmail = \"company@terraform.io\",\n SkuName = \"Developer_1\",\n Identity = new Azure.ApiManagement.Inputs.ServiceIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"standard\",\n });\n\n var exampleAccessPolicy = new Azure.KeyVault.AccessPolicy(\"exampleAccessPolicy\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n TenantId = exampleService.Identity.Apply(identity =\u003e identity?.TenantId),\n ObjectId = exampleService.Identity.Apply(identity =\u003e identity?.PrincipalId),\n SecretPermissions = new[]\n {\n \"Get\",\n },\n CertificatePermissions = new[]\n {\n \"Get\",\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"example_cert.pfx\"),\n Password = \"terraform\",\n },\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = false,\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n },\n });\n\n var exampleApimanagement_certificateCertificate = new Azure.ApiManagement.Certificate(\"exampleApimanagement/certificateCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n KeyVaultSecretId = exampleCertificate.SecretId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"My Company\"),\n\t\t\tPublisherEmail: pulumi.String(\"company@terraform.io\"),\n\t\t\tSkuName: pulumi.String(\"Developer_1\"),\n\t\t\tIdentity: \u0026apimanagement.ServiceIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"standard\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewAccessPolicy(ctx, \"exampleAccessPolicy\", \u0026keyvault.AccessPolicyArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tTenantId: exampleService.Identity.ApplyT(func(identity apimanagement.ServiceIdentity) (*string, error) {\n\t\t\t\treturn \u0026identity.TenantId, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tObjectId: exampleService.Identity.ApplyT(func(identity apimanagement.ServiceIdentity) (*string, error) {\n\t\t\t\treturn \u0026identity.PrincipalId, nil\n\t\t\t}).(pulumi.StringPtrOutput),\n\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t},\n\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"example_cert.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"terraform\"),\n\t\t\t},\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewCertificate(ctx, \"exampleApimanagement/certificateCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tKeyVaultSecretId: exampleCertificate.SecretId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.inputs.ServiceIdentityArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.AccessPolicy;\nimport com.pulumi.azure.keyvault.AccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"My Company\")\n .publisherEmail(\"company@terraform.io\")\n .skuName(\"Developer_1\")\n .identity(ServiceIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"standard\")\n .build());\n\n var exampleAccessPolicy = new AccessPolicy(\"exampleAccessPolicy\", AccessPolicyArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .tenantId(exampleService.identity().applyValue(identity -\u003e identity.tenantId()))\n .objectId(exampleService.identity().applyValue(identity -\u003e identity.principalId()))\n .secretPermissions(\"Get\")\n .certificatePermissions(\"Get\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example_cert.pfx\"))))\n .password(\"terraform\")\n .build())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(false)\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .build())\n .build());\n\n var exampleApimanagement_certificateCertificate = new Certificate(\"exampleApimanagement/certificateCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .keyVaultSecretId(exampleCertificate.secretId())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.ApiManagement/service/instance1/certificates/certificate1\n```\n\n ", "properties": { "apiManagementName": { "type": "string", @@ -102649,7 +102649,7 @@ } }, "azure:apimanagement/gatewayCertificateAuthority:GatewayCertificateAuthority": { - "description": "Manages an API Management Gateway Certificate Authority.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Consumption_0\",\n});\nconst exampleGateway = new azure.apimanagement.Gateway(\"exampleGateway\", {\n apiManagementId: exampleService.id,\n description: \"Example API Management gateway\",\n locationData: {\n name: \"example name\",\n city: \"example city\",\n district: \"example district\",\n region: \"example region\",\n },\n});\nconst exampleCertificate = new azure.apimanagement.Certificate(\"exampleCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n data: Buffer.from(fs.readFileSync(\"example.pfx\"), 'binary').toString('base64'),\n});\nconst exampleGatewayCertificateAuthority = new azure.apimanagement.GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\", {\n apiManagementId: exampleService.id,\n certificateName: exampleCertificate.name,\n gatewayName: exampleGateway.name,\n isTrusted: true,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Consumption_0\")\nexample_gateway = azure.apimanagement.Gateway(\"exampleGateway\",\n api_management_id=example_service.id,\n description=\"Example API Management gateway\",\n location_data=azure.apimanagement.GatewayLocationDataArgs(\n name=\"example name\",\n city=\"example city\",\n district=\"example district\",\n region=\"example region\",\n ))\nexample_certificate = azure.apimanagement.Certificate(\"exampleCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n data=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.pfx\"))\nexample_gateway_certificate_authority = azure.apimanagement.GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\",\n api_management_id=example_service.id,\n certificate_name=example_certificate.name,\n gateway_name=example_gateway.name,\n is_trusted=True)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Consumption_0\",\n });\n\n var exampleGateway = new Azure.ApiManagement.Gateway(\"exampleGateway\", new()\n {\n ApiManagementId = exampleService.Id,\n Description = \"Example API Management gateway\",\n LocationData = new Azure.ApiManagement.Inputs.GatewayLocationDataArgs\n {\n Name = \"example name\",\n City = \"example city\",\n District = \"example district\",\n Region = \"example region\",\n },\n });\n\n var exampleCertificate = new Azure.ApiManagement.Certificate(\"exampleCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Data = ReadFileBase64(\"example.pfx\"),\n });\n\n var exampleGatewayCertificateAuthority = new Azure.ApiManagement.GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\", new()\n {\n ApiManagementId = exampleService.Id,\n CertificateName = exampleCertificate.Name,\n GatewayName = exampleGateway.Name,\n IsTrusted = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Consumption_0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGateway, err := apimanagement.NewGateway(ctx, \"exampleGateway\", \u0026apimanagement.GatewayArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tDescription: pulumi.String(\"Example API Management gateway\"),\n\t\t\tLocationData: \u0026apimanagement.GatewayLocationDataArgs{\n\t\t\t\tName: pulumi.String(\"example name\"),\n\t\t\t\tCity: pulumi.String(\"example city\"),\n\t\t\t\tDistrict: pulumi.String(\"example district\"),\n\t\t\t\tRegion: pulumi.String(\"example region\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := apimanagement.NewCertificate(ctx, \"exampleCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tData: filebase64OrPanic(\"example.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewGatewayCertificateAuthority(ctx, \"exampleGatewayCertificateAuthority\", \u0026apimanagement.GatewayCertificateAuthorityArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tCertificateName: exampleCertificate.Name,\n\t\t\tGatewayName: exampleGateway.Name,\n\t\t\tIsTrusted: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.Gateway;\nimport com.pulumi.azure.apimanagement.GatewayArgs;\nimport com.pulumi.azure.apimanagement.inputs.GatewayLocationDataArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport com.pulumi.azure.apimanagement.GatewayCertificateAuthority;\nimport com.pulumi.azure.apimanagement.GatewayCertificateAuthorityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Consumption_0\")\n .build());\n\n var exampleGateway = new Gateway(\"exampleGateway\", GatewayArgs.builder() \n .apiManagementId(exampleService.id())\n .description(\"Example API Management gateway\")\n .locationData(GatewayLocationDataArgs.builder()\n .name(\"example name\")\n .city(\"example city\")\n .district(\"example district\")\n .region(\"example region\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .data(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.pfx\"))))\n .build());\n\n var exampleGatewayCertificateAuthority = new GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\", GatewayCertificateAuthorityArgs.builder() \n .apiManagementId(exampleService.id())\n .certificateName(exampleCertificate.name())\n .gatewayName(exampleGateway.name())\n .isTrusted(true)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management Gateway Certificate Authority can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/gatewayCertificateAuthority:GatewayCertificateAuthority example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.ApiManagement/service/service1/gateways/gateway1/certificateAuthorities/cert1\n```\n\n ", + "description": "Manages an API Management Gateway Certificate Authority.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Consumption_0\",\n});\nconst exampleGateway = new azure.apimanagement.Gateway(\"exampleGateway\", {\n apiManagementId: exampleService.id,\n description: \"Example API Management gateway\",\n locationData: {\n name: \"example name\",\n city: \"example city\",\n district: \"example district\",\n region: \"example region\",\n },\n});\nconst exampleCertificate = new azure.apimanagement.Certificate(\"exampleCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n data: Buffer.from(fs.readFileSync(\"example.pfx\", 'binary')).toString('base64'),\n});\nconst exampleGatewayCertificateAuthority = new azure.apimanagement.GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\", {\n apiManagementId: exampleService.id,\n certificateName: exampleCertificate.name,\n gatewayName: exampleGateway.name,\n isTrusted: true,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Consumption_0\")\nexample_gateway = azure.apimanagement.Gateway(\"exampleGateway\",\n api_management_id=example_service.id,\n description=\"Example API Management gateway\",\n location_data=azure.apimanagement.GatewayLocationDataArgs(\n name=\"example name\",\n city=\"example city\",\n district=\"example district\",\n region=\"example region\",\n ))\nexample_certificate = azure.apimanagement.Certificate(\"exampleCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n data=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.pfx\"))\nexample_gateway_certificate_authority = azure.apimanagement.GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\",\n api_management_id=example_service.id,\n certificate_name=example_certificate.name,\n gateway_name=example_gateway.name,\n is_trusted=True)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Consumption_0\",\n });\n\n var exampleGateway = new Azure.ApiManagement.Gateway(\"exampleGateway\", new()\n {\n ApiManagementId = exampleService.Id,\n Description = \"Example API Management gateway\",\n LocationData = new Azure.ApiManagement.Inputs.GatewayLocationDataArgs\n {\n Name = \"example name\",\n City = \"example city\",\n District = \"example district\",\n Region = \"example region\",\n },\n });\n\n var exampleCertificate = new Azure.ApiManagement.Certificate(\"exampleCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Data = ReadFileBase64(\"example.pfx\"),\n });\n\n var exampleGatewayCertificateAuthority = new Azure.ApiManagement.GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\", new()\n {\n ApiManagementId = exampleService.Id,\n CertificateName = exampleCertificate.Name,\n GatewayName = exampleGateway.Name,\n IsTrusted = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Consumption_0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGateway, err := apimanagement.NewGateway(ctx, \"exampleGateway\", \u0026apimanagement.GatewayArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tDescription: pulumi.String(\"Example API Management gateway\"),\n\t\t\tLocationData: \u0026apimanagement.GatewayLocationDataArgs{\n\t\t\t\tName: pulumi.String(\"example name\"),\n\t\t\t\tCity: pulumi.String(\"example city\"),\n\t\t\t\tDistrict: pulumi.String(\"example district\"),\n\t\t\t\tRegion: pulumi.String(\"example region\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := apimanagement.NewCertificate(ctx, \"exampleCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tData: filebase64OrPanic(\"example.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewGatewayCertificateAuthority(ctx, \"exampleGatewayCertificateAuthority\", \u0026apimanagement.GatewayCertificateAuthorityArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tCertificateName: exampleCertificate.Name,\n\t\t\tGatewayName: exampleGateway.Name,\n\t\t\tIsTrusted: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.Gateway;\nimport com.pulumi.azure.apimanagement.GatewayArgs;\nimport com.pulumi.azure.apimanagement.inputs.GatewayLocationDataArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport com.pulumi.azure.apimanagement.GatewayCertificateAuthority;\nimport com.pulumi.azure.apimanagement.GatewayCertificateAuthorityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Consumption_0\")\n .build());\n\n var exampleGateway = new Gateway(\"exampleGateway\", GatewayArgs.builder() \n .apiManagementId(exampleService.id())\n .description(\"Example API Management gateway\")\n .locationData(GatewayLocationDataArgs.builder()\n .name(\"example name\")\n .city(\"example city\")\n .district(\"example district\")\n .region(\"example region\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .data(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.pfx\"))))\n .build());\n\n var exampleGatewayCertificateAuthority = new GatewayCertificateAuthority(\"exampleGatewayCertificateAuthority\", GatewayCertificateAuthorityArgs.builder() \n .apiManagementId(exampleService.id())\n .certificateName(exampleCertificate.name())\n .gatewayName(exampleGateway.name())\n .isTrusted(true)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management Gateway Certificate Authority can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/gatewayCertificateAuthority:GatewayCertificateAuthority example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.ApiManagement/service/service1/gateways/gateway1/certificateAuthorities/cert1\n```\n\n ", "properties": { "apiManagementId": { "type": "string", @@ -102726,7 +102726,7 @@ } }, "azure:apimanagement/gatewayHostNameConfiguration:GatewayHostNameConfiguration": { - "description": "Manages an API Management Gateway Host Name Configuration.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Consumption_0\",\n});\nconst exampleGateway = new azure.apimanagement.Gateway(\"exampleGateway\", {\n apiManagementId: exampleService.id,\n description: \"Example API Management gateway\",\n locationData: {\n name: \"example name\",\n city: \"example city\",\n district: \"example district\",\n region: \"example region\",\n },\n});\nconst exampleCertificate = new azure.apimanagement.Certificate(\"exampleCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n data: Buffer.from(fs.readFileSync(\"example.pfx\"), 'binary').toString('base64'),\n});\nconst exampleGatewayHostNameConfiguration = new azure.apimanagement.GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\", {\n apiManagementId: exampleService.id,\n gatewayName: exampleGateway.name,\n certificateId: exampleCertificate.id,\n hostName: \"example-host-name\",\n requestClientCertificateEnabled: true,\n http2Enabled: true,\n tls10Enabled: true,\n tls11Enabled: false,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Consumption_0\")\nexample_gateway = azure.apimanagement.Gateway(\"exampleGateway\",\n api_management_id=example_service.id,\n description=\"Example API Management gateway\",\n location_data=azure.apimanagement.GatewayLocationDataArgs(\n name=\"example name\",\n city=\"example city\",\n district=\"example district\",\n region=\"example region\",\n ))\nexample_certificate = azure.apimanagement.Certificate(\"exampleCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n data=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.pfx\"))\nexample_gateway_host_name_configuration = azure.apimanagement.GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\",\n api_management_id=example_service.id,\n gateway_name=example_gateway.name,\n certificate_id=example_certificate.id,\n host_name=\"example-host-name\",\n request_client_certificate_enabled=True,\n http2_enabled=True,\n tls10_enabled=True,\n tls11_enabled=False)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Consumption_0\",\n });\n\n var exampleGateway = new Azure.ApiManagement.Gateway(\"exampleGateway\", new()\n {\n ApiManagementId = exampleService.Id,\n Description = \"Example API Management gateway\",\n LocationData = new Azure.ApiManagement.Inputs.GatewayLocationDataArgs\n {\n Name = \"example name\",\n City = \"example city\",\n District = \"example district\",\n Region = \"example region\",\n },\n });\n\n var exampleCertificate = new Azure.ApiManagement.Certificate(\"exampleCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Data = ReadFileBase64(\"example.pfx\"),\n });\n\n var exampleGatewayHostNameConfiguration = new Azure.ApiManagement.GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\", new()\n {\n ApiManagementId = exampleService.Id,\n GatewayName = exampleGateway.Name,\n CertificateId = exampleCertificate.Id,\n HostName = \"example-host-name\",\n RequestClientCertificateEnabled = true,\n Http2Enabled = true,\n Tls10Enabled = true,\n Tls11Enabled = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Consumption_0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGateway, err := apimanagement.NewGateway(ctx, \"exampleGateway\", \u0026apimanagement.GatewayArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tDescription: pulumi.String(\"Example API Management gateway\"),\n\t\t\tLocationData: \u0026apimanagement.GatewayLocationDataArgs{\n\t\t\t\tName: pulumi.String(\"example name\"),\n\t\t\t\tCity: pulumi.String(\"example city\"),\n\t\t\t\tDistrict: pulumi.String(\"example district\"),\n\t\t\t\tRegion: pulumi.String(\"example region\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := apimanagement.NewCertificate(ctx, \"exampleCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tData: filebase64OrPanic(\"example.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewGatewayHostNameConfiguration(ctx, \"exampleGatewayHostNameConfiguration\", \u0026apimanagement.GatewayHostNameConfigurationArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tGatewayName: exampleGateway.Name,\n\t\t\tCertificateId: exampleCertificate.ID(),\n\t\t\tHostName: pulumi.String(\"example-host-name\"),\n\t\t\tRequestClientCertificateEnabled: pulumi.Bool(true),\n\t\t\tHttp2Enabled: pulumi.Bool(true),\n\t\t\tTls10Enabled: pulumi.Bool(true),\n\t\t\tTls11Enabled: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.Gateway;\nimport com.pulumi.azure.apimanagement.GatewayArgs;\nimport com.pulumi.azure.apimanagement.inputs.GatewayLocationDataArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport com.pulumi.azure.apimanagement.GatewayHostNameConfiguration;\nimport com.pulumi.azure.apimanagement.GatewayHostNameConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Consumption_0\")\n .build());\n\n var exampleGateway = new Gateway(\"exampleGateway\", GatewayArgs.builder() \n .apiManagementId(exampleService.id())\n .description(\"Example API Management gateway\")\n .locationData(GatewayLocationDataArgs.builder()\n .name(\"example name\")\n .city(\"example city\")\n .district(\"example district\")\n .region(\"example region\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .data(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.pfx\"))))\n .build());\n\n var exampleGatewayHostNameConfiguration = new GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\", GatewayHostNameConfigurationArgs.builder() \n .apiManagementId(exampleService.id())\n .gatewayName(exampleGateway.name())\n .certificateId(exampleCertificate.id())\n .hostName(\"example-host-name\")\n .requestClientCertificateEnabled(true)\n .http2Enabled(true)\n .tls10Enabled(true)\n .tls11Enabled(false)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management Gateway Host Name Configuration can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/gatewayHostNameConfiguration:GatewayHostNameConfiguration example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.ApiManagement/service/service1/gateways/gateway1/hostnameConfigurations/hc1\n```\n\n ", + "description": "Manages an API Management Gateway Host Name Configuration.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.apimanagement.Service(\"exampleService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n publisherName: \"pub1\",\n publisherEmail: \"pub1@email.com\",\n skuName: \"Consumption_0\",\n});\nconst exampleGateway = new azure.apimanagement.Gateway(\"exampleGateway\", {\n apiManagementId: exampleService.id,\n description: \"Example API Management gateway\",\n locationData: {\n name: \"example name\",\n city: \"example city\",\n district: \"example district\",\n region: \"example region\",\n },\n});\nconst exampleCertificate = new azure.apimanagement.Certificate(\"exampleCertificate\", {\n apiManagementName: exampleService.name,\n resourceGroupName: exampleResourceGroup.name,\n data: Buffer.from(fs.readFileSync(\"example.pfx\", 'binary')).toString('base64'),\n});\nconst exampleGatewayHostNameConfiguration = new azure.apimanagement.GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\", {\n apiManagementId: exampleService.id,\n gatewayName: exampleGateway.name,\n certificateId: exampleCertificate.id,\n hostName: \"example-host-name\",\n requestClientCertificateEnabled: true,\n http2Enabled: true,\n tls10Enabled: true,\n tls11Enabled: false,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.apimanagement.Service(\"exampleService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n publisher_name=\"pub1\",\n publisher_email=\"pub1@email.com\",\n sku_name=\"Consumption_0\")\nexample_gateway = azure.apimanagement.Gateway(\"exampleGateway\",\n api_management_id=example_service.id,\n description=\"Example API Management gateway\",\n location_data=azure.apimanagement.GatewayLocationDataArgs(\n name=\"example name\",\n city=\"example city\",\n district=\"example district\",\n region=\"example region\",\n ))\nexample_certificate = azure.apimanagement.Certificate(\"exampleCertificate\",\n api_management_name=example_service.name,\n resource_group_name=example_resource_group.name,\n data=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.pfx\"))\nexample_gateway_host_name_configuration = azure.apimanagement.GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\",\n api_management_id=example_service.id,\n gateway_name=example_gateway.name,\n certificate_id=example_certificate.id,\n host_name=\"example-host-name\",\n request_client_certificate_enabled=True,\n http2_enabled=True,\n tls10_enabled=True,\n tls11_enabled=False)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.ApiManagement.Service(\"exampleService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n PublisherName = \"pub1\",\n PublisherEmail = \"pub1@email.com\",\n SkuName = \"Consumption_0\",\n });\n\n var exampleGateway = new Azure.ApiManagement.Gateway(\"exampleGateway\", new()\n {\n ApiManagementId = exampleService.Id,\n Description = \"Example API Management gateway\",\n LocationData = new Azure.ApiManagement.Inputs.GatewayLocationDataArgs\n {\n Name = \"example name\",\n City = \"example city\",\n District = \"example district\",\n Region = \"example region\",\n },\n });\n\n var exampleCertificate = new Azure.ApiManagement.Certificate(\"exampleCertificate\", new()\n {\n ApiManagementName = exampleService.Name,\n ResourceGroupName = exampleResourceGroup.Name,\n Data = ReadFileBase64(\"example.pfx\"),\n });\n\n var exampleGatewayHostNameConfiguration = new Azure.ApiManagement.GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\", new()\n {\n ApiManagementId = exampleService.Id,\n GatewayName = exampleGateway.Name,\n CertificateId = exampleCertificate.Id,\n HostName = \"example-host-name\",\n RequestClientCertificateEnabled = true,\n Http2Enabled = true,\n Tls10Enabled = true,\n Tls11Enabled = false,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/apimanagement\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := apimanagement.NewService(ctx, \"exampleService\", \u0026apimanagement.ServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tPublisherName: pulumi.String(\"pub1\"),\n\t\t\tPublisherEmail: pulumi.String(\"pub1@email.com\"),\n\t\t\tSkuName: pulumi.String(\"Consumption_0\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleGateway, err := apimanagement.NewGateway(ctx, \"exampleGateway\", \u0026apimanagement.GatewayArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tDescription: pulumi.String(\"Example API Management gateway\"),\n\t\t\tLocationData: \u0026apimanagement.GatewayLocationDataArgs{\n\t\t\t\tName: pulumi.String(\"example name\"),\n\t\t\t\tCity: pulumi.String(\"example city\"),\n\t\t\t\tDistrict: pulumi.String(\"example district\"),\n\t\t\t\tRegion: pulumi.String(\"example region\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := apimanagement.NewCertificate(ctx, \"exampleCertificate\", \u0026apimanagement.CertificateArgs{\n\t\t\tApiManagementName: exampleService.Name,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tData: filebase64OrPanic(\"example.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = apimanagement.NewGatewayHostNameConfiguration(ctx, \"exampleGatewayHostNameConfiguration\", \u0026apimanagement.GatewayHostNameConfigurationArgs{\n\t\t\tApiManagementId: exampleService.ID(),\n\t\t\tGatewayName: exampleGateway.Name,\n\t\t\tCertificateId: exampleCertificate.ID(),\n\t\t\tHostName: pulumi.String(\"example-host-name\"),\n\t\t\tRequestClientCertificateEnabled: pulumi.Bool(true),\n\t\t\tHttp2Enabled: pulumi.Bool(true),\n\t\t\tTls10Enabled: pulumi.Bool(true),\n\t\t\tTls11Enabled: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.apimanagement.Service;\nimport com.pulumi.azure.apimanagement.ServiceArgs;\nimport com.pulumi.azure.apimanagement.Gateway;\nimport com.pulumi.azure.apimanagement.GatewayArgs;\nimport com.pulumi.azure.apimanagement.inputs.GatewayLocationDataArgs;\nimport com.pulumi.azure.apimanagement.Certificate;\nimport com.pulumi.azure.apimanagement.CertificateArgs;\nimport com.pulumi.azure.apimanagement.GatewayHostNameConfiguration;\nimport com.pulumi.azure.apimanagement.GatewayHostNameConfigurationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .publisherName(\"pub1\")\n .publisherEmail(\"pub1@email.com\")\n .skuName(\"Consumption_0\")\n .build());\n\n var exampleGateway = new Gateway(\"exampleGateway\", GatewayArgs.builder() \n .apiManagementId(exampleService.id())\n .description(\"Example API Management gateway\")\n .locationData(GatewayLocationDataArgs.builder()\n .name(\"example name\")\n .city(\"example city\")\n .district(\"example district\")\n .region(\"example region\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .apiManagementName(exampleService.name())\n .resourceGroupName(exampleResourceGroup.name())\n .data(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.pfx\"))))\n .build());\n\n var exampleGatewayHostNameConfiguration = new GatewayHostNameConfiguration(\"exampleGatewayHostNameConfiguration\", GatewayHostNameConfigurationArgs.builder() \n .apiManagementId(exampleService.id())\n .gatewayName(exampleGateway.name())\n .certificateId(exampleCertificate.id())\n .hostName(\"example-host-name\")\n .requestClientCertificateEnabled(true)\n .http2Enabled(true)\n .tls10Enabled(true)\n .tls11Enabled(false)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAPI Management Gateway Host Name Configuration can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:apimanagement/gatewayHostNameConfiguration:GatewayHostNameConfiguration example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.ApiManagement/service/service1/gateways/gateway1/hostnameConfigurations/hc1\n```\n\n ", "properties": { "apiManagementId": { "type": "string", @@ -111688,7 +111688,7 @@ } }, "azure:appservice/certificate:Certificate": { - "description": "Manages an App Service certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nThis example provisions an App Service Certificate from a Local File.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleCertificate = new azure.appservice.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n pfxBlob: Buffer.from(fs.readFileSync(\"certificate.pfx\"), 'binary').toString('base64'),\n password: \"password123!\",\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_certificate = azure.appservice.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n pfx_blob=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"),\n password=\"password123!\")\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleCertificate = new Azure.AppService.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PfxBlob = ReadFileBase64(\"certificate.pfx\"),\n Password = \"password123!\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appservice.NewCertificate(ctx, \"exampleCertificate\", \u0026appservice.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPfxBlob: filebase64OrPanic(\"certificate.pfx\"),\n\t\t\tPassword: pulumi.String(\"password123!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.appservice.Certificate;\nimport com.pulumi.azure.appservice.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .pfxBlob(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .password(\"password123!\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nApp Service Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:appservice/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Web/certificates/certificate1\n```\n\n ", + "description": "Manages an App Service certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\nThis example provisions an App Service Certificate from a Local File.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleCertificate = new azure.appservice.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n pfxBlob: Buffer.from(fs.readFileSync(\"certificate.pfx\", 'binary')).toString('base64'),\n password: \"password123!\",\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_certificate = azure.appservice.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n pfx_blob=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"),\n password=\"password123!\")\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleCertificate = new Azure.AppService.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PfxBlob = ReadFileBase64(\"certificate.pfx\"),\n Password = \"password123!\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appservice.NewCertificate(ctx, \"exampleCertificate\", \u0026appservice.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPfxBlob: filebase64OrPanic(\"certificate.pfx\"),\n\t\t\tPassword: pulumi.String(\"password123!\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.appservice.Certificate;\nimport com.pulumi.azure.appservice.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .pfxBlob(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .password(\"password123!\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nApp Service Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:appservice/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Web/certificates/certificate1\n```\n\n ", "properties": { "appServicePlanId": { "type": "string", @@ -116623,7 +116623,7 @@ } }, "azure:appservice/publicCertificate:PublicCertificate": { - "description": "Manages an App Service Public Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst examplePlan = new azure.appservice.Plan(\"examplePlan\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n sku: {\n tier: \"Standard\",\n size: \"S1\",\n },\n});\nconst exampleAppService = new azure.appservice.AppService(\"exampleAppService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n appServicePlanId: examplePlan.id,\n});\nconst examplePublicCertificate = new azure.appservice.PublicCertificate(\"examplePublicCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n appServiceName: exampleAppService.name,\n certificateName: \"example-public-certificate\",\n certificateLocation: \"Unknown\",\n blob: Buffer.from(fs.readFileSync(\"app_service_public_certificate.cer\"), 'binary').toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_plan = azure.appservice.Plan(\"examplePlan\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku=azure.appservice.PlanSkuArgs(\n tier=\"Standard\",\n size=\"S1\",\n ))\nexample_app_service = azure.appservice.AppService(\"exampleAppService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n app_service_plan_id=example_plan.id)\nexample_public_certificate = azure.appservice.PublicCertificate(\"examplePublicCertificate\",\n resource_group_name=example_resource_group.name,\n app_service_name=example_app_service.name,\n certificate_name=\"example-public-certificate\",\n certificate_location=\"Unknown\",\n blob=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"app_service_public_certificate.cer\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var examplePlan = new Azure.AppService.Plan(\"examplePlan\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n Sku = new Azure.AppService.Inputs.PlanSkuArgs\n {\n Tier = \"Standard\",\n Size = \"S1\",\n },\n });\n\n var exampleAppService = new Azure.AppService.AppService(\"exampleAppService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n AppServicePlanId = examplePlan.Id,\n });\n\n var examplePublicCertificate = new Azure.AppService.PublicCertificate(\"examplePublicCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AppServiceName = exampleAppService.Name,\n CertificateName = \"example-public-certificate\",\n CertificateLocation = \"Unknown\",\n Blob = ReadFileBase64(\"app_service_public_certificate.cer\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePlan, err := appservice.NewPlan(ctx, \"examplePlan\", \u0026appservice.PlanArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSku: \u0026appservice.PlanSkuArgs{\n\t\t\t\tTier: pulumi.String(\"Standard\"),\n\t\t\t\tSize: pulumi.String(\"S1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAppService, err := appservice.NewAppService(ctx, \"exampleAppService\", \u0026appservice.AppServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAppServicePlanId: examplePlan.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appservice.NewPublicCertificate(ctx, \"examplePublicCertificate\", \u0026appservice.PublicCertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAppServiceName: exampleAppService.Name,\n\t\t\tCertificateName: pulumi.String(\"example-public-certificate\"),\n\t\t\tCertificateLocation: pulumi.String(\"Unknown\"),\n\t\t\tBlob: filebase64OrPanic(\"app_service_public_certificate.cer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.appservice.Plan;\nimport com.pulumi.azure.appservice.PlanArgs;\nimport com.pulumi.azure.appservice.inputs.PlanSkuArgs;\nimport com.pulumi.azure.appservice.AppService;\nimport com.pulumi.azure.appservice.AppServiceArgs;\nimport com.pulumi.azure.appservice.PublicCertificate;\nimport com.pulumi.azure.appservice.PublicCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var examplePlan = new Plan(\"examplePlan\", PlanArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .sku(PlanSkuArgs.builder()\n .tier(\"Standard\")\n .size(\"S1\")\n .build())\n .build());\n\n var exampleAppService = new AppService(\"exampleAppService\", AppServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .appServicePlanId(examplePlan.id())\n .build());\n\n var examplePublicCertificate = new PublicCertificate(\"examplePublicCertificate\", PublicCertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .appServiceName(exampleAppService.name())\n .certificateName(\"example-public-certificate\")\n .certificateLocation(\"Unknown\")\n .blob(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"app_service_public_certificate.cer\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nApp Service Public Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:appservice/publicCertificate:PublicCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Web/sites/site1/publicCertificates/publicCertificate1\n```\n\n ", + "description": "Manages an App Service Public Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst examplePlan = new azure.appservice.Plan(\"examplePlan\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n sku: {\n tier: \"Standard\",\n size: \"S1\",\n },\n});\nconst exampleAppService = new azure.appservice.AppService(\"exampleAppService\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n appServicePlanId: examplePlan.id,\n});\nconst examplePublicCertificate = new azure.appservice.PublicCertificate(\"examplePublicCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n appServiceName: exampleAppService.name,\n certificateName: \"example-public-certificate\",\n certificateLocation: \"Unknown\",\n blob: Buffer.from(fs.readFileSync(\"app_service_public_certificate.cer\", 'binary')).toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_plan = azure.appservice.Plan(\"examplePlan\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku=azure.appservice.PlanSkuArgs(\n tier=\"Standard\",\n size=\"S1\",\n ))\nexample_app_service = azure.appservice.AppService(\"exampleAppService\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n app_service_plan_id=example_plan.id)\nexample_public_certificate = azure.appservice.PublicCertificate(\"examplePublicCertificate\",\n resource_group_name=example_resource_group.name,\n app_service_name=example_app_service.name,\n certificate_name=\"example-public-certificate\",\n certificate_location=\"Unknown\",\n blob=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"app_service_public_certificate.cer\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var examplePlan = new Azure.AppService.Plan(\"examplePlan\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n Sku = new Azure.AppService.Inputs.PlanSkuArgs\n {\n Tier = \"Standard\",\n Size = \"S1\",\n },\n });\n\n var exampleAppService = new Azure.AppService.AppService(\"exampleAppService\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n AppServicePlanId = examplePlan.Id,\n });\n\n var examplePublicCertificate = new Azure.AppService.PublicCertificate(\"examplePublicCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AppServiceName = exampleAppService.Name,\n CertificateName = \"example-public-certificate\",\n CertificateLocation = \"Unknown\",\n Blob = ReadFileBase64(\"app_service_public_certificate.cer\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/appservice\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePlan, err := appservice.NewPlan(ctx, \"examplePlan\", \u0026appservice.PlanArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSku: \u0026appservice.PlanSkuArgs{\n\t\t\t\tTier: pulumi.String(\"Standard\"),\n\t\t\t\tSize: pulumi.String(\"S1\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAppService, err := appservice.NewAppService(ctx, \"exampleAppService\", \u0026appservice.AppServiceArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAppServicePlanId: examplePlan.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = appservice.NewPublicCertificate(ctx, \"examplePublicCertificate\", \u0026appservice.PublicCertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAppServiceName: exampleAppService.Name,\n\t\t\tCertificateName: pulumi.String(\"example-public-certificate\"),\n\t\t\tCertificateLocation: pulumi.String(\"Unknown\"),\n\t\t\tBlob: filebase64OrPanic(\"app_service_public_certificate.cer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.appservice.Plan;\nimport com.pulumi.azure.appservice.PlanArgs;\nimport com.pulumi.azure.appservice.inputs.PlanSkuArgs;\nimport com.pulumi.azure.appservice.AppService;\nimport com.pulumi.azure.appservice.AppServiceArgs;\nimport com.pulumi.azure.appservice.PublicCertificate;\nimport com.pulumi.azure.appservice.PublicCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var examplePlan = new Plan(\"examplePlan\", PlanArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .sku(PlanSkuArgs.builder()\n .tier(\"Standard\")\n .size(\"S1\")\n .build())\n .build());\n\n var exampleAppService = new AppService(\"exampleAppService\", AppServiceArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .appServicePlanId(examplePlan.id())\n .build());\n\n var examplePublicCertificate = new PublicCertificate(\"examplePublicCertificate\", PublicCertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .appServiceName(exampleAppService.name())\n .certificateName(\"example-public-certificate\")\n .certificateLocation(\"Unknown\")\n .blob(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"app_service_public_certificate.cer\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nApp Service Public Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:appservice/publicCertificate:PublicCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Web/sites/site1/publicCertificates/publicCertificate1\n```\n\n ", "properties": { "appServiceName": { "type": "string", @@ -120751,7 +120751,7 @@ } }, "azure:arckubernetes/clusterExtension:ClusterExtension": { - "description": "Manages an Arc Kubernetes Cluster Extension.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleCluster = new azure.arckubernetes.Cluster(\"exampleCluster\", {\n resourceGroupName: exampleResourceGroup.name,\n location: \"West Europe\",\n agentPublicKeyCertificate: Buffer.from(fs.readFileSync(\"testdata/public.cer\"), 'binary').toString('base64'),\n identity: {\n type: \"SystemAssigned\",\n },\n tags: {\n ENV: \"Test\",\n },\n});\nconst exampleClusterExtension = new azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\", {\n clusterId: exampleCluster.id,\n extensionType: \"microsoft.flux\",\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_cluster = azure.arckubernetes.Cluster(\"exampleCluster\",\n resource_group_name=example_resource_group.name,\n location=\"West Europe\",\n agent_public_key_certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"testdata/public.cer\"),\n identity=azure.arckubernetes.ClusterIdentityArgs(\n type=\"SystemAssigned\",\n ),\n tags={\n \"ENV\": \"Test\",\n })\nexample_cluster_extension = azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\",\n cluster_id=example_cluster.id,\n extension_type=\"microsoft.flux\")\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleCluster = new Azure.ArcKubernetes.Cluster(\"exampleCluster\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = \"West Europe\",\n AgentPublicKeyCertificate = ReadFileBase64(\"testdata/public.cer\"),\n Identity = new Azure.ArcKubernetes.Inputs.ClusterIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n Tags = \n {\n { \"ENV\", \"Test\" },\n },\n });\n\n var exampleClusterExtension = new Azure.ArcKubernetes.ClusterExtension(\"exampleClusterExtension\", new()\n {\n ClusterId = exampleCluster.Id,\n ExtensionType = \"microsoft.flux\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/arckubernetes\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCluster, err := arckubernetes.NewCluster(ctx, \"exampleCluster\", \u0026arckubernetes.ClusterArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tAgentPublicKeyCertificate: filebase64OrPanic(\"testdata/public.cer\"),\n\t\t\tIdentity: \u0026arckubernetes.ClusterIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"ENV\": pulumi.String(\"Test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arckubernetes.NewClusterExtension(ctx, \"exampleClusterExtension\", \u0026arckubernetes.ClusterExtensionArgs{\n\t\t\tClusterId: exampleCluster.ID(),\n\t\t\tExtensionType: pulumi.String(\"microsoft.flux\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.arckubernetes.Cluster;\nimport com.pulumi.azure.arckubernetes.ClusterArgs;\nimport com.pulumi.azure.arckubernetes.inputs.ClusterIdentityArgs;\nimport com.pulumi.azure.arckubernetes.ClusterExtension;\nimport com.pulumi.azure.arckubernetes.ClusterExtensionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleCluster = new Cluster(\"exampleCluster\", ClusterArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(\"West Europe\")\n .agentPublicKeyCertificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"testdata/public.cer\"))))\n .identity(ClusterIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .tags(Map.of(\"ENV\", \"Test\"))\n .build());\n\n var exampleClusterExtension = new ClusterExtension(\"exampleClusterExtension\", ClusterExtensionArgs.builder() \n .clusterId(exampleCluster.id())\n .extensionType(\"microsoft.flux\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nArc Kubernetes Cluster Extension can be imported using the `resource id` for different `cluster_resource_name`, e.g.\n\n```sh\n $ pulumi import azure:arckubernetes/clusterExtension:ClusterExtension example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Kubernetes/connectedClusters/cluster1/providers/Microsoft.KubernetesConfiguration/extensions/extension1\n```\n\n ", + "description": "Manages an Arc Kubernetes Cluster Extension.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleCluster = new azure.arckubernetes.Cluster(\"exampleCluster\", {\n resourceGroupName: exampleResourceGroup.name,\n location: \"West Europe\",\n agentPublicKeyCertificate: Buffer.from(fs.readFileSync(\"testdata/public.cer\", 'binary')).toString('base64'),\n identity: {\n type: \"SystemAssigned\",\n },\n tags: {\n ENV: \"Test\",\n },\n});\nconst exampleClusterExtension = new azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\", {\n clusterId: exampleCluster.id,\n extensionType: \"microsoft.flux\",\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_cluster = azure.arckubernetes.Cluster(\"exampleCluster\",\n resource_group_name=example_resource_group.name,\n location=\"West Europe\",\n agent_public_key_certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"testdata/public.cer\"),\n identity=azure.arckubernetes.ClusterIdentityArgs(\n type=\"SystemAssigned\",\n ),\n tags={\n \"ENV\": \"Test\",\n })\nexample_cluster_extension = azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\",\n cluster_id=example_cluster.id,\n extension_type=\"microsoft.flux\")\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleCluster = new Azure.ArcKubernetes.Cluster(\"exampleCluster\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = \"West Europe\",\n AgentPublicKeyCertificate = ReadFileBase64(\"testdata/public.cer\"),\n Identity = new Azure.ArcKubernetes.Inputs.ClusterIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n Tags = \n {\n { \"ENV\", \"Test\" },\n },\n });\n\n var exampleClusterExtension = new Azure.ArcKubernetes.ClusterExtension(\"exampleClusterExtension\", new()\n {\n ClusterId = exampleCluster.Id,\n ExtensionType = \"microsoft.flux\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/arckubernetes\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCluster, err := arckubernetes.NewCluster(ctx, \"exampleCluster\", \u0026arckubernetes.ClusterArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tAgentPublicKeyCertificate: filebase64OrPanic(\"testdata/public.cer\"),\n\t\t\tIdentity: \u0026arckubernetes.ClusterIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"ENV\": pulumi.String(\"Test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arckubernetes.NewClusterExtension(ctx, \"exampleClusterExtension\", \u0026arckubernetes.ClusterExtensionArgs{\n\t\t\tClusterId: exampleCluster.ID(),\n\t\t\tExtensionType: pulumi.String(\"microsoft.flux\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.arckubernetes.Cluster;\nimport com.pulumi.azure.arckubernetes.ClusterArgs;\nimport com.pulumi.azure.arckubernetes.inputs.ClusterIdentityArgs;\nimport com.pulumi.azure.arckubernetes.ClusterExtension;\nimport com.pulumi.azure.arckubernetes.ClusterExtensionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleCluster = new Cluster(\"exampleCluster\", ClusterArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(\"West Europe\")\n .agentPublicKeyCertificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"testdata/public.cer\"))))\n .identity(ClusterIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .tags(Map.of(\"ENV\", \"Test\"))\n .build());\n\n var exampleClusterExtension = new ClusterExtension(\"exampleClusterExtension\", ClusterExtensionArgs.builder() \n .clusterId(exampleCluster.id())\n .extensionType(\"microsoft.flux\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nArc Kubernetes Cluster Extension can be imported using the `resource id` for different `cluster_resource_name`, e.g.\n\n```sh\n $ pulumi import azure:arckubernetes/clusterExtension:ClusterExtension example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Kubernetes/connectedClusters/cluster1/providers/Microsoft.KubernetesConfiguration/extensions/extension1\n```\n\n ", "properties": { "clusterId": { "type": "string", @@ -120941,7 +120941,7 @@ } }, "azure:arckubernetes/fluxConfiguration:FluxConfiguration": { - "description": "Manages an Arc Kubernetes Flux Configuration.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleCluster = new azure.arckubernetes.Cluster(\"exampleCluster\", {\n resourceGroupName: exampleResourceGroup.name,\n location: \"West Europe\",\n agentPublicKeyCertificate: Buffer.from(fs.readFileSync(\"testdata/public.cer\"), 'binary').toString('base64'),\n identity: {\n type: \"SystemAssigned\",\n },\n tags: {\n ENV: \"Test\",\n },\n});\nconst exampleClusterExtension = new azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\", {\n clusterId: azurerm_arc_kubernetes_cluster.test.id,\n extensionType: \"microsoft.flux\",\n});\nconst exampleFluxConfiguration = new azure.arckubernetes.FluxConfiguration(\"exampleFluxConfiguration\", {\n clusterId: azurerm_arc_kubernetes_cluster.test.id,\n namespace: \"flux\",\n gitRepository: {\n url: \"https://github.com/Azure/arc-k8s-demo\",\n referenceType: \"branch\",\n referenceValue: \"main\",\n },\n kustomizations: [{\n name: \"kustomization-1\",\n }],\n}, {\n dependsOn: [exampleClusterExtension],\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_cluster = azure.arckubernetes.Cluster(\"exampleCluster\",\n resource_group_name=example_resource_group.name,\n location=\"West Europe\",\n agent_public_key_certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"testdata/public.cer\"),\n identity=azure.arckubernetes.ClusterIdentityArgs(\n type=\"SystemAssigned\",\n ),\n tags={\n \"ENV\": \"Test\",\n })\nexample_cluster_extension = azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\",\n cluster_id=azurerm_arc_kubernetes_cluster[\"test\"][\"id\"],\n extension_type=\"microsoft.flux\")\nexample_flux_configuration = azure.arckubernetes.FluxConfiguration(\"exampleFluxConfiguration\",\n cluster_id=azurerm_arc_kubernetes_cluster[\"test\"][\"id\"],\n namespace=\"flux\",\n git_repository=azure.arckubernetes.FluxConfigurationGitRepositoryArgs(\n url=\"https://github.com/Azure/arc-k8s-demo\",\n reference_type=\"branch\",\n reference_value=\"main\",\n ),\n kustomizations=[azure.arckubernetes.FluxConfigurationKustomizationArgs(\n name=\"kustomization-1\",\n )],\n opts=pulumi.ResourceOptions(depends_on=[example_cluster_extension]))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleCluster = new Azure.ArcKubernetes.Cluster(\"exampleCluster\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = \"West Europe\",\n AgentPublicKeyCertificate = ReadFileBase64(\"testdata/public.cer\"),\n Identity = new Azure.ArcKubernetes.Inputs.ClusterIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n Tags = \n {\n { \"ENV\", \"Test\" },\n },\n });\n\n var exampleClusterExtension = new Azure.ArcKubernetes.ClusterExtension(\"exampleClusterExtension\", new()\n {\n ClusterId = azurerm_arc_kubernetes_cluster.Test.Id,\n ExtensionType = \"microsoft.flux\",\n });\n\n var exampleFluxConfiguration = new Azure.ArcKubernetes.FluxConfiguration(\"exampleFluxConfiguration\", new()\n {\n ClusterId = azurerm_arc_kubernetes_cluster.Test.Id,\n Namespace = \"flux\",\n GitRepository = new Azure.ArcKubernetes.Inputs.FluxConfigurationGitRepositoryArgs\n {\n Url = \"https://github.com/Azure/arc-k8s-demo\",\n ReferenceType = \"branch\",\n ReferenceValue = \"main\",\n },\n Kustomizations = new[]\n {\n new Azure.ArcKubernetes.Inputs.FluxConfigurationKustomizationArgs\n {\n Name = \"kustomization-1\",\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n exampleClusterExtension,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/arckubernetes\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arckubernetes.NewCluster(ctx, \"exampleCluster\", \u0026arckubernetes.ClusterArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tAgentPublicKeyCertificate: filebase64OrPanic(\"testdata/public.cer\"),\n\t\t\tIdentity: \u0026arckubernetes.ClusterIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"ENV\": pulumi.String(\"Test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleClusterExtension, err := arckubernetes.NewClusterExtension(ctx, \"exampleClusterExtension\", \u0026arckubernetes.ClusterExtensionArgs{\n\t\t\tClusterId: pulumi.Any(azurerm_arc_kubernetes_cluster.Test.Id),\n\t\t\tExtensionType: pulumi.String(\"microsoft.flux\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arckubernetes.NewFluxConfiguration(ctx, \"exampleFluxConfiguration\", \u0026arckubernetes.FluxConfigurationArgs{\n\t\t\tClusterId: pulumi.Any(azurerm_arc_kubernetes_cluster.Test.Id),\n\t\t\tNamespace: pulumi.String(\"flux\"),\n\t\t\tGitRepository: \u0026arckubernetes.FluxConfigurationGitRepositoryArgs{\n\t\t\t\tUrl: pulumi.String(\"https://github.com/Azure/arc-k8s-demo\"),\n\t\t\t\tReferenceType: pulumi.String(\"branch\"),\n\t\t\t\tReferenceValue: pulumi.String(\"main\"),\n\t\t\t},\n\t\t\tKustomizations: arckubernetes.FluxConfigurationKustomizationArray{\n\t\t\t\t\u0026arckubernetes.FluxConfigurationKustomizationArgs{\n\t\t\t\t\tName: pulumi.String(\"kustomization-1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\texampleClusterExtension,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.arckubernetes.Cluster;\nimport com.pulumi.azure.arckubernetes.ClusterArgs;\nimport com.pulumi.azure.arckubernetes.inputs.ClusterIdentityArgs;\nimport com.pulumi.azure.arckubernetes.ClusterExtension;\nimport com.pulumi.azure.arckubernetes.ClusterExtensionArgs;\nimport com.pulumi.azure.arckubernetes.FluxConfiguration;\nimport com.pulumi.azure.arckubernetes.FluxConfigurationArgs;\nimport com.pulumi.azure.arckubernetes.inputs.FluxConfigurationGitRepositoryArgs;\nimport com.pulumi.azure.arckubernetes.inputs.FluxConfigurationKustomizationArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleCluster = new Cluster(\"exampleCluster\", ClusterArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(\"West Europe\")\n .agentPublicKeyCertificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"testdata/public.cer\"))))\n .identity(ClusterIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .tags(Map.of(\"ENV\", \"Test\"))\n .build());\n\n var exampleClusterExtension = new ClusterExtension(\"exampleClusterExtension\", ClusterExtensionArgs.builder() \n .clusterId(azurerm_arc_kubernetes_cluster.test().id())\n .extensionType(\"microsoft.flux\")\n .build());\n\n var exampleFluxConfiguration = new FluxConfiguration(\"exampleFluxConfiguration\", FluxConfigurationArgs.builder() \n .clusterId(azurerm_arc_kubernetes_cluster.test().id())\n .namespace(\"flux\")\n .gitRepository(FluxConfigurationGitRepositoryArgs.builder()\n .url(\"https://github.com/Azure/arc-k8s-demo\")\n .referenceType(\"branch\")\n .referenceValue(\"main\")\n .build())\n .kustomizations(FluxConfigurationKustomizationArgs.builder()\n .name(\"kustomization-1\")\n .build())\n .build(), CustomResourceOptions.builder()\n .dependsOn(exampleClusterExtension)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nArc Kubernetes Flux Configuration can be imported using the `resource id` for different `cluster_resource_name`, e.g.\n\n```sh\n $ pulumi import azure:arckubernetes/fluxConfiguration:FluxConfiguration example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Kubernetes/connectedClusters/cluster1/providers/Microsoft.KubernetesConfiguration/fluxConfigurations/fluxConfiguration1\n```\n\n ", + "description": "Manages an Arc Kubernetes Flux Configuration.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleCluster = new azure.arckubernetes.Cluster(\"exampleCluster\", {\n resourceGroupName: exampleResourceGroup.name,\n location: \"West Europe\",\n agentPublicKeyCertificate: Buffer.from(fs.readFileSync(\"testdata/public.cer\", 'binary')).toString('base64'),\n identity: {\n type: \"SystemAssigned\",\n },\n tags: {\n ENV: \"Test\",\n },\n});\nconst exampleClusterExtension = new azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\", {\n clusterId: azurerm_arc_kubernetes_cluster.test.id,\n extensionType: \"microsoft.flux\",\n});\nconst exampleFluxConfiguration = new azure.arckubernetes.FluxConfiguration(\"exampleFluxConfiguration\", {\n clusterId: azurerm_arc_kubernetes_cluster.test.id,\n namespace: \"flux\",\n gitRepository: {\n url: \"https://github.com/Azure/arc-k8s-demo\",\n referenceType: \"branch\",\n referenceValue: \"main\",\n },\n kustomizations: [{\n name: \"kustomization-1\",\n }],\n}, {\n dependsOn: [exampleClusterExtension],\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_cluster = azure.arckubernetes.Cluster(\"exampleCluster\",\n resource_group_name=example_resource_group.name,\n location=\"West Europe\",\n agent_public_key_certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"testdata/public.cer\"),\n identity=azure.arckubernetes.ClusterIdentityArgs(\n type=\"SystemAssigned\",\n ),\n tags={\n \"ENV\": \"Test\",\n })\nexample_cluster_extension = azure.arckubernetes.ClusterExtension(\"exampleClusterExtension\",\n cluster_id=azurerm_arc_kubernetes_cluster[\"test\"][\"id\"],\n extension_type=\"microsoft.flux\")\nexample_flux_configuration = azure.arckubernetes.FluxConfiguration(\"exampleFluxConfiguration\",\n cluster_id=azurerm_arc_kubernetes_cluster[\"test\"][\"id\"],\n namespace=\"flux\",\n git_repository=azure.arckubernetes.FluxConfigurationGitRepositoryArgs(\n url=\"https://github.com/Azure/arc-k8s-demo\",\n reference_type=\"branch\",\n reference_value=\"main\",\n ),\n kustomizations=[azure.arckubernetes.FluxConfigurationKustomizationArgs(\n name=\"kustomization-1\",\n )],\n opts=pulumi.ResourceOptions(depends_on=[example_cluster_extension]))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleCluster = new Azure.ArcKubernetes.Cluster(\"exampleCluster\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = \"West Europe\",\n AgentPublicKeyCertificate = ReadFileBase64(\"testdata/public.cer\"),\n Identity = new Azure.ArcKubernetes.Inputs.ClusterIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n Tags = \n {\n { \"ENV\", \"Test\" },\n },\n });\n\n var exampleClusterExtension = new Azure.ArcKubernetes.ClusterExtension(\"exampleClusterExtension\", new()\n {\n ClusterId = azurerm_arc_kubernetes_cluster.Test.Id,\n ExtensionType = \"microsoft.flux\",\n });\n\n var exampleFluxConfiguration = new Azure.ArcKubernetes.FluxConfiguration(\"exampleFluxConfiguration\", new()\n {\n ClusterId = azurerm_arc_kubernetes_cluster.Test.Id,\n Namespace = \"flux\",\n GitRepository = new Azure.ArcKubernetes.Inputs.FluxConfigurationGitRepositoryArgs\n {\n Url = \"https://github.com/Azure/arc-k8s-demo\",\n ReferenceType = \"branch\",\n ReferenceValue = \"main\",\n },\n Kustomizations = new[]\n {\n new Azure.ArcKubernetes.Inputs.FluxConfigurationKustomizationArgs\n {\n Name = \"kustomization-1\",\n },\n },\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n exampleClusterExtension,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/arckubernetes\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arckubernetes.NewCluster(ctx, \"exampleCluster\", \u0026arckubernetes.ClusterArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t\tAgentPublicKeyCertificate: filebase64OrPanic(\"testdata/public.cer\"),\n\t\t\tIdentity: \u0026arckubernetes.ClusterIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"ENV\": pulumi.String(\"Test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleClusterExtension, err := arckubernetes.NewClusterExtension(ctx, \"exampleClusterExtension\", \u0026arckubernetes.ClusterExtensionArgs{\n\t\t\tClusterId: pulumi.Any(azurerm_arc_kubernetes_cluster.Test.Id),\n\t\t\tExtensionType: pulumi.String(\"microsoft.flux\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = arckubernetes.NewFluxConfiguration(ctx, \"exampleFluxConfiguration\", \u0026arckubernetes.FluxConfigurationArgs{\n\t\t\tClusterId: pulumi.Any(azurerm_arc_kubernetes_cluster.Test.Id),\n\t\t\tNamespace: pulumi.String(\"flux\"),\n\t\t\tGitRepository: \u0026arckubernetes.FluxConfigurationGitRepositoryArgs{\n\t\t\t\tUrl: pulumi.String(\"https://github.com/Azure/arc-k8s-demo\"),\n\t\t\t\tReferenceType: pulumi.String(\"branch\"),\n\t\t\t\tReferenceValue: pulumi.String(\"main\"),\n\t\t\t},\n\t\t\tKustomizations: arckubernetes.FluxConfigurationKustomizationArray{\n\t\t\t\t\u0026arckubernetes.FluxConfigurationKustomizationArgs{\n\t\t\t\t\tName: pulumi.String(\"kustomization-1\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\texampleClusterExtension,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.arckubernetes.Cluster;\nimport com.pulumi.azure.arckubernetes.ClusterArgs;\nimport com.pulumi.azure.arckubernetes.inputs.ClusterIdentityArgs;\nimport com.pulumi.azure.arckubernetes.ClusterExtension;\nimport com.pulumi.azure.arckubernetes.ClusterExtensionArgs;\nimport com.pulumi.azure.arckubernetes.FluxConfiguration;\nimport com.pulumi.azure.arckubernetes.FluxConfigurationArgs;\nimport com.pulumi.azure.arckubernetes.inputs.FluxConfigurationGitRepositoryArgs;\nimport com.pulumi.azure.arckubernetes.inputs.FluxConfigurationKustomizationArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleCluster = new Cluster(\"exampleCluster\", ClusterArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(\"West Europe\")\n .agentPublicKeyCertificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"testdata/public.cer\"))))\n .identity(ClusterIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .tags(Map.of(\"ENV\", \"Test\"))\n .build());\n\n var exampleClusterExtension = new ClusterExtension(\"exampleClusterExtension\", ClusterExtensionArgs.builder() \n .clusterId(azurerm_arc_kubernetes_cluster.test().id())\n .extensionType(\"microsoft.flux\")\n .build());\n\n var exampleFluxConfiguration = new FluxConfiguration(\"exampleFluxConfiguration\", FluxConfigurationArgs.builder() \n .clusterId(azurerm_arc_kubernetes_cluster.test().id())\n .namespace(\"flux\")\n .gitRepository(FluxConfigurationGitRepositoryArgs.builder()\n .url(\"https://github.com/Azure/arc-k8s-demo\")\n .referenceType(\"branch\")\n .referenceValue(\"main\")\n .build())\n .kustomizations(FluxConfigurationKustomizationArgs.builder()\n .name(\"kustomization-1\")\n .build())\n .build(), CustomResourceOptions.builder()\n .dependsOn(exampleClusterExtension)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nArc Kubernetes Flux Configuration can be imported using the `resource id` for different `cluster_resource_name`, e.g.\n\n```sh\n $ pulumi import azure:arckubernetes/fluxConfiguration:FluxConfiguration example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Kubernetes/connectedClusters/cluster1/providers/Microsoft.KubernetesConfiguration/fluxConfigurations/fluxConfiguration1\n```\n\n ", "properties": { "blobStorage": { "$ref": "#/types/azure:arckubernetes/FluxConfigurationBlobStorage:FluxConfigurationBlobStorage", @@ -122489,7 +122489,7 @@ } }, "azure:automation/certificate:Certificate": { - "description": "Manages an Automation Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.automation.Account(\"exampleAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleCertificate = new azure.automation.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n description: \"This is an example certificate\",\n base64: Buffer.from(fs.readFileSync(\"certificate.pfx\"), 'binary').toString('base64'),\n exportable: true,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.automation.Account(\"exampleAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_certificate = azure.automation.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n description=\"This is an example certificate\",\n base64=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"),\n exportable=True)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Automation.Account(\"exampleAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleCertificate = new Azure.Automation.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n Description = \"This is an example certificate\",\n Base64 = ReadFileBase64(\"certificate.pfx\"),\n Exportable = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/automation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := automation.NewAccount(ctx, \"exampleAccount\", \u0026automation.AccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = automation.NewCertificate(ctx, \"exampleCertificate\", \u0026automation.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tDescription: pulumi.String(\"This is an example certificate\"),\n\t\t\tBase64: filebase64OrPanic(\"certificate.pfx\"),\n\t\t\tExportable: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.automation.Account;\nimport com.pulumi.azure.automation.AccountArgs;\nimport com.pulumi.azure.automation.Certificate;\nimport com.pulumi.azure.automation.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .description(\"This is an example certificate\")\n .base64(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .exportable(true)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAutomation Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:automation/certificate:Certificate certificate1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Automation/automationAccounts/account1/certificates/certificate1\n```\n\n ", + "description": "Manages an Automation Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.automation.Account(\"exampleAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleCertificate = new azure.automation.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n description: \"This is an example certificate\",\n base64: Buffer.from(fs.readFileSync(\"certificate.pfx\", 'binary')).toString('base64'),\n exportable: true,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.automation.Account(\"exampleAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_certificate = azure.automation.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n description=\"This is an example certificate\",\n base64=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"),\n exportable=True)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Automation.Account(\"exampleAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleCertificate = new Azure.Automation.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n Description = \"This is an example certificate\",\n Base64 = ReadFileBase64(\"certificate.pfx\"),\n Exportable = true,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/automation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := automation.NewAccount(ctx, \"exampleAccount\", \u0026automation.AccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = automation.NewCertificate(ctx, \"exampleCertificate\", \u0026automation.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tDescription: pulumi.String(\"This is an example certificate\"),\n\t\t\tBase64: filebase64OrPanic(\"certificate.pfx\"),\n\t\t\tExportable: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.automation.Account;\nimport com.pulumi.azure.automation.AccountArgs;\nimport com.pulumi.azure.automation.Certificate;\nimport com.pulumi.azure.automation.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .description(\"This is an example certificate\")\n .base64(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .exportable(true)\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAutomation Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:automation/certificate:Certificate certificate1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Automation/automationAccounts/account1/certificates/certificate1\n```\n\n ", "properties": { "automationAccountName": { "type": "string", @@ -122721,7 +122721,7 @@ } }, "azure:automation/connectionCertificate:ConnectionCertificate": { - "description": "Manages an Automation Connection with type `Azure`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleClientConfig = azure.core.getClientConfig({});\nconst exampleAccount = new azure.automation.Account(\"exampleAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleCertificate = new azure.automation.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n base64: Buffer.from(fs.readFileSync(\"certificate.pfx\"), 'binary').toString('base64'),\n});\nconst exampleConnectionCertificate = new azure.automation.ConnectionCertificate(\"exampleConnectionCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n automationCertificateName: exampleCertificate.name,\n subscriptionId: exampleClientConfig.then(exampleClientConfig =\u003e exampleClientConfig.subscriptionId),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_client_config = azure.core.get_client_config()\nexample_account = azure.automation.Account(\"exampleAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_certificate = azure.automation.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n base64=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"))\nexample_connection_certificate = azure.automation.ConnectionCertificate(\"exampleConnectionCertificate\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n automation_certificate_name=example_certificate.name,\n subscription_id=example_client_config.subscription_id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleClientConfig = Azure.Core.GetClientConfig.Invoke();\n\n var exampleAccount = new Azure.Automation.Account(\"exampleAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleCertificate = new Azure.Automation.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n Base64 = ReadFileBase64(\"certificate.pfx\"),\n });\n\n var exampleConnectionCertificate = new Azure.Automation.ConnectionCertificate(\"exampleConnectionCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n AutomationCertificateName = exampleCertificate.Name,\n SubscriptionId = exampleClientConfig.Apply(getClientConfigResult =\u003e getClientConfigResult.SubscriptionId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/automation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleClientConfig, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := automation.NewAccount(ctx, \"exampleAccount\", \u0026automation.AccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := automation.NewCertificate(ctx, \"exampleCertificate\", \u0026automation.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tBase64: filebase64OrPanic(\"certificate.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = automation.NewConnectionCertificate(ctx, \"exampleConnectionCertificate\", \u0026automation.ConnectionCertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tAutomationCertificateName: exampleCertificate.Name,\n\t\t\tSubscriptionId: *pulumi.String(exampleClientConfig.SubscriptionId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.automation.Account;\nimport com.pulumi.azure.automation.AccountArgs;\nimport com.pulumi.azure.automation.Certificate;\nimport com.pulumi.azure.automation.CertificateArgs;\nimport com.pulumi.azure.automation.ConnectionCertificate;\nimport com.pulumi.azure.automation.ConnectionCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n final var exampleClientConfig = CoreFunctions.getClientConfig();\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .base64(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .build());\n\n var exampleConnectionCertificate = new ConnectionCertificate(\"exampleConnectionCertificate\", ConnectionCertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .automationCertificateName(exampleCertificate.name())\n .subscriptionId(exampleClientConfig.applyValue(getClientConfigResult -\u003e getClientConfigResult.subscriptionId()))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAutomation Connection can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:automation/connectionCertificate:ConnectionCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Automation/automationAccounts/account1/connections/conn1\n```\n\n ", + "description": "Manages an Automation Connection with type `Azure`.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleClientConfig = azure.core.getClientConfig({});\nconst exampleAccount = new azure.automation.Account(\"exampleAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleCertificate = new azure.automation.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n base64: Buffer.from(fs.readFileSync(\"certificate.pfx\", 'binary')).toString('base64'),\n});\nconst exampleConnectionCertificate = new azure.automation.ConnectionCertificate(\"exampleConnectionCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n automationAccountName: exampleAccount.name,\n automationCertificateName: exampleCertificate.name,\n subscriptionId: exampleClientConfig.then(exampleClientConfig =\u003e exampleClientConfig.subscriptionId),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_client_config = azure.core.get_client_config()\nexample_account = azure.automation.Account(\"exampleAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_certificate = azure.automation.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n base64=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"))\nexample_connection_certificate = azure.automation.ConnectionCertificate(\"exampleConnectionCertificate\",\n resource_group_name=example_resource_group.name,\n automation_account_name=example_account.name,\n automation_certificate_name=example_certificate.name,\n subscription_id=example_client_config.subscription_id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleClientConfig = Azure.Core.GetClientConfig.Invoke();\n\n var exampleAccount = new Azure.Automation.Account(\"exampleAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleCertificate = new Azure.Automation.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n Base64 = ReadFileBase64(\"certificate.pfx\"),\n });\n\n var exampleConnectionCertificate = new Azure.Automation.ConnectionCertificate(\"exampleConnectionCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AutomationAccountName = exampleAccount.Name,\n AutomationCertificateName = exampleCertificate.Name,\n SubscriptionId = exampleClientConfig.Apply(getClientConfigResult =\u003e getClientConfigResult.SubscriptionId),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/automation\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleClientConfig, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := automation.NewAccount(ctx, \"exampleAccount\", \u0026automation.AccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := automation.NewCertificate(ctx, \"exampleCertificate\", \u0026automation.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tBase64: filebase64OrPanic(\"certificate.pfx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = automation.NewConnectionCertificate(ctx, \"exampleConnectionCertificate\", \u0026automation.ConnectionCertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAutomationAccountName: exampleAccount.Name,\n\t\t\tAutomationCertificateName: exampleCertificate.Name,\n\t\t\tSubscriptionId: *pulumi.String(exampleClientConfig.SubscriptionId),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.automation.Account;\nimport com.pulumi.azure.automation.AccountArgs;\nimport com.pulumi.azure.automation.Certificate;\nimport com.pulumi.azure.automation.CertificateArgs;\nimport com.pulumi.azure.automation.ConnectionCertificate;\nimport com.pulumi.azure.automation.ConnectionCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n final var exampleClientConfig = CoreFunctions.getClientConfig();\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .base64(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .build());\n\n var exampleConnectionCertificate = new ConnectionCertificate(\"exampleConnectionCertificate\", ConnectionCertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .automationAccountName(exampleAccount.name())\n .automationCertificateName(exampleCertificate.name())\n .subscriptionId(exampleClientConfig.applyValue(getClientConfigResult -\u003e getClientConfigResult.subscriptionId()))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAutomation Connection can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:automation/connectionCertificate:ConnectionCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Automation/automationAccounts/account1/connections/conn1\n```\n\n ", "properties": { "automationAccountName": { "type": "string", @@ -127225,7 +127225,7 @@ } }, "azure:batch/certificate:Certificate": { - "description": "Manages a certificate in an Azure Batch account.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleBatch_accountAccount = new azure.batch.Account(\"exampleBatch/accountAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n poolAllocationMode: \"BatchService\",\n storageAccountId: exampleAccount.id,\n storageAccountAuthenticationMode: \"StorageKeys\",\n tags: {\n env: \"test\",\n },\n});\nconst exampleCertificate = new azure.batch.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n accountName: exampleBatch / accountAccount.name,\n certificate: Buffer.from(fs.readFileSync(\"certificate.pfx\"), 'binary').toString('base64'),\n format: \"Pfx\",\n password: \"password\",\n thumbprint: \"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\",\n thumbprintAlgorithm: \"SHA1\",\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_batch_account_account = azure.batch.Account(\"exampleBatch/accountAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n pool_allocation_mode=\"BatchService\",\n storage_account_id=example_account.id,\n storage_account_authentication_mode=\"StorageKeys\",\n tags={\n \"env\": \"test\",\n })\nexample_certificate = azure.batch.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n account_name=example_batch / account_account[\"name\"],\n certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"),\n format=\"Pfx\",\n password=\"password\",\n thumbprint=\"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\",\n thumbprint_algorithm=\"SHA1\")\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleBatch_accountAccount = new Azure.Batch.Account(\"exampleBatch/accountAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PoolAllocationMode = \"BatchService\",\n StorageAccountId = exampleAccount.Id,\n StorageAccountAuthenticationMode = \"StorageKeys\",\n Tags = \n {\n { \"env\", \"test\" },\n },\n });\n\n var exampleCertificate = new Azure.Batch.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AccountName = exampleBatch / accountAccount.Name,\n BatchCertificate = ReadFileBase64(\"certificate.pfx\"),\n Format = \"Pfx\",\n Password = \"password\",\n Thumbprint = \"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\",\n ThumbprintAlgorithm = \"SHA1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/batch\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewAccount(ctx, \"exampleBatch/accountAccount\", \u0026batch.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPoolAllocationMode: pulumi.String(\"BatchService\"),\n\t\t\tStorageAccountId: exampleAccount.ID(),\n\t\t\tStorageAccountAuthenticationMode: pulumi.String(\"StorageKeys\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewCertificate(ctx, \"exampleCertificate\", \u0026batch.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAccountName: exampleBatch / accountAccount.Name,\n\t\t\tCertificate: filebase64OrPanic(\"certificate.pfx\"),\n\t\t\tFormat: pulumi.String(\"Pfx\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\tThumbprint: pulumi.String(\"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\"),\n\t\t\tThumbprintAlgorithm: pulumi.String(\"SHA1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.batch.Account;\nimport com.pulumi.azure.batch.AccountArgs;\nimport com.pulumi.azure.batch.Certificate;\nimport com.pulumi.azure.batch.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleBatch_accountAccount = new Account(\"exampleBatch/accountAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .poolAllocationMode(\"BatchService\")\n .storageAccountId(exampleAccount.id())\n .storageAccountAuthenticationMode(\"StorageKeys\")\n .tags(Map.of(\"env\", \"test\"))\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .accountName(exampleBatch / accountAccount.name())\n .certificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .format(\"Pfx\")\n .password(\"password\")\n .thumbprint(\"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\")\n .thumbprintAlgorithm(\"SHA1\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nBatch Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:batch/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example-rg/providers/Microsoft.Batch/batchAccounts/batch1/certificates/certificate1\n```\n\n ", + "description": "Manages a certificate in an Azure Batch account.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleBatch_accountAccount = new azure.batch.Account(\"exampleBatch/accountAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n poolAllocationMode: \"BatchService\",\n storageAccountId: exampleAccount.id,\n storageAccountAuthenticationMode: \"StorageKeys\",\n tags: {\n env: \"test\",\n },\n});\nconst exampleCertificate = new azure.batch.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n accountName: exampleBatch / accountAccount.name,\n certificate: Buffer.from(fs.readFileSync(\"certificate.pfx\", 'binary')).toString('base64'),\n format: \"Pfx\",\n password: \"password\",\n thumbprint: \"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\",\n thumbprintAlgorithm: \"SHA1\",\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_batch_account_account = azure.batch.Account(\"exampleBatch/accountAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n pool_allocation_mode=\"BatchService\",\n storage_account_id=example_account.id,\n storage_account_authentication_mode=\"StorageKeys\",\n tags={\n \"env\": \"test\",\n })\nexample_certificate = azure.batch.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n account_name=example_batch / account_account[\"name\"],\n certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.pfx\"),\n format=\"Pfx\",\n password=\"password\",\n thumbprint=\"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\",\n thumbprint_algorithm=\"SHA1\")\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleBatch_accountAccount = new Azure.Batch.Account(\"exampleBatch/accountAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PoolAllocationMode = \"BatchService\",\n StorageAccountId = exampleAccount.Id,\n StorageAccountAuthenticationMode = \"StorageKeys\",\n Tags = \n {\n { \"env\", \"test\" },\n },\n });\n\n var exampleCertificate = new Azure.Batch.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AccountName = exampleBatch / accountAccount.Name,\n BatchCertificate = ReadFileBase64(\"certificate.pfx\"),\n Format = \"Pfx\",\n Password = \"password\",\n Thumbprint = \"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\",\n ThumbprintAlgorithm = \"SHA1\",\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/batch\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewAccount(ctx, \"exampleBatch/accountAccount\", \u0026batch.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPoolAllocationMode: pulumi.String(\"BatchService\"),\n\t\t\tStorageAccountId: exampleAccount.ID(),\n\t\t\tStorageAccountAuthenticationMode: pulumi.String(\"StorageKeys\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewCertificate(ctx, \"exampleCertificate\", \u0026batch.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAccountName: exampleBatch / accountAccount.Name,\n\t\t\tCertificate: filebase64OrPanic(\"certificate.pfx\"),\n\t\t\tFormat: pulumi.String(\"Pfx\"),\n\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\tThumbprint: pulumi.String(\"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\"),\n\t\t\tThumbprintAlgorithm: pulumi.String(\"SHA1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.batch.Account;\nimport com.pulumi.azure.batch.AccountArgs;\nimport com.pulumi.azure.batch.Certificate;\nimport com.pulumi.azure.batch.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleBatch_accountAccount = new Account(\"exampleBatch/accountAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .poolAllocationMode(\"BatchService\")\n .storageAccountId(exampleAccount.id())\n .storageAccountAuthenticationMode(\"StorageKeys\")\n .tags(Map.of(\"env\", \"test\"))\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .accountName(exampleBatch / accountAccount.name())\n .certificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.pfx\"))))\n .format(\"Pfx\")\n .password(\"password\")\n .thumbprint(\"42C107874FD0E4A9583292A2F1098E8FE4B2EDDA\")\n .thumbprintAlgorithm(\"SHA1\")\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nBatch Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:batch/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example-rg/providers/Microsoft.Batch/batchAccounts/batch1/certificates/certificate1\n```\n\n ", "properties": { "accountName": { "type": "string", @@ -127494,7 +127494,7 @@ } }, "azure:batch/pool:Pool": { - "description": "Manages an Azure Batch pool.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleBatch_accountAccount = new azure.batch.Account(\"exampleBatch/accountAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n poolAllocationMode: \"BatchService\",\n storageAccountId: exampleAccount.id,\n storageAccountAuthenticationMode: \"StorageKeys\",\n tags: {\n env: \"test\",\n },\n});\nconst exampleCertificate = new azure.batch.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n accountName: exampleBatch / accountAccount.name,\n certificate: Buffer.from(fs.readFileSync(\"certificate.cer\"), 'binary').toString('base64'),\n format: \"Cer\",\n thumbprint: \"312d31a79fa0cef49c00f769afc2b73e9f4edf34\",\n thumbprintAlgorithm: \"SHA1\",\n});\nconst examplePool = new azure.batch.Pool(\"examplePool\", {\n resourceGroupName: exampleResourceGroup.name,\n accountName: exampleBatch / accountAccount.name,\n displayName: \"Test Acc Pool Auto\",\n vmSize: \"Standard_A1\",\n nodeAgentSkuId: \"batch.node.ubuntu 20.04\",\n autoScale: {\n evaluationInterval: \"PT15M\",\n formula: ` startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n`,\n },\n storageImageReference: {\n publisher: \"microsoft-azure-batch\",\n offer: \"ubuntu-server-container\",\n sku: \"20-04-lts\",\n version: \"latest\",\n },\n containerConfiguration: {\n type: \"DockerCompatible\",\n containerRegistries: [{\n registryServer: \"docker.io\",\n userName: \"login\",\n password: \"apassword\",\n }],\n },\n startTask: {\n commandLine: \"echo 'Hello World from $env'\",\n taskRetryMaximum: 1,\n waitForSuccess: true,\n commonEnvironmentProperties: {\n env: \"TEST\",\n },\n userIdentity: {\n autoUser: {\n elevationLevel: \"NonAdmin\",\n scope: \"Task\",\n },\n },\n },\n certificates: [{\n id: exampleCertificate.id,\n storeLocation: \"CurrentUser\",\n visibilities: [\"StartTask\"],\n }],\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_batch_account_account = azure.batch.Account(\"exampleBatch/accountAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n pool_allocation_mode=\"BatchService\",\n storage_account_id=example_account.id,\n storage_account_authentication_mode=\"StorageKeys\",\n tags={\n \"env\": \"test\",\n })\nexample_certificate = azure.batch.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n account_name=example_batch / account_account[\"name\"],\n certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.cer\"),\n format=\"Cer\",\n thumbprint=\"312d31a79fa0cef49c00f769afc2b73e9f4edf34\",\n thumbprint_algorithm=\"SHA1\")\nexample_pool = azure.batch.Pool(\"examplePool\",\n resource_group_name=example_resource_group.name,\n account_name=example_batch / account_account[\"name\"],\n display_name=\"Test Acc Pool Auto\",\n vm_size=\"Standard_A1\",\n node_agent_sku_id=\"batch.node.ubuntu 20.04\",\n auto_scale=azure.batch.PoolAutoScaleArgs(\n evaluation_interval=\"PT15M\",\n formula=\"\"\" startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n\"\"\",\n ),\n storage_image_reference=azure.batch.PoolStorageImageReferenceArgs(\n publisher=\"microsoft-azure-batch\",\n offer=\"ubuntu-server-container\",\n sku=\"20-04-lts\",\n version=\"latest\",\n ),\n container_configuration=azure.batch.PoolContainerConfigurationArgs(\n type=\"DockerCompatible\",\n container_registries=[azure.batch.PoolContainerConfigurationContainerRegistryArgs(\n registry_server=\"docker.io\",\n user_name=\"login\",\n password=\"apassword\",\n )],\n ),\n start_task=azure.batch.PoolStartTaskArgs(\n command_line=\"echo 'Hello World from $env'\",\n task_retry_maximum=1,\n wait_for_success=True,\n common_environment_properties={\n \"env\": \"TEST\",\n },\n user_identity=azure.batch.PoolStartTaskUserIdentityArgs(\n auto_user=azure.batch.PoolStartTaskUserIdentityAutoUserArgs(\n elevation_level=\"NonAdmin\",\n scope=\"Task\",\n ),\n ),\n ),\n certificates=[azure.batch.PoolCertificateArgs(\n id=example_certificate.id,\n store_location=\"CurrentUser\",\n visibilities=[\"StartTask\"],\n )])\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleBatch_accountAccount = new Azure.Batch.Account(\"exampleBatch/accountAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PoolAllocationMode = \"BatchService\",\n StorageAccountId = exampleAccount.Id,\n StorageAccountAuthenticationMode = \"StorageKeys\",\n Tags = \n {\n { \"env\", \"test\" },\n },\n });\n\n var exampleCertificate = new Azure.Batch.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AccountName = exampleBatch / accountAccount.Name,\n BatchCertificate = ReadFileBase64(\"certificate.cer\"),\n Format = \"Cer\",\n Thumbprint = \"312d31a79fa0cef49c00f769afc2b73e9f4edf34\",\n ThumbprintAlgorithm = \"SHA1\",\n });\n\n var examplePool = new Azure.Batch.Pool(\"examplePool\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AccountName = exampleBatch / accountAccount.Name,\n DisplayName = \"Test Acc Pool Auto\",\n VmSize = \"Standard_A1\",\n NodeAgentSkuId = \"batch.node.ubuntu 20.04\",\n AutoScale = new Azure.Batch.Inputs.PoolAutoScaleArgs\n {\n EvaluationInterval = \"PT15M\",\n Formula = @\" startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n\",\n },\n StorageImageReference = new Azure.Batch.Inputs.PoolStorageImageReferenceArgs\n {\n Publisher = \"microsoft-azure-batch\",\n Offer = \"ubuntu-server-container\",\n Sku = \"20-04-lts\",\n Version = \"latest\",\n },\n ContainerConfiguration = new Azure.Batch.Inputs.PoolContainerConfigurationArgs\n {\n Type = \"DockerCompatible\",\n ContainerRegistries = new[]\n {\n new Azure.Batch.Inputs.PoolContainerConfigurationContainerRegistryArgs\n {\n RegistryServer = \"docker.io\",\n UserName = \"login\",\n Password = \"apassword\",\n },\n },\n },\n StartTask = new Azure.Batch.Inputs.PoolStartTaskArgs\n {\n CommandLine = \"echo 'Hello World from $env'\",\n TaskRetryMaximum = 1,\n WaitForSuccess = true,\n CommonEnvironmentProperties = \n {\n { \"env\", \"TEST\" },\n },\n UserIdentity = new Azure.Batch.Inputs.PoolStartTaskUserIdentityArgs\n {\n AutoUser = new Azure.Batch.Inputs.PoolStartTaskUserIdentityAutoUserArgs\n {\n ElevationLevel = \"NonAdmin\",\n Scope = \"Task\",\n },\n },\n },\n Certificates = new[]\n {\n new Azure.Batch.Inputs.PoolCertificateArgs\n {\n Id = exampleCertificate.Id,\n StoreLocation = \"CurrentUser\",\n Visibilities = new[]\n {\n \"StartTask\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/batch\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewAccount(ctx, \"exampleBatch/accountAccount\", \u0026batch.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPoolAllocationMode: pulumi.String(\"BatchService\"),\n\t\t\tStorageAccountId: exampleAccount.ID(),\n\t\t\tStorageAccountAuthenticationMode: pulumi.String(\"StorageKeys\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := batch.NewCertificate(ctx, \"exampleCertificate\", \u0026batch.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAccountName: exampleBatch / accountAccount.Name,\n\t\t\tCertificate: filebase64OrPanic(\"certificate.cer\"),\n\t\t\tFormat: pulumi.String(\"Cer\"),\n\t\t\tThumbprint: pulumi.String(\"312d31a79fa0cef49c00f769afc2b73e9f4edf34\"),\n\t\t\tThumbprintAlgorithm: pulumi.String(\"SHA1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewPool(ctx, \"examplePool\", \u0026batch.PoolArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAccountName: exampleBatch / accountAccount.Name,\n\t\t\tDisplayName: pulumi.String(\"Test Acc Pool Auto\"),\n\t\t\tVmSize: pulumi.String(\"Standard_A1\"),\n\t\t\tNodeAgentSkuId: pulumi.String(\"batch.node.ubuntu 20.04\"),\n\t\t\tAutoScale: \u0026batch.PoolAutoScaleArgs{\n\t\t\t\tEvaluationInterval: pulumi.String(\"PT15M\"),\n\t\t\t\tFormula: pulumi.String(` startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n`),\n\t\t\t},\n\t\t\tStorageImageReference: \u0026batch.PoolStorageImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"microsoft-azure-batch\"),\n\t\t\t\tOffer: pulumi.String(\"ubuntu-server-container\"),\n\t\t\t\tSku: pulumi.String(\"20-04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t\tContainerConfiguration: \u0026batch.PoolContainerConfigurationArgs{\n\t\t\t\tType: pulumi.String(\"DockerCompatible\"),\n\t\t\t\tContainerRegistries: batch.PoolContainerConfigurationContainerRegistryArray{\n\t\t\t\t\t\u0026batch.PoolContainerConfigurationContainerRegistryArgs{\n\t\t\t\t\t\tRegistryServer: pulumi.String(\"docker.io\"),\n\t\t\t\t\t\tUserName: pulumi.String(\"login\"),\n\t\t\t\t\t\tPassword: pulumi.String(\"apassword\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStartTask: \u0026batch.PoolStartTaskArgs{\n\t\t\t\tCommandLine: pulumi.String(\"echo 'Hello World from $env'\"),\n\t\t\t\tTaskRetryMaximum: pulumi.Int(1),\n\t\t\t\tWaitForSuccess: pulumi.Bool(true),\n\t\t\t\tCommonEnvironmentProperties: pulumi.StringMap{\n\t\t\t\t\t\"env\": pulumi.String(\"TEST\"),\n\t\t\t\t},\n\t\t\t\tUserIdentity: \u0026batch.PoolStartTaskUserIdentityArgs{\n\t\t\t\t\tAutoUser: \u0026batch.PoolStartTaskUserIdentityAutoUserArgs{\n\t\t\t\t\t\tElevationLevel: pulumi.String(\"NonAdmin\"),\n\t\t\t\t\t\tScope: pulumi.String(\"Task\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCertificates: batch.PoolCertificateArray{\n\t\t\t\t\u0026batch.PoolCertificateArgs{\n\t\t\t\t\tId: exampleCertificate.ID(),\n\t\t\t\t\tStoreLocation: pulumi.String(\"CurrentUser\"),\n\t\t\t\t\tVisibilities: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"StartTask\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.batch.Account;\nimport com.pulumi.azure.batch.AccountArgs;\nimport com.pulumi.azure.batch.Certificate;\nimport com.pulumi.azure.batch.CertificateArgs;\nimport com.pulumi.azure.batch.Pool;\nimport com.pulumi.azure.batch.PoolArgs;\nimport com.pulumi.azure.batch.inputs.PoolAutoScaleArgs;\nimport com.pulumi.azure.batch.inputs.PoolStorageImageReferenceArgs;\nimport com.pulumi.azure.batch.inputs.PoolContainerConfigurationArgs;\nimport com.pulumi.azure.batch.inputs.PoolStartTaskArgs;\nimport com.pulumi.azure.batch.inputs.PoolStartTaskUserIdentityArgs;\nimport com.pulumi.azure.batch.inputs.PoolStartTaskUserIdentityAutoUserArgs;\nimport com.pulumi.azure.batch.inputs.PoolCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleBatch_accountAccount = new Account(\"exampleBatch/accountAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .poolAllocationMode(\"BatchService\")\n .storageAccountId(exampleAccount.id())\n .storageAccountAuthenticationMode(\"StorageKeys\")\n .tags(Map.of(\"env\", \"test\"))\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .accountName(exampleBatch / accountAccount.name())\n .certificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.cer\"))))\n .format(\"Cer\")\n .thumbprint(\"312d31a79fa0cef49c00f769afc2b73e9f4edf34\")\n .thumbprintAlgorithm(\"SHA1\")\n .build());\n\n var examplePool = new Pool(\"examplePool\", PoolArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .accountName(exampleBatch / accountAccount.name())\n .displayName(\"Test Acc Pool Auto\")\n .vmSize(\"Standard_A1\")\n .nodeAgentSkuId(\"batch.node.ubuntu 20.04\")\n .autoScale(PoolAutoScaleArgs.builder()\n .evaluationInterval(\"PT15M\")\n .formula(\"\"\"\n startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n \"\"\")\n .build())\n .storageImageReference(PoolStorageImageReferenceArgs.builder()\n .publisher(\"microsoft-azure-batch\")\n .offer(\"ubuntu-server-container\")\n .sku(\"20-04-lts\")\n .version(\"latest\")\n .build())\n .containerConfiguration(PoolContainerConfigurationArgs.builder()\n .type(\"DockerCompatible\")\n .containerRegistries(PoolContainerConfigurationContainerRegistryArgs.builder()\n .registryServer(\"docker.io\")\n .userName(\"login\")\n .password(\"apassword\")\n .build())\n .build())\n .startTask(PoolStartTaskArgs.builder()\n .commandLine(\"echo 'Hello World from $env'\")\n .taskRetryMaximum(1)\n .waitForSuccess(true)\n .commonEnvironmentProperties(Map.of(\"env\", \"TEST\"))\n .userIdentity(PoolStartTaskUserIdentityArgs.builder()\n .autoUser(PoolStartTaskUserIdentityAutoUserArgs.builder()\n .elevationLevel(\"NonAdmin\")\n .scope(\"Task\")\n .build())\n .build())\n .build())\n .certificates(PoolCertificateArgs.builder()\n .id(exampleCertificate.id())\n .storeLocation(\"CurrentUser\")\n .visibilities(\"StartTask\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nBatch Pools can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:batch/pool:Pool example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myGroup1/providers/Microsoft.Batch/batchAccounts/myBatchAccount1/pools/myBatchPool1\n```\n\n ", + "description": "Manages an Azure Batch pool.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleAccount = new azure.storage.Account(\"exampleAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n accountTier: \"Standard\",\n accountReplicationType: \"LRS\",\n});\nconst exampleBatch_accountAccount = new azure.batch.Account(\"exampleBatch/accountAccount\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n poolAllocationMode: \"BatchService\",\n storageAccountId: exampleAccount.id,\n storageAccountAuthenticationMode: \"StorageKeys\",\n tags: {\n env: \"test\",\n },\n});\nconst exampleCertificate = new azure.batch.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n accountName: exampleBatch / accountAccount.name,\n certificate: Buffer.from(fs.readFileSync(\"certificate.cer\", 'binary')).toString('base64'),\n format: \"Cer\",\n thumbprint: \"312d31a79fa0cef49c00f769afc2b73e9f4edf34\",\n thumbprintAlgorithm: \"SHA1\",\n});\nconst examplePool = new azure.batch.Pool(\"examplePool\", {\n resourceGroupName: exampleResourceGroup.name,\n accountName: exampleBatch / accountAccount.name,\n displayName: \"Test Acc Pool Auto\",\n vmSize: \"Standard_A1\",\n nodeAgentSkuId: \"batch.node.ubuntu 20.04\",\n autoScale: {\n evaluationInterval: \"PT15M\",\n formula: ` startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n`,\n },\n storageImageReference: {\n publisher: \"microsoft-azure-batch\",\n offer: \"ubuntu-server-container\",\n sku: \"20-04-lts\",\n version: \"latest\",\n },\n containerConfiguration: {\n type: \"DockerCompatible\",\n containerRegistries: [{\n registryServer: \"docker.io\",\n userName: \"login\",\n password: \"apassword\",\n }],\n },\n startTask: {\n commandLine: \"echo 'Hello World from $env'\",\n taskRetryMaximum: 1,\n waitForSuccess: true,\n commonEnvironmentProperties: {\n env: \"TEST\",\n },\n userIdentity: {\n autoUser: {\n elevationLevel: \"NonAdmin\",\n scope: \"Task\",\n },\n },\n },\n certificates: [{\n id: exampleCertificate.id,\n storeLocation: \"CurrentUser\",\n visibilities: [\"StartTask\"],\n }],\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_account = azure.storage.Account(\"exampleAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n account_tier=\"Standard\",\n account_replication_type=\"LRS\")\nexample_batch_account_account = azure.batch.Account(\"exampleBatch/accountAccount\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n pool_allocation_mode=\"BatchService\",\n storage_account_id=example_account.id,\n storage_account_authentication_mode=\"StorageKeys\",\n tags={\n \"env\": \"test\",\n })\nexample_certificate = azure.batch.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n account_name=example_batch / account_account[\"name\"],\n certificate=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate.cer\"),\n format=\"Cer\",\n thumbprint=\"312d31a79fa0cef49c00f769afc2b73e9f4edf34\",\n thumbprint_algorithm=\"SHA1\")\nexample_pool = azure.batch.Pool(\"examplePool\",\n resource_group_name=example_resource_group.name,\n account_name=example_batch / account_account[\"name\"],\n display_name=\"Test Acc Pool Auto\",\n vm_size=\"Standard_A1\",\n node_agent_sku_id=\"batch.node.ubuntu 20.04\",\n auto_scale=azure.batch.PoolAutoScaleArgs(\n evaluation_interval=\"PT15M\",\n formula=\"\"\" startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n\"\"\",\n ),\n storage_image_reference=azure.batch.PoolStorageImageReferenceArgs(\n publisher=\"microsoft-azure-batch\",\n offer=\"ubuntu-server-container\",\n sku=\"20-04-lts\",\n version=\"latest\",\n ),\n container_configuration=azure.batch.PoolContainerConfigurationArgs(\n type=\"DockerCompatible\",\n container_registries=[azure.batch.PoolContainerConfigurationContainerRegistryArgs(\n registry_server=\"docker.io\",\n user_name=\"login\",\n password=\"apassword\",\n )],\n ),\n start_task=azure.batch.PoolStartTaskArgs(\n command_line=\"echo 'Hello World from $env'\",\n task_retry_maximum=1,\n wait_for_success=True,\n common_environment_properties={\n \"env\": \"TEST\",\n },\n user_identity=azure.batch.PoolStartTaskUserIdentityArgs(\n auto_user=azure.batch.PoolStartTaskUserIdentityAutoUserArgs(\n elevation_level=\"NonAdmin\",\n scope=\"Task\",\n ),\n ),\n ),\n certificates=[azure.batch.PoolCertificateArgs(\n id=example_certificate.id,\n store_location=\"CurrentUser\",\n visibilities=[\"StartTask\"],\n )])\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleAccount = new Azure.Storage.Account(\"exampleAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AccountTier = \"Standard\",\n AccountReplicationType = \"LRS\",\n });\n\n var exampleBatch_accountAccount = new Azure.Batch.Account(\"exampleBatch/accountAccount\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n PoolAllocationMode = \"BatchService\",\n StorageAccountId = exampleAccount.Id,\n StorageAccountAuthenticationMode = \"StorageKeys\",\n Tags = \n {\n { \"env\", \"test\" },\n },\n });\n\n var exampleCertificate = new Azure.Batch.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AccountName = exampleBatch / accountAccount.Name,\n BatchCertificate = ReadFileBase64(\"certificate.cer\"),\n Format = \"Cer\",\n Thumbprint = \"312d31a79fa0cef49c00f769afc2b73e9f4edf34\",\n ThumbprintAlgorithm = \"SHA1\",\n });\n\n var examplePool = new Azure.Batch.Pool(\"examplePool\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n AccountName = exampleBatch / accountAccount.Name,\n DisplayName = \"Test Acc Pool Auto\",\n VmSize = \"Standard_A1\",\n NodeAgentSkuId = \"batch.node.ubuntu 20.04\",\n AutoScale = new Azure.Batch.Inputs.PoolAutoScaleArgs\n {\n EvaluationInterval = \"PT15M\",\n Formula = @\" startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n\",\n },\n StorageImageReference = new Azure.Batch.Inputs.PoolStorageImageReferenceArgs\n {\n Publisher = \"microsoft-azure-batch\",\n Offer = \"ubuntu-server-container\",\n Sku = \"20-04-lts\",\n Version = \"latest\",\n },\n ContainerConfiguration = new Azure.Batch.Inputs.PoolContainerConfigurationArgs\n {\n Type = \"DockerCompatible\",\n ContainerRegistries = new[]\n {\n new Azure.Batch.Inputs.PoolContainerConfigurationContainerRegistryArgs\n {\n RegistryServer = \"docker.io\",\n UserName = \"login\",\n Password = \"apassword\",\n },\n },\n },\n StartTask = new Azure.Batch.Inputs.PoolStartTaskArgs\n {\n CommandLine = \"echo 'Hello World from $env'\",\n TaskRetryMaximum = 1,\n WaitForSuccess = true,\n CommonEnvironmentProperties = \n {\n { \"env\", \"TEST\" },\n },\n UserIdentity = new Azure.Batch.Inputs.PoolStartTaskUserIdentityArgs\n {\n AutoUser = new Azure.Batch.Inputs.PoolStartTaskUserIdentityAutoUserArgs\n {\n ElevationLevel = \"NonAdmin\",\n Scope = \"Task\",\n },\n },\n },\n Certificates = new[]\n {\n new Azure.Batch.Inputs.PoolCertificateArgs\n {\n Id = exampleCertificate.Id,\n StoreLocation = \"CurrentUser\",\n Visibilities = new[]\n {\n \"StartTask\",\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/batch\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleAccount, err := storage.NewAccount(ctx, \"exampleAccount\", \u0026storage.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAccountTier: pulumi.String(\"Standard\"),\n\t\t\tAccountReplicationType: pulumi.String(\"LRS\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewAccount(ctx, \"exampleBatch/accountAccount\", \u0026batch.AccountArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tPoolAllocationMode: pulumi.String(\"BatchService\"),\n\t\t\tStorageAccountId: exampleAccount.ID(),\n\t\t\tStorageAccountAuthenticationMode: pulumi.String(\"StorageKeys\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"env\": pulumi.String(\"test\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := batch.NewCertificate(ctx, \"exampleCertificate\", \u0026batch.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAccountName: exampleBatch / accountAccount.Name,\n\t\t\tCertificate: filebase64OrPanic(\"certificate.cer\"),\n\t\t\tFormat: pulumi.String(\"Cer\"),\n\t\t\tThumbprint: pulumi.String(\"312d31a79fa0cef49c00f769afc2b73e9f4edf34\"),\n\t\t\tThumbprintAlgorithm: pulumi.String(\"SHA1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = batch.NewPool(ctx, \"examplePool\", \u0026batch.PoolArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tAccountName: exampleBatch / accountAccount.Name,\n\t\t\tDisplayName: pulumi.String(\"Test Acc Pool Auto\"),\n\t\t\tVmSize: pulumi.String(\"Standard_A1\"),\n\t\t\tNodeAgentSkuId: pulumi.String(\"batch.node.ubuntu 20.04\"),\n\t\t\tAutoScale: \u0026batch.PoolAutoScaleArgs{\n\t\t\t\tEvaluationInterval: pulumi.String(\"PT15M\"),\n\t\t\t\tFormula: pulumi.String(` startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n`),\n\t\t\t},\n\t\t\tStorageImageReference: \u0026batch.PoolStorageImageReferenceArgs{\n\t\t\t\tPublisher: pulumi.String(\"microsoft-azure-batch\"),\n\t\t\t\tOffer: pulumi.String(\"ubuntu-server-container\"),\n\t\t\t\tSku: pulumi.String(\"20-04-lts\"),\n\t\t\t\tVersion: pulumi.String(\"latest\"),\n\t\t\t},\n\t\t\tContainerConfiguration: \u0026batch.PoolContainerConfigurationArgs{\n\t\t\t\tType: pulumi.String(\"DockerCompatible\"),\n\t\t\t\tContainerRegistries: batch.PoolContainerConfigurationContainerRegistryArray{\n\t\t\t\t\t\u0026batch.PoolContainerConfigurationContainerRegistryArgs{\n\t\t\t\t\t\tRegistryServer: pulumi.String(\"docker.io\"),\n\t\t\t\t\t\tUserName: pulumi.String(\"login\"),\n\t\t\t\t\t\tPassword: pulumi.String(\"apassword\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStartTask: \u0026batch.PoolStartTaskArgs{\n\t\t\t\tCommandLine: pulumi.String(\"echo 'Hello World from $env'\"),\n\t\t\t\tTaskRetryMaximum: pulumi.Int(1),\n\t\t\t\tWaitForSuccess: pulumi.Bool(true),\n\t\t\t\tCommonEnvironmentProperties: pulumi.StringMap{\n\t\t\t\t\t\"env\": pulumi.String(\"TEST\"),\n\t\t\t\t},\n\t\t\t\tUserIdentity: \u0026batch.PoolStartTaskUserIdentityArgs{\n\t\t\t\t\tAutoUser: \u0026batch.PoolStartTaskUserIdentityAutoUserArgs{\n\t\t\t\t\t\tElevationLevel: pulumi.String(\"NonAdmin\"),\n\t\t\t\t\t\tScope: pulumi.String(\"Task\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCertificates: batch.PoolCertificateArray{\n\t\t\t\t\u0026batch.PoolCertificateArgs{\n\t\t\t\t\tId: exampleCertificate.ID(),\n\t\t\t\t\tStoreLocation: pulumi.String(\"CurrentUser\"),\n\t\t\t\t\tVisibilities: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"StartTask\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.storage.Account;\nimport com.pulumi.azure.storage.AccountArgs;\nimport com.pulumi.azure.batch.Account;\nimport com.pulumi.azure.batch.AccountArgs;\nimport com.pulumi.azure.batch.Certificate;\nimport com.pulumi.azure.batch.CertificateArgs;\nimport com.pulumi.azure.batch.Pool;\nimport com.pulumi.azure.batch.PoolArgs;\nimport com.pulumi.azure.batch.inputs.PoolAutoScaleArgs;\nimport com.pulumi.azure.batch.inputs.PoolStorageImageReferenceArgs;\nimport com.pulumi.azure.batch.inputs.PoolContainerConfigurationArgs;\nimport com.pulumi.azure.batch.inputs.PoolStartTaskArgs;\nimport com.pulumi.azure.batch.inputs.PoolStartTaskUserIdentityArgs;\nimport com.pulumi.azure.batch.inputs.PoolStartTaskUserIdentityAutoUserArgs;\nimport com.pulumi.azure.batch.inputs.PoolCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleAccount = new Account(\"exampleAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .accountTier(\"Standard\")\n .accountReplicationType(\"LRS\")\n .build());\n\n var exampleBatch_accountAccount = new Account(\"exampleBatch/accountAccount\", AccountArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .poolAllocationMode(\"BatchService\")\n .storageAccountId(exampleAccount.id())\n .storageAccountAuthenticationMode(\"StorageKeys\")\n .tags(Map.of(\"env\", \"test\"))\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .accountName(exampleBatch / accountAccount.name())\n .certificate(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate.cer\"))))\n .format(\"Cer\")\n .thumbprint(\"312d31a79fa0cef49c00f769afc2b73e9f4edf34\")\n .thumbprintAlgorithm(\"SHA1\")\n .build());\n\n var examplePool = new Pool(\"examplePool\", PoolArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .accountName(exampleBatch / accountAccount.name())\n .displayName(\"Test Acc Pool Auto\")\n .vmSize(\"Standard_A1\")\n .nodeAgentSkuId(\"batch.node.ubuntu 20.04\")\n .autoScale(PoolAutoScaleArgs.builder()\n .evaluationInterval(\"PT15M\")\n .formula(\"\"\"\n startingNumberOfVMs = 1;\n maxNumberofVMs = 25;\n pendingTaskSamplePercent = $PendingTasks.GetSamplePercent(180 * TimeInterval_Second);\n pendingTaskSamples = pendingTaskSamplePercent \u003c 70 ? startingNumberOfVMs : avg($PendingTasks.GetSample(180 * TimeInterval_Second));\n $TargetDedicatedNodes=min(maxNumberofVMs, pendingTaskSamples);\n \"\"\")\n .build())\n .storageImageReference(PoolStorageImageReferenceArgs.builder()\n .publisher(\"microsoft-azure-batch\")\n .offer(\"ubuntu-server-container\")\n .sku(\"20-04-lts\")\n .version(\"latest\")\n .build())\n .containerConfiguration(PoolContainerConfigurationArgs.builder()\n .type(\"DockerCompatible\")\n .containerRegistries(PoolContainerConfigurationContainerRegistryArgs.builder()\n .registryServer(\"docker.io\")\n .userName(\"login\")\n .password(\"apassword\")\n .build())\n .build())\n .startTask(PoolStartTaskArgs.builder()\n .commandLine(\"echo 'Hello World from $env'\")\n .taskRetryMaximum(1)\n .waitForSuccess(true)\n .commonEnvironmentProperties(Map.of(\"env\", \"TEST\"))\n .userIdentity(PoolStartTaskUserIdentityArgs.builder()\n .autoUser(PoolStartTaskUserIdentityAutoUserArgs.builder()\n .elevationLevel(\"NonAdmin\")\n .scope(\"Task\")\n .build())\n .build())\n .build())\n .certificates(PoolCertificateArgs.builder()\n .id(exampleCertificate.id())\n .storeLocation(\"CurrentUser\")\n .visibilities(\"StartTask\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nBatch Pools can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:batch/pool:Pool example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myGroup1/providers/Microsoft.Batch/batchAccounts/myBatchAccount1/pools/myBatchPool1\n```\n\n ", "properties": { "accountName": { "type": "string", @@ -132144,7 +132144,7 @@ } }, "azure:cdn/frontdoorSecret:FrontdoorSecret": { - "description": "Manages a Front Door (standard/premium) Secret.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst frontdoor = azuread.getServicePrincipal({\n displayName: \"Microsoft.Azure.Cdn\",\n});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n softDeleteRetentionDays: 7,\n networkAcls: {\n defaultAction: \"Deny\",\n bypass: \"AzureServices\",\n ipRules: [\"10.0.0.0/24\"],\n },\n accessPolicies: [\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: frontdoor.then(frontdoor =\u003e frontdoor.objectId),\n secretPermissions: [\"Get\"],\n },\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\",\n ],\n secretPermissions: [\"Get\"],\n },\n ],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"my-certificate.pfx\"), 'binary').toString('base64'),\n },\n});\nconst exampleFrontdoorProfile = new azure.cdn.FrontdoorProfile(\"exampleFrontdoorProfile\", {\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Standard_AzureFrontDoor\",\n});\nconst exampleFrontdoorSecret = new azure.cdn.FrontdoorSecret(\"exampleFrontdoorSecret\", {\n cdnFrontdoorProfileId: exampleFrontdoorProfile.id,\n secret: {\n customerCertificates: [{\n keyVaultCertificateId: exampleCertificate.id,\n }],\n },\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\nimport pulumi_azuread as azuread\n\ncurrent = azure.core.get_client_config()\nfrontdoor = azuread.get_service_principal(display_name=\"Microsoft.Azure.Cdn\")\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n soft_delete_retention_days=7,\n network_acls=azure.keyvault.KeyVaultNetworkAclsArgs(\n default_action=\"Deny\",\n bypass=\"AzureServices\",\n ip_rules=[\"10.0.0.0/24\"],\n ),\n access_policies=[\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=frontdoor.object_id,\n secret_permissions=[\"Get\"],\n ),\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\",\n ],\n secret_permissions=[\"Get\"],\n ),\n ])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"my-certificate.pfx\"),\n ))\nexample_frontdoor_profile = azure.cdn.FrontdoorProfile(\"exampleFrontdoorProfile\",\n resource_group_name=example_resource_group.name,\n sku_name=\"Standard_AzureFrontDoor\")\nexample_frontdoor_secret = azure.cdn.FrontdoorSecret(\"exampleFrontdoorSecret\",\n cdn_frontdoor_profile_id=example_frontdoor_profile.id,\n secret=azure.cdn.FrontdoorSecretSecretArgs(\n customer_certificates=[azure.cdn.FrontdoorSecretSecretCustomerCertificateArgs(\n key_vault_certificate_id=example_certificate.id,\n )],\n ))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\nusing AzureAD = Pulumi.AzureAD;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var frontdoor = AzureAD.GetServicePrincipal.Invoke(new()\n {\n DisplayName = \"Microsoft.Azure.Cdn\",\n });\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n SoftDeleteRetentionDays = 7,\n NetworkAcls = new Azure.KeyVault.Inputs.KeyVaultNetworkAclsArgs\n {\n DefaultAction = \"Deny\",\n Bypass = \"AzureServices\",\n IpRules = new[]\n {\n \"10.0.0.0/24\",\n },\n },\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = frontdoor.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.ObjectId),\n SecretPermissions = new[]\n {\n \"Get\",\n },\n },\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"my-certificate.pfx\"),\n },\n });\n\n var exampleFrontdoorProfile = new Azure.Cdn.FrontdoorProfile(\"exampleFrontdoorProfile\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Standard_AzureFrontDoor\",\n });\n\n var exampleFrontdoorSecret = new Azure.Cdn.FrontdoorSecret(\"exampleFrontdoorSecret\", new()\n {\n CdnFrontdoorProfileId = exampleFrontdoorProfile.Id,\n Secret = new Azure.Cdn.Inputs.FrontdoorSecretSecretArgs\n {\n CustomerCertificates = new[]\n {\n new Azure.Cdn.Inputs.FrontdoorSecretSecretCustomerCertificateArgs\n {\n KeyVaultCertificateId = exampleCertificate.Id,\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cdn\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfrontdoor, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Microsoft.Azure.Cdn\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tSoftDeleteRetentionDays: pulumi.Int(7),\n\t\t\tNetworkAcls: \u0026keyvault.KeyVaultNetworkAclsArgs{\n\t\t\t\tDefaultAction: pulumi.String(\"Deny\"),\n\t\t\t\tBypass: pulumi.String(\"AzureServices\"),\n\t\t\t\tIpRules: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"10.0.0.0/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(frontdoor.ObjectId),\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"my-certificate.pfx\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleFrontdoorProfile, err := cdn.NewFrontdoorProfile(ctx, \"exampleFrontdoorProfile\", \u0026cdn.FrontdoorProfileArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Standard_AzureFrontDoor\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewFrontdoorSecret(ctx, \"exampleFrontdoorSecret\", \u0026cdn.FrontdoorSecretArgs{\n\t\t\tCdnFrontdoorProfileId: exampleFrontdoorProfile.ID(),\n\t\t\tSecret: \u0026cdn.FrontdoorSecretSecretArgs{\n\t\t\t\tCustomerCertificates: cdn.FrontdoorSecretSecretCustomerCertificateArray{\n\t\t\t\t\t\u0026cdn.FrontdoorSecretSecretCustomerCertificateArgs{\n\t\t\t\t\t\tKeyVaultCertificateId: exampleCertificate.ID(),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultNetworkAclsArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.cdn.FrontdoorProfile;\nimport com.pulumi.azure.cdn.FrontdoorProfileArgs;\nimport com.pulumi.azure.cdn.FrontdoorSecret;\nimport com.pulumi.azure.cdn.FrontdoorSecretArgs;\nimport com.pulumi.azure.cdn.inputs.FrontdoorSecretSecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n final var frontdoor = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .displayName(\"Microsoft.Azure.Cdn\")\n .build());\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .softDeleteRetentionDays(7)\n .networkAcls(KeyVaultNetworkAclsArgs.builder()\n .defaultAction(\"Deny\")\n .bypass(\"AzureServices\")\n .ipRules(\"10.0.0.0/24\")\n .build())\n .accessPolicies( \n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(frontdoor.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.objectId()))\n .secretPermissions(\"Get\")\n .build(),\n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\")\n .secretPermissions(\"Get\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"my-certificate.pfx\"))))\n .build())\n .build());\n\n var exampleFrontdoorProfile = new FrontdoorProfile(\"exampleFrontdoorProfile\", FrontdoorProfileArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Standard_AzureFrontDoor\")\n .build());\n\n var exampleFrontdoorSecret = new FrontdoorSecret(\"exampleFrontdoorSecret\", FrontdoorSecretArgs.builder() \n .cdnFrontdoorProfileId(exampleFrontdoorProfile.id())\n .secret(FrontdoorSecretSecretArgs.builder()\n .customerCertificates(FrontdoorSecretSecretCustomerCertificateArgs.builder()\n .keyVaultCertificateId(exampleCertificate.id())\n .build())\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nFront Door Secrets can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:cdn/frontdoorSecret:FrontdoorSecret example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Cdn/profiles/profile1/secrets/secrets1\n```\n\n ", + "description": "Manages a Front Door (standard/premium) Secret.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as azuread from \"@pulumi/azuread\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst frontdoor = azuread.getServicePrincipal({\n displayName: \"Microsoft.Azure.Cdn\",\n});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n softDeleteRetentionDays: 7,\n networkAcls: {\n defaultAction: \"Deny\",\n bypass: \"AzureServices\",\n ipRules: [\"10.0.0.0/24\"],\n },\n accessPolicies: [\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: frontdoor.then(frontdoor =\u003e frontdoor.objectId),\n secretPermissions: [\"Get\"],\n },\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\",\n ],\n secretPermissions: [\"Get\"],\n },\n ],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"my-certificate.pfx\", 'binary')).toString('base64'),\n },\n});\nconst exampleFrontdoorProfile = new azure.cdn.FrontdoorProfile(\"exampleFrontdoorProfile\", {\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Standard_AzureFrontDoor\",\n});\nconst exampleFrontdoorSecret = new azure.cdn.FrontdoorSecret(\"exampleFrontdoorSecret\", {\n cdnFrontdoorProfileId: exampleFrontdoorProfile.id,\n secret: {\n customerCertificates: [{\n keyVaultCertificateId: exampleCertificate.id,\n }],\n },\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\nimport pulumi_azuread as azuread\n\ncurrent = azure.core.get_client_config()\nfrontdoor = azuread.get_service_principal(display_name=\"Microsoft.Azure.Cdn\")\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n soft_delete_retention_days=7,\n network_acls=azure.keyvault.KeyVaultNetworkAclsArgs(\n default_action=\"Deny\",\n bypass=\"AzureServices\",\n ip_rules=[\"10.0.0.0/24\"],\n ),\n access_policies=[\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=frontdoor.object_id,\n secret_permissions=[\"Get\"],\n ),\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\",\n ],\n secret_permissions=[\"Get\"],\n ),\n ])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"my-certificate.pfx\"),\n ))\nexample_frontdoor_profile = azure.cdn.FrontdoorProfile(\"exampleFrontdoorProfile\",\n resource_group_name=example_resource_group.name,\n sku_name=\"Standard_AzureFrontDoor\")\nexample_frontdoor_secret = azure.cdn.FrontdoorSecret(\"exampleFrontdoorSecret\",\n cdn_frontdoor_profile_id=example_frontdoor_profile.id,\n secret=azure.cdn.FrontdoorSecretSecretArgs(\n customer_certificates=[azure.cdn.FrontdoorSecretSecretCustomerCertificateArgs(\n key_vault_certificate_id=example_certificate.id,\n )],\n ))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\nusing AzureAD = Pulumi.AzureAD;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var frontdoor = AzureAD.GetServicePrincipal.Invoke(new()\n {\n DisplayName = \"Microsoft.Azure.Cdn\",\n });\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n SoftDeleteRetentionDays = 7,\n NetworkAcls = new Azure.KeyVault.Inputs.KeyVaultNetworkAclsArgs\n {\n DefaultAction = \"Deny\",\n Bypass = \"AzureServices\",\n IpRules = new[]\n {\n \"10.0.0.0/24\",\n },\n },\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = frontdoor.Apply(getServicePrincipalResult =\u003e getServicePrincipalResult.ObjectId),\n SecretPermissions = new[]\n {\n \"Get\",\n },\n },\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"my-certificate.pfx\"),\n },\n });\n\n var exampleFrontdoorProfile = new Azure.Cdn.FrontdoorProfile(\"exampleFrontdoorProfile\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Standard_AzureFrontDoor\",\n });\n\n var exampleFrontdoorSecret = new Azure.Cdn.FrontdoorSecret(\"exampleFrontdoorSecret\", new()\n {\n CdnFrontdoorProfileId = exampleFrontdoorProfile.Id,\n Secret = new Azure.Cdn.Inputs.FrontdoorSecretSecretArgs\n {\n CustomerCertificates = new[]\n {\n new Azure.Cdn.Inputs.FrontdoorSecretSecretCustomerCertificateArgs\n {\n KeyVaultCertificateId = exampleCertificate.Id,\n },\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/cdn\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azuread/sdk/v5/go/azuread\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tfrontdoor, err := azuread.LookupServicePrincipal(ctx, \u0026azuread.LookupServicePrincipalArgs{\n\t\t\tDisplayName: pulumi.StringRef(\"Microsoft.Azure.Cdn\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tSoftDeleteRetentionDays: pulumi.Int(7),\n\t\t\tNetworkAcls: \u0026keyvault.KeyVaultNetworkAclsArgs{\n\t\t\t\tDefaultAction: pulumi.String(\"Deny\"),\n\t\t\t\tBypass: pulumi.String(\"AzureServices\"),\n\t\t\t\tIpRules: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"10.0.0.0/24\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(frontdoor.ObjectId),\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"my-certificate.pfx\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleFrontdoorProfile, err := cdn.NewFrontdoorProfile(ctx, \"exampleFrontdoorProfile\", \u0026cdn.FrontdoorProfileArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Standard_AzureFrontDoor\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = cdn.NewFrontdoorSecret(ctx, \"exampleFrontdoorSecret\", \u0026cdn.FrontdoorSecretArgs{\n\t\t\tCdnFrontdoorProfileId: exampleFrontdoorProfile.ID(),\n\t\t\tSecret: \u0026cdn.FrontdoorSecretSecretArgs{\n\t\t\t\tCustomerCertificates: cdn.FrontdoorSecretSecretCustomerCertificateArray{\n\t\t\t\t\t\u0026cdn.FrontdoorSecretSecretCustomerCertificateArgs{\n\t\t\t\t\t\tKeyVaultCertificateId: exampleCertificate.ID(),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azuread.AzureadFunctions;\nimport com.pulumi.azuread.inputs.GetServicePrincipalArgs;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultNetworkAclsArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.cdn.FrontdoorProfile;\nimport com.pulumi.azure.cdn.FrontdoorProfileArgs;\nimport com.pulumi.azure.cdn.FrontdoorSecret;\nimport com.pulumi.azure.cdn.FrontdoorSecretArgs;\nimport com.pulumi.azure.cdn.inputs.FrontdoorSecretSecretArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n final var frontdoor = AzureadFunctions.getServicePrincipal(GetServicePrincipalArgs.builder()\n .displayName(\"Microsoft.Azure.Cdn\")\n .build());\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .softDeleteRetentionDays(7)\n .networkAcls(KeyVaultNetworkAclsArgs.builder()\n .defaultAction(\"Deny\")\n .bypass(\"AzureServices\")\n .ipRules(\"10.0.0.0/24\")\n .build())\n .accessPolicies( \n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(frontdoor.applyValue(getServicePrincipalResult -\u003e getServicePrincipalResult.objectId()))\n .secretPermissions(\"Get\")\n .build(),\n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Get\",\n \"Import\",\n \"Delete\",\n \"Purge\")\n .secretPermissions(\"Get\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"my-certificate.pfx\"))))\n .build())\n .build());\n\n var exampleFrontdoorProfile = new FrontdoorProfile(\"exampleFrontdoorProfile\", FrontdoorProfileArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Standard_AzureFrontDoor\")\n .build());\n\n var exampleFrontdoorSecret = new FrontdoorSecret(\"exampleFrontdoorSecret\", FrontdoorSecretArgs.builder() \n .cdnFrontdoorProfileId(exampleFrontdoorProfile.id())\n .secret(FrontdoorSecretSecretArgs.builder()\n .customerCertificates(FrontdoorSecretSecretCustomerCertificateArgs.builder()\n .keyVaultCertificateId(exampleCertificate.id())\n .build())\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nFront Door Secrets can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:cdn/frontdoorSecret:FrontdoorSecret example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.Cdn/profiles/profile1/secrets/secrets1\n```\n\n ", "properties": { "cdnFrontdoorProfileId": { "type": "string", @@ -182780,7 +182780,7 @@ } }, "azure:iot/certificate:Certificate": { - "description": "Manages an IotHub Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIoTHub = new azure.iot.IoTHub(\"exampleIoTHub\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n sku: {\n name: \"B1\",\n capacity: 1,\n },\n});\nconst exampleCertificate = new azure.iot.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n iothubName: exampleIoTHub.name,\n isVerified: true,\n certificateContent: Buffer.from(fs.readFileSync(\"example.cer\"), 'binary').toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_io_t_hub = azure.iot.IoTHub(\"exampleIoTHub\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n sku=azure.iot.IoTHubSkuArgs(\n name=\"B1\",\n capacity=1,\n ))\nexample_certificate = azure.iot.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n iothub_name=example_io_t_hub.name,\n is_verified=True,\n certificate_content=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.cer\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIoTHub = new Azure.Iot.IoTHub(\"exampleIoTHub\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Sku = new Azure.Iot.Inputs.IoTHubSkuArgs\n {\n Name = \"B1\",\n Capacity = 1,\n },\n });\n\n var exampleCertificate = new Azure.Iot.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IothubName = exampleIoTHub.Name,\n IsVerified = true,\n CertificateContent = ReadFileBase64(\"example.cer\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/iot\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIoTHub, err := iot.NewIoTHub(ctx, \"exampleIoTHub\", \u0026iot.IoTHubArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSku: \u0026iot.IoTHubSkuArgs{\n\t\t\t\tName: pulumi.String(\"B1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = iot.NewCertificate(ctx, \"exampleCertificate\", \u0026iot.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIothubName: exampleIoTHub.Name,\n\t\t\tIsVerified: pulumi.Bool(true),\n\t\t\tCertificateContent: filebase64OrPanic(\"example.cer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.iot.IoTHub;\nimport com.pulumi.azure.iot.IoTHubArgs;\nimport com.pulumi.azure.iot.inputs.IoTHubSkuArgs;\nimport com.pulumi.azure.iot.Certificate;\nimport com.pulumi.azure.iot.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIoTHub = new IoTHub(\"exampleIoTHub\", IoTHubArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .sku(IoTHubSkuArgs.builder()\n .name(\"B1\")\n .capacity(\"1\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .iothubName(exampleIoTHub.name())\n .isVerified(true)\n .certificateContent(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.cer\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIoTHub Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:iot/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Devices/iotHubs/example/certificates/example\n```\n\n ", + "description": "Manages an IotHub Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIoTHub = new azure.iot.IoTHub(\"exampleIoTHub\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n sku: {\n name: \"B1\",\n capacity: 1,\n },\n});\nconst exampleCertificate = new azure.iot.Certificate(\"exampleCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n iothubName: exampleIoTHub.name,\n isVerified: true,\n certificateContent: Buffer.from(fs.readFileSync(\"example.cer\", 'binary')).toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_io_t_hub = azure.iot.IoTHub(\"exampleIoTHub\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n sku=azure.iot.IoTHubSkuArgs(\n name=\"B1\",\n capacity=1,\n ))\nexample_certificate = azure.iot.Certificate(\"exampleCertificate\",\n resource_group_name=example_resource_group.name,\n iothub_name=example_io_t_hub.name,\n is_verified=True,\n certificate_content=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.cer\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIoTHub = new Azure.Iot.IoTHub(\"exampleIoTHub\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Sku = new Azure.Iot.Inputs.IoTHubSkuArgs\n {\n Name = \"B1\",\n Capacity = 1,\n },\n });\n\n var exampleCertificate = new Azure.Iot.Certificate(\"exampleCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IothubName = exampleIoTHub.Name,\n IsVerified = true,\n CertificateContent = ReadFileBase64(\"example.cer\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/iot\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIoTHub, err := iot.NewIoTHub(ctx, \"exampleIoTHub\", \u0026iot.IoTHubArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSku: \u0026iot.IoTHubSkuArgs{\n\t\t\t\tName: pulumi.String(\"B1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = iot.NewCertificate(ctx, \"exampleCertificate\", \u0026iot.CertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIothubName: exampleIoTHub.Name,\n\t\t\tIsVerified: pulumi.Bool(true),\n\t\t\tCertificateContent: filebase64OrPanic(\"example.cer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.iot.IoTHub;\nimport com.pulumi.azure.iot.IoTHubArgs;\nimport com.pulumi.azure.iot.inputs.IoTHubSkuArgs;\nimport com.pulumi.azure.iot.Certificate;\nimport com.pulumi.azure.iot.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIoTHub = new IoTHub(\"exampleIoTHub\", IoTHubArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .sku(IoTHubSkuArgs.builder()\n .name(\"B1\")\n .capacity(\"1\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .iothubName(exampleIoTHub.name())\n .isVerified(true)\n .certificateContent(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.cer\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIoTHub Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:iot/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Devices/iotHubs/example/certificates/example\n```\n\n ", "properties": { "certificateContent": { "type": "string", @@ -184599,7 +184599,7 @@ } }, "azure:iot/iotHubCertificate:IotHubCertificate": { - "description": "Manages an IotHub Device Provisioning Service Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIotHubDps = new azure.iot.IotHubDps(\"exampleIotHubDps\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n sku: {\n name: \"S1\",\n capacity: 1,\n },\n});\nconst exampleIotHubCertificate = new azure.iot.IotHubCertificate(\"exampleIotHubCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n iotDpsName: exampleIotHubDps.name,\n certificateContent: Buffer.from(fs.readFileSync(\"example.cer\"), 'binary').toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_iot_hub_dps = azure.iot.IotHubDps(\"exampleIotHubDps\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n sku=azure.iot.IotHubDpsSkuArgs(\n name=\"S1\",\n capacity=1,\n ))\nexample_iot_hub_certificate = azure.iot.IotHubCertificate(\"exampleIotHubCertificate\",\n resource_group_name=example_resource_group.name,\n iot_dps_name=example_iot_hub_dps.name,\n certificate_content=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.cer\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIotHubDps = new Azure.Iot.IotHubDps(\"exampleIotHubDps\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Sku = new Azure.Iot.Inputs.IotHubDpsSkuArgs\n {\n Name = \"S1\",\n Capacity = 1,\n },\n });\n\n var exampleIotHubCertificate = new Azure.Iot.IotHubCertificate(\"exampleIotHubCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IotDpsName = exampleIotHubDps.Name,\n CertificateContent = ReadFileBase64(\"example.cer\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/iot\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIotHubDps, err := iot.NewIotHubDps(ctx, \"exampleIotHubDps\", \u0026iot.IotHubDpsArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSku: \u0026iot.IotHubDpsSkuArgs{\n\t\t\t\tName: pulumi.String(\"S1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = iot.NewIotHubCertificate(ctx, \"exampleIotHubCertificate\", \u0026iot.IotHubCertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIotDpsName: exampleIotHubDps.Name,\n\t\t\tCertificateContent: filebase64OrPanic(\"example.cer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.iot.IotHubDps;\nimport com.pulumi.azure.iot.IotHubDpsArgs;\nimport com.pulumi.azure.iot.inputs.IotHubDpsSkuArgs;\nimport com.pulumi.azure.iot.IotHubCertificate;\nimport com.pulumi.azure.iot.IotHubCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIotHubDps = new IotHubDps(\"exampleIotHubDps\", IotHubDpsArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .sku(IotHubDpsSkuArgs.builder()\n .name(\"S1\")\n .capacity(\"1\")\n .build())\n .build());\n\n var exampleIotHubCertificate = new IotHubCertificate(\"exampleIotHubCertificate\", IotHubCertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .iotDpsName(exampleIotHubDps.name())\n .certificateContent(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.cer\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIoTHub Device Provisioning Service Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:iot/iotHubCertificate:IotHubCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Devices/provisioningServices/example/certificates/example\n```\n\n ", + "description": "Manages an IotHub Device Provisioning Service Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIotHubDps = new azure.iot.IotHubDps(\"exampleIotHubDps\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n sku: {\n name: \"S1\",\n capacity: 1,\n },\n});\nconst exampleIotHubCertificate = new azure.iot.IotHubCertificate(\"exampleIotHubCertificate\", {\n resourceGroupName: exampleResourceGroup.name,\n iotDpsName: exampleIotHubDps.name,\n certificateContent: Buffer.from(fs.readFileSync(\"example.cer\", 'binary')).toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_iot_hub_dps = azure.iot.IotHubDps(\"exampleIotHubDps\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n sku=azure.iot.IotHubDpsSkuArgs(\n name=\"S1\",\n capacity=1,\n ))\nexample_iot_hub_certificate = azure.iot.IotHubCertificate(\"exampleIotHubCertificate\",\n resource_group_name=example_resource_group.name,\n iot_dps_name=example_iot_hub_dps.name,\n certificate_content=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"example.cer\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIotHubDps = new Azure.Iot.IotHubDps(\"exampleIotHubDps\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n Sku = new Azure.Iot.Inputs.IotHubDpsSkuArgs\n {\n Name = \"S1\",\n Capacity = 1,\n },\n });\n\n var exampleIotHubCertificate = new Azure.Iot.IotHubCertificate(\"exampleIotHubCertificate\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IotDpsName = exampleIotHubDps.Name,\n CertificateContent = ReadFileBase64(\"example.cer\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/iot\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIotHubDps, err := iot.NewIotHubDps(ctx, \"exampleIotHubDps\", \u0026iot.IotHubDpsArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tSku: \u0026iot.IotHubDpsSkuArgs{\n\t\t\t\tName: pulumi.String(\"S1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = iot.NewIotHubCertificate(ctx, \"exampleIotHubCertificate\", \u0026iot.IotHubCertificateArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIotDpsName: exampleIotHubDps.Name,\n\t\t\tCertificateContent: filebase64OrPanic(\"example.cer\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.iot.IotHubDps;\nimport com.pulumi.azure.iot.IotHubDpsArgs;\nimport com.pulumi.azure.iot.inputs.IotHubDpsSkuArgs;\nimport com.pulumi.azure.iot.IotHubCertificate;\nimport com.pulumi.azure.iot.IotHubCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIotHubDps = new IotHubDps(\"exampleIotHubDps\", IotHubDpsArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .sku(IotHubDpsSkuArgs.builder()\n .name(\"S1\")\n .capacity(\"1\")\n .build())\n .build());\n\n var exampleIotHubCertificate = new IotHubCertificate(\"exampleIotHubCertificate\", IotHubCertificateArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .iotDpsName(exampleIotHubDps.name())\n .certificateContent(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"example.cer\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nIoTHub Device Provisioning Service Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:iot/iotHubCertificate:IotHubCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Devices/provisioningServices/example/certificates/example\n```\n\n ", "properties": { "certificateContent": { "type": "string", @@ -187041,7 +187041,7 @@ } }, "azure:keyvault/certifiate:Certifiate": { - "description": "Manages a Key Vault Certificate.\n\n\u003c\u003c\u003c\u003c\u003c\u003c\u003c HEAD\n\u003e **Note:** The Azure Provider includes a Feature Toggle which will purge a Key Vault Certificate resource on destroy, rather than the default soft-delete. See `purge_soft_deleted_certificates_on_destroy` for more information. \n\n=======\n\u003e\u003e\u003e\u003e\u003e\u003e\u003e 8d78c87098 (Update-documentation)\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Importing A PFX)\n\n\u003e **Note:** this example assumed the PFX file is located in the same directory at `certificate-to-import.pfx`.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\"), 'binary').toString('base64'),\n password: \"\",\n },\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% example %}}\n### Generating a new certificate\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"standard\",\n softDeleteRetentionDays: 7,\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: true,\n },\n lifetimeActions: [{\n action: {\n actionType: \"AutoRenew\",\n },\n trigger: {\n daysBeforeExpiry: 30,\n },\n }],\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n x509CertificateProperties: {\n extendedKeyUsages: [\"1.3.6.1.5.5.7.3.1\"],\n keyUsages: [\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subjectAlternativeNames: {\n dnsNames: [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n subject: \"CN=hello-world\",\n validityInMonths: 12,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"standard\",\n soft_delete_retention_days=7,\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate_policy=azure.keyvault.CertificateCertificatePolicyArgs(\n issuer_parameters=azure.keyvault.CertificateCertificatePolicyIssuerParametersArgs(\n name=\"Self\",\n ),\n key_properties=azure.keyvault.CertificateCertificatePolicyKeyPropertiesArgs(\n exportable=True,\n key_size=2048,\n key_type=\"RSA\",\n reuse_key=True,\n ),\n lifetime_actions=[azure.keyvault.CertificateCertificatePolicyLifetimeActionArgs(\n action=azure.keyvault.CertificateCertificatePolicyLifetimeActionActionArgs(\n action_type=\"AutoRenew\",\n ),\n trigger=azure.keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs(\n days_before_expiry=30,\n ),\n )],\n secret_properties=azure.keyvault.CertificateCertificatePolicySecretPropertiesArgs(\n content_type=\"application/x-pkcs12\",\n ),\n x509_certificate_properties=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs(\n extended_key_usages=[\"1.3.6.1.5.5.7.3.1\"],\n key_usages=[\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subject_alternative_names=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs(\n dns_names=[\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n ),\n subject=\"CN=hello-world\",\n validity_in_months=12,\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"standard\",\n SoftDeleteRetentionDays = 7,\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = true,\n },\n LifetimeActions = new[]\n {\n new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionArgs\n {\n Action = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionActionArgs\n {\n ActionType = \"AutoRenew\",\n },\n Trigger = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionTriggerArgs\n {\n DaysBeforeExpiry = 30,\n },\n },\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n X509CertificateProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs\n {\n ExtendedKeyUsages = new[]\n {\n \"1.3.6.1.5.5.7.3.1\",\n },\n KeyUsages = new[]\n {\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n },\n SubjectAlternativeNames = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs\n {\n DnsNames = new[]\n {\n \"internal.contoso.com\",\n \"domain.hello.world\",\n },\n },\n Subject = \"CN=hello-world\",\n ValidityInMonths = 12,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"standard\"),\n\t\t\tSoftDeleteRetentionDays: pulumi.Int(7),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tLifetimeActions: keyvault.CertificateCertificatePolicyLifetimeActionArray{\n\t\t\t\t\t\u0026keyvault.CertificateCertificatePolicyLifetimeActionArgs{\n\t\t\t\t\t\tAction: \u0026keyvault.CertificateCertificatePolicyLifetimeActionActionArgs{\n\t\t\t\t\t\t\tActionType: pulumi.String(\"AutoRenew\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTrigger: \u0026keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs{\n\t\t\t\t\t\t\tDaysBeforeExpiry: pulumi.Int(30),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t\tX509CertificateProperties: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs{\n\t\t\t\t\tExtendedKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.3.6.1.5.5.7.3.1\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"cRLSign\"),\n\t\t\t\t\t\tpulumi.String(\"dataEncipherment\"),\n\t\t\t\t\t\tpulumi.String(\"digitalSignature\"),\n\t\t\t\t\t\tpulumi.String(\"keyAgreement\"),\n\t\t\t\t\t\tpulumi.String(\"keyCertSign\"),\n\t\t\t\t\t\tpulumi.String(\"keyEncipherment\"),\n\t\t\t\t\t},\n\t\t\t\t\tSubjectAlternativeNames: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs{\n\t\t\t\t\t\tDnsNames: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"internal.contoso.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"domain.hello.world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSubject: pulumi.String(\"CN=hello-world\"),\n\t\t\t\t\tValidityInMonths: pulumi.Int(12),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"standard\")\n .softDeleteRetentionDays(7)\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(true)\n .build())\n .lifetimeActions(CertificateCertificatePolicyLifetimeActionArgs.builder()\n .action(CertificateCertificatePolicyLifetimeActionActionArgs.builder()\n .actionType(\"AutoRenew\")\n .build())\n .trigger(CertificateCertificatePolicyLifetimeActionTriggerArgs.builder()\n .daysBeforeExpiry(30)\n .build())\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .x509CertificateProperties(CertificateCertificatePolicyX509CertificatePropertiesArgs.builder()\n .extendedKeyUsages(\"1.3.6.1.5.5.7.3.1\")\n .keyUsages( \n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\")\n .subjectAlternativeNames(CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs.builder()\n .dnsNames( \n \"internal.contoso.com\",\n \"domain.hello.world\")\n .build())\n .subject(\"CN=hello-world\")\n .validityInMonths(12)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleKeyVault:\n type: azure:keyvault:KeyVault\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n tenantId: ${current.tenantId}\n skuName: standard\n softDeleteRetentionDays: 7\n accessPolicies:\n - tenantId: ${current.tenantId}\n objectId: ${current.objectId}\n certificatePermissions:\n - Create\n - Delete\n - DeleteIssuers\n - Get\n - GetIssuers\n - Import\n - List\n - ListIssuers\n - ManageContacts\n - ManageIssuers\n - Purge\n - SetIssuers\n - Update\n keyPermissions:\n - Backup\n - Create\n - Decrypt\n - Delete\n - Encrypt\n - Get\n - Import\n - List\n - Purge\n - Recover\n - Restore\n - Sign\n - UnwrapKey\n - Update\n - Verify\n - WrapKey\n secretPermissions:\n - Backup\n - Delete\n - Get\n - List\n - Purge\n - Recover\n - Restore\n - Set\n exampleCertificate:\n type: azure:keyvault:Certificate\n properties:\n keyVaultId: ${exampleKeyVault.id}\n certificatePolicy:\n issuerParameters:\n name: Self\n keyProperties:\n exportable: true\n keySize: 2048\n keyType: RSA\n reuseKey: true\n lifetimeActions:\n - action:\n actionType: AutoRenew\n trigger:\n daysBeforeExpiry: 30\n secretProperties:\n contentType: application/x-pkcs12\n x509CertificateProperties:\n extendedKeyUsages:\n - 1.3.6.1.5.5.7.3.1\n keyUsages:\n - cRLSign\n - dataEncipherment\n - digitalSignature\n - keyAgreement\n - keyCertSign\n - keyEncipherment\n subjectAlternativeNames:\n dnsNames:\n - internal.contoso.com\n - domain.hello.world\n subject: CN=hello-world\n validityInMonths: 12\nvariables:\n current:\n fn::invoke:\n Function: azure:core:getClientConfig\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKey Vault Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:keyvault/certifiate:Certifiate example \"https://example-keyvault.vault.azure.net/certificates/example/fdf067c93bbb4b22bff4d8b7a9a56217\"\n```\n\n ", + "description": "Manages a Key Vault Certificate.\n\n\u003c\u003c\u003c\u003c\u003c\u003c\u003c HEAD\n\u003e **Note:** The Azure Provider includes a Feature Toggle which will purge a Key Vault Certificate resource on destroy, rather than the default soft-delete. See `purge_soft_deleted_certificates_on_destroy` for more information. \n\n=======\n\u003e\u003e\u003e\u003e\u003e\u003e\u003e 8d78c87098 (Update-documentation)\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Importing A PFX)\n\n\u003e **Note:** this example assumed the PFX file is located in the same directory at `certificate-to-import.pfx`.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\", 'binary')).toString('base64'),\n password: \"\",\n },\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% example %}}\n### Generating a new certificate\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"standard\",\n softDeleteRetentionDays: 7,\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: true,\n },\n lifetimeActions: [{\n action: {\n actionType: \"AutoRenew\",\n },\n trigger: {\n daysBeforeExpiry: 30,\n },\n }],\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n x509CertificateProperties: {\n extendedKeyUsages: [\"1.3.6.1.5.5.7.3.1\"],\n keyUsages: [\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subjectAlternativeNames: {\n dnsNames: [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n subject: \"CN=hello-world\",\n validityInMonths: 12,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"standard\",\n soft_delete_retention_days=7,\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate_policy=azure.keyvault.CertificateCertificatePolicyArgs(\n issuer_parameters=azure.keyvault.CertificateCertificatePolicyIssuerParametersArgs(\n name=\"Self\",\n ),\n key_properties=azure.keyvault.CertificateCertificatePolicyKeyPropertiesArgs(\n exportable=True,\n key_size=2048,\n key_type=\"RSA\",\n reuse_key=True,\n ),\n lifetime_actions=[azure.keyvault.CertificateCertificatePolicyLifetimeActionArgs(\n action=azure.keyvault.CertificateCertificatePolicyLifetimeActionActionArgs(\n action_type=\"AutoRenew\",\n ),\n trigger=azure.keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs(\n days_before_expiry=30,\n ),\n )],\n secret_properties=azure.keyvault.CertificateCertificatePolicySecretPropertiesArgs(\n content_type=\"application/x-pkcs12\",\n ),\n x509_certificate_properties=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs(\n extended_key_usages=[\"1.3.6.1.5.5.7.3.1\"],\n key_usages=[\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subject_alternative_names=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs(\n dns_names=[\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n ),\n subject=\"CN=hello-world\",\n validity_in_months=12,\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"standard\",\n SoftDeleteRetentionDays = 7,\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = true,\n },\n LifetimeActions = new[]\n {\n new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionArgs\n {\n Action = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionActionArgs\n {\n ActionType = \"AutoRenew\",\n },\n Trigger = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionTriggerArgs\n {\n DaysBeforeExpiry = 30,\n },\n },\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n X509CertificateProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs\n {\n ExtendedKeyUsages = new[]\n {\n \"1.3.6.1.5.5.7.3.1\",\n },\n KeyUsages = new[]\n {\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n },\n SubjectAlternativeNames = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs\n {\n DnsNames = new[]\n {\n \"internal.contoso.com\",\n \"domain.hello.world\",\n },\n },\n Subject = \"CN=hello-world\",\n ValidityInMonths = 12,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"standard\"),\n\t\t\tSoftDeleteRetentionDays: pulumi.Int(7),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tLifetimeActions: keyvault.CertificateCertificatePolicyLifetimeActionArray{\n\t\t\t\t\t\u0026keyvault.CertificateCertificatePolicyLifetimeActionArgs{\n\t\t\t\t\t\tAction: \u0026keyvault.CertificateCertificatePolicyLifetimeActionActionArgs{\n\t\t\t\t\t\t\tActionType: pulumi.String(\"AutoRenew\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTrigger: \u0026keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs{\n\t\t\t\t\t\t\tDaysBeforeExpiry: pulumi.Int(30),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t\tX509CertificateProperties: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs{\n\t\t\t\t\tExtendedKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.3.6.1.5.5.7.3.1\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"cRLSign\"),\n\t\t\t\t\t\tpulumi.String(\"dataEncipherment\"),\n\t\t\t\t\t\tpulumi.String(\"digitalSignature\"),\n\t\t\t\t\t\tpulumi.String(\"keyAgreement\"),\n\t\t\t\t\t\tpulumi.String(\"keyCertSign\"),\n\t\t\t\t\t\tpulumi.String(\"keyEncipherment\"),\n\t\t\t\t\t},\n\t\t\t\t\tSubjectAlternativeNames: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs{\n\t\t\t\t\t\tDnsNames: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"internal.contoso.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"domain.hello.world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSubject: pulumi.String(\"CN=hello-world\"),\n\t\t\t\t\tValidityInMonths: pulumi.Int(12),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"standard\")\n .softDeleteRetentionDays(7)\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(true)\n .build())\n .lifetimeActions(CertificateCertificatePolicyLifetimeActionArgs.builder()\n .action(CertificateCertificatePolicyLifetimeActionActionArgs.builder()\n .actionType(\"AutoRenew\")\n .build())\n .trigger(CertificateCertificatePolicyLifetimeActionTriggerArgs.builder()\n .daysBeforeExpiry(30)\n .build())\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .x509CertificateProperties(CertificateCertificatePolicyX509CertificatePropertiesArgs.builder()\n .extendedKeyUsages(\"1.3.6.1.5.5.7.3.1\")\n .keyUsages( \n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\")\n .subjectAlternativeNames(CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs.builder()\n .dnsNames( \n \"internal.contoso.com\",\n \"domain.hello.world\")\n .build())\n .subject(\"CN=hello-world\")\n .validityInMonths(12)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleKeyVault:\n type: azure:keyvault:KeyVault\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n tenantId: ${current.tenantId}\n skuName: standard\n softDeleteRetentionDays: 7\n accessPolicies:\n - tenantId: ${current.tenantId}\n objectId: ${current.objectId}\n certificatePermissions:\n - Create\n - Delete\n - DeleteIssuers\n - Get\n - GetIssuers\n - Import\n - List\n - ListIssuers\n - ManageContacts\n - ManageIssuers\n - Purge\n - SetIssuers\n - Update\n keyPermissions:\n - Backup\n - Create\n - Decrypt\n - Delete\n - Encrypt\n - Get\n - Import\n - List\n - Purge\n - Recover\n - Restore\n - Sign\n - UnwrapKey\n - Update\n - Verify\n - WrapKey\n secretPermissions:\n - Backup\n - Delete\n - Get\n - List\n - Purge\n - Recover\n - Restore\n - Set\n exampleCertificate:\n type: azure:keyvault:Certificate\n properties:\n keyVaultId: ${exampleKeyVault.id}\n certificatePolicy:\n issuerParameters:\n name: Self\n keyProperties:\n exportable: true\n keySize: 2048\n keyType: RSA\n reuseKey: true\n lifetimeActions:\n - action:\n actionType: AutoRenew\n trigger:\n daysBeforeExpiry: 30\n secretProperties:\n contentType: application/x-pkcs12\n x509CertificateProperties:\n extendedKeyUsages:\n - 1.3.6.1.5.5.7.3.1\n keyUsages:\n - cRLSign\n - dataEncipherment\n - digitalSignature\n - keyAgreement\n - keyCertSign\n - keyEncipherment\n subjectAlternativeNames:\n dnsNames:\n - internal.contoso.com\n - domain.hello.world\n subject: CN=hello-world\n validityInMonths: 12\nvariables:\n current:\n fn::invoke:\n Function: azure:core:getClientConfig\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKey Vault Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:keyvault/certifiate:Certifiate example \"https://example-keyvault.vault.azure.net/certificates/example/fdf067c93bbb4b22bff4d8b7a9a56217\"\n```\n\n ", "properties": { "certificate": { "$ref": "#/types/azure:keyvault/CertifiateCertificate:CertifiateCertificate", @@ -187247,7 +187247,7 @@ "deprecationMessage": "azure.keyvault.Certifiate has been deprecated in favor of azure.keyvault.Certificate" }, "azure:keyvault/certificate:Certificate": { - "description": "Manages a Key Vault Certificate.\n\n\u003c\u003c\u003c\u003c\u003c\u003c\u003c HEAD\n\u003e **Note:** The Azure Provider includes a Feature Toggle which will purge a Key Vault Certificate resource on destroy, rather than the default soft-delete. See `purge_soft_deleted_certificates_on_destroy` for more information. \n\n=======\n\u003e\u003e\u003e\u003e\u003e\u003e\u003e 8d78c87098 (Update-documentation)\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Importing A PFX)\n\n\u003e **Note:** this example assumed the PFX file is located in the same directory at `certificate-to-import.pfx`.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\"), 'binary').toString('base64'),\n password: \"\",\n },\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% example %}}\n### Generating a new certificate\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"standard\",\n softDeleteRetentionDays: 7,\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: true,\n },\n lifetimeActions: [{\n action: {\n actionType: \"AutoRenew\",\n },\n trigger: {\n daysBeforeExpiry: 30,\n },\n }],\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n x509CertificateProperties: {\n extendedKeyUsages: [\"1.3.6.1.5.5.7.3.1\"],\n keyUsages: [\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subjectAlternativeNames: {\n dnsNames: [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n subject: \"CN=hello-world\",\n validityInMonths: 12,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"standard\",\n soft_delete_retention_days=7,\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate_policy=azure.keyvault.CertificateCertificatePolicyArgs(\n issuer_parameters=azure.keyvault.CertificateCertificatePolicyIssuerParametersArgs(\n name=\"Self\",\n ),\n key_properties=azure.keyvault.CertificateCertificatePolicyKeyPropertiesArgs(\n exportable=True,\n key_size=2048,\n key_type=\"RSA\",\n reuse_key=True,\n ),\n lifetime_actions=[azure.keyvault.CertificateCertificatePolicyLifetimeActionArgs(\n action=azure.keyvault.CertificateCertificatePolicyLifetimeActionActionArgs(\n action_type=\"AutoRenew\",\n ),\n trigger=azure.keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs(\n days_before_expiry=30,\n ),\n )],\n secret_properties=azure.keyvault.CertificateCertificatePolicySecretPropertiesArgs(\n content_type=\"application/x-pkcs12\",\n ),\n x509_certificate_properties=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs(\n extended_key_usages=[\"1.3.6.1.5.5.7.3.1\"],\n key_usages=[\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subject_alternative_names=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs(\n dns_names=[\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n ),\n subject=\"CN=hello-world\",\n validity_in_months=12,\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"standard\",\n SoftDeleteRetentionDays = 7,\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = true,\n },\n LifetimeActions = new[]\n {\n new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionArgs\n {\n Action = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionActionArgs\n {\n ActionType = \"AutoRenew\",\n },\n Trigger = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionTriggerArgs\n {\n DaysBeforeExpiry = 30,\n },\n },\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n X509CertificateProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs\n {\n ExtendedKeyUsages = new[]\n {\n \"1.3.6.1.5.5.7.3.1\",\n },\n KeyUsages = new[]\n {\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n },\n SubjectAlternativeNames = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs\n {\n DnsNames = new[]\n {\n \"internal.contoso.com\",\n \"domain.hello.world\",\n },\n },\n Subject = \"CN=hello-world\",\n ValidityInMonths = 12,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"standard\"),\n\t\t\tSoftDeleteRetentionDays: pulumi.Int(7),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tLifetimeActions: keyvault.CertificateCertificatePolicyLifetimeActionArray{\n\t\t\t\t\t\u0026keyvault.CertificateCertificatePolicyLifetimeActionArgs{\n\t\t\t\t\t\tAction: \u0026keyvault.CertificateCertificatePolicyLifetimeActionActionArgs{\n\t\t\t\t\t\t\tActionType: pulumi.String(\"AutoRenew\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTrigger: \u0026keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs{\n\t\t\t\t\t\t\tDaysBeforeExpiry: pulumi.Int(30),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t\tX509CertificateProperties: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs{\n\t\t\t\t\tExtendedKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.3.6.1.5.5.7.3.1\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"cRLSign\"),\n\t\t\t\t\t\tpulumi.String(\"dataEncipherment\"),\n\t\t\t\t\t\tpulumi.String(\"digitalSignature\"),\n\t\t\t\t\t\tpulumi.String(\"keyAgreement\"),\n\t\t\t\t\t\tpulumi.String(\"keyCertSign\"),\n\t\t\t\t\t\tpulumi.String(\"keyEncipherment\"),\n\t\t\t\t\t},\n\t\t\t\t\tSubjectAlternativeNames: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs{\n\t\t\t\t\t\tDnsNames: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"internal.contoso.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"domain.hello.world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSubject: pulumi.String(\"CN=hello-world\"),\n\t\t\t\t\tValidityInMonths: pulumi.Int(12),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"standard\")\n .softDeleteRetentionDays(7)\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(true)\n .build())\n .lifetimeActions(CertificateCertificatePolicyLifetimeActionArgs.builder()\n .action(CertificateCertificatePolicyLifetimeActionActionArgs.builder()\n .actionType(\"AutoRenew\")\n .build())\n .trigger(CertificateCertificatePolicyLifetimeActionTriggerArgs.builder()\n .daysBeforeExpiry(30)\n .build())\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .x509CertificateProperties(CertificateCertificatePolicyX509CertificatePropertiesArgs.builder()\n .extendedKeyUsages(\"1.3.6.1.5.5.7.3.1\")\n .keyUsages( \n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\")\n .subjectAlternativeNames(CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs.builder()\n .dnsNames( \n \"internal.contoso.com\",\n \"domain.hello.world\")\n .build())\n .subject(\"CN=hello-world\")\n .validityInMonths(12)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleKeyVault:\n type: azure:keyvault:KeyVault\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n tenantId: ${current.tenantId}\n skuName: standard\n softDeleteRetentionDays: 7\n accessPolicies:\n - tenantId: ${current.tenantId}\n objectId: ${current.objectId}\n certificatePermissions:\n - Create\n - Delete\n - DeleteIssuers\n - Get\n - GetIssuers\n - Import\n - List\n - ListIssuers\n - ManageContacts\n - ManageIssuers\n - Purge\n - SetIssuers\n - Update\n keyPermissions:\n - Backup\n - Create\n - Decrypt\n - Delete\n - Encrypt\n - Get\n - Import\n - List\n - Purge\n - Recover\n - Restore\n - Sign\n - UnwrapKey\n - Update\n - Verify\n - WrapKey\n secretPermissions:\n - Backup\n - Delete\n - Get\n - List\n - Purge\n - Recover\n - Restore\n - Set\n exampleCertificate:\n type: azure:keyvault:Certificate\n properties:\n keyVaultId: ${exampleKeyVault.id}\n certificatePolicy:\n issuerParameters:\n name: Self\n keyProperties:\n exportable: true\n keySize: 2048\n keyType: RSA\n reuseKey: true\n lifetimeActions:\n - action:\n actionType: AutoRenew\n trigger:\n daysBeforeExpiry: 30\n secretProperties:\n contentType: application/x-pkcs12\n x509CertificateProperties:\n extendedKeyUsages:\n - 1.3.6.1.5.5.7.3.1\n keyUsages:\n - cRLSign\n - dataEncipherment\n - digitalSignature\n - keyAgreement\n - keyCertSign\n - keyEncipherment\n subjectAlternativeNames:\n dnsNames:\n - internal.contoso.com\n - domain.hello.world\n subject: CN=hello-world\n validityInMonths: 12\nvariables:\n current:\n fn::invoke:\n Function: azure:core:getClientConfig\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKey Vault Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:keyvault/certificate:Certificate example \"https://example-keyvault.vault.azure.net/certificates/example/fdf067c93bbb4b22bff4d8b7a9a56217\"\n```\n\n ", + "description": "Manages a Key Vault Certificate.\n\n\u003c\u003c\u003c\u003c\u003c\u003c\u003c HEAD\n\u003e **Note:** The Azure Provider includes a Feature Toggle which will purge a Key Vault Certificate resource on destroy, rather than the default soft-delete. See `purge_soft_deleted_certificates_on_destroy` for more information. \n\n=======\n\u003e\u003e\u003e\u003e\u003e\u003e\u003e 8d78c87098 (Update-documentation)\n{{% examples %}}\n## Example Usage\n{{% example %}}\n### Importing A PFX)\n\n\u003e **Note:** this example assumed the PFX file is located in the same directory at `certificate-to-import.pfx`.\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\", 'binary')).toString('base64'),\n password: \"\",\n },\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% example %}}\n### Generating a new certificate\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"standard\",\n softDeleteRetentionDays: 7,\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n keyPermissions: [\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secretPermissions: [\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificatePolicy: {\n issuerParameters: {\n name: \"Self\",\n },\n keyProperties: {\n exportable: true,\n keySize: 2048,\n keyType: \"RSA\",\n reuseKey: true,\n },\n lifetimeActions: [{\n action: {\n actionType: \"AutoRenew\",\n },\n trigger: {\n daysBeforeExpiry: 30,\n },\n }],\n secretProperties: {\n contentType: \"application/x-pkcs12\",\n },\n x509CertificateProperties: {\n extendedKeyUsages: [\"1.3.6.1.5.5.7.3.1\"],\n keyUsages: [\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subjectAlternativeNames: {\n dnsNames: [\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n },\n subject: \"CN=hello-world\",\n validityInMonths: 12,\n },\n },\n});\n```\n```python\nimport pulumi\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"standard\",\n soft_delete_retention_days=7,\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n ],\n key_permissions=[\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n ],\n secret_permissions=[\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate_policy=azure.keyvault.CertificateCertificatePolicyArgs(\n issuer_parameters=azure.keyvault.CertificateCertificatePolicyIssuerParametersArgs(\n name=\"Self\",\n ),\n key_properties=azure.keyvault.CertificateCertificatePolicyKeyPropertiesArgs(\n exportable=True,\n key_size=2048,\n key_type=\"RSA\",\n reuse_key=True,\n ),\n lifetime_actions=[azure.keyvault.CertificateCertificatePolicyLifetimeActionArgs(\n action=azure.keyvault.CertificateCertificatePolicyLifetimeActionActionArgs(\n action_type=\"AutoRenew\",\n ),\n trigger=azure.keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs(\n days_before_expiry=30,\n ),\n )],\n secret_properties=azure.keyvault.CertificateCertificatePolicySecretPropertiesArgs(\n content_type=\"application/x-pkcs12\",\n ),\n x509_certificate_properties=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs(\n extended_key_usages=[\"1.3.6.1.5.5.7.3.1\"],\n key_usages=[\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n ],\n subject_alternative_names=azure.keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs(\n dns_names=[\n \"internal.contoso.com\",\n \"domain.hello.world\",\n ],\n ),\n subject=\"CN=hello-world\",\n validity_in_months=12,\n ),\n ))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"standard\",\n SoftDeleteRetentionDays = 7,\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\",\n },\n KeyPermissions = new[]\n {\n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\",\n },\n SecretPermissions = new[]\n {\n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n CertificatePolicy = new Azure.KeyVault.Inputs.CertificateCertificatePolicyArgs\n {\n IssuerParameters = new Azure.KeyVault.Inputs.CertificateCertificatePolicyIssuerParametersArgs\n {\n Name = \"Self\",\n },\n KeyProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyKeyPropertiesArgs\n {\n Exportable = true,\n KeySize = 2048,\n KeyType = \"RSA\",\n ReuseKey = true,\n },\n LifetimeActions = new[]\n {\n new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionArgs\n {\n Action = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionActionArgs\n {\n ActionType = \"AutoRenew\",\n },\n Trigger = new Azure.KeyVault.Inputs.CertificateCertificatePolicyLifetimeActionTriggerArgs\n {\n DaysBeforeExpiry = 30,\n },\n },\n },\n SecretProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicySecretPropertiesArgs\n {\n ContentType = \"application/x-pkcs12\",\n },\n X509CertificateProperties = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs\n {\n ExtendedKeyUsages = new[]\n {\n \"1.3.6.1.5.5.7.3.1\",\n },\n KeyUsages = new[]\n {\n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\",\n },\n SubjectAlternativeNames = new Azure.KeyVault.Inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs\n {\n DnsNames = new[]\n {\n \"internal.contoso.com\",\n \"domain.hello.world\",\n },\n },\n Subject = \"CN=hello-world\",\n ValidityInMonths = 12,\n },\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"standard\"),\n\t\t\tSoftDeleteRetentionDays: pulumi.Int(7),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Decrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Encrypt\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Sign\"),\n\t\t\t\t\t\tpulumi.String(\"UnwrapKey\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t\tpulumi.String(\"Verify\"),\n\t\t\t\t\t\tpulumi.String(\"WrapKey\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Backup\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"Purge\"),\n\t\t\t\t\t\tpulumi.String(\"Recover\"),\n\t\t\t\t\t\tpulumi.String(\"Restore\"),\n\t\t\t\t\t\tpulumi.String(\"Set\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificatePolicy: \u0026keyvault.CertificateCertificatePolicyArgs{\n\t\t\t\tIssuerParameters: \u0026keyvault.CertificateCertificatePolicyIssuerParametersArgs{\n\t\t\t\t\tName: pulumi.String(\"Self\"),\n\t\t\t\t},\n\t\t\t\tKeyProperties: \u0026keyvault.CertificateCertificatePolicyKeyPropertiesArgs{\n\t\t\t\t\tExportable: pulumi.Bool(true),\n\t\t\t\t\tKeySize: pulumi.Int(2048),\n\t\t\t\t\tKeyType: pulumi.String(\"RSA\"),\n\t\t\t\t\tReuseKey: pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\tLifetimeActions: keyvault.CertificateCertificatePolicyLifetimeActionArray{\n\t\t\t\t\t\u0026keyvault.CertificateCertificatePolicyLifetimeActionArgs{\n\t\t\t\t\t\tAction: \u0026keyvault.CertificateCertificatePolicyLifetimeActionActionArgs{\n\t\t\t\t\t\t\tActionType: pulumi.String(\"AutoRenew\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\tTrigger: \u0026keyvault.CertificateCertificatePolicyLifetimeActionTriggerArgs{\n\t\t\t\t\t\t\tDaysBeforeExpiry: pulumi.Int(30),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSecretProperties: \u0026keyvault.CertificateCertificatePolicySecretPropertiesArgs{\n\t\t\t\t\tContentType: pulumi.String(\"application/x-pkcs12\"),\n\t\t\t\t},\n\t\t\t\tX509CertificateProperties: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesArgs{\n\t\t\t\t\tExtendedKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"1.3.6.1.5.5.7.3.1\"),\n\t\t\t\t\t},\n\t\t\t\t\tKeyUsages: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"cRLSign\"),\n\t\t\t\t\t\tpulumi.String(\"dataEncipherment\"),\n\t\t\t\t\t\tpulumi.String(\"digitalSignature\"),\n\t\t\t\t\t\tpulumi.String(\"keyAgreement\"),\n\t\t\t\t\t\tpulumi.String(\"keyCertSign\"),\n\t\t\t\t\t\tpulumi.String(\"keyEncipherment\"),\n\t\t\t\t\t},\n\t\t\t\t\tSubjectAlternativeNames: \u0026keyvault.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs{\n\t\t\t\t\t\tDnsNames: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"internal.contoso.com\"),\n\t\t\t\t\t\t\tpulumi.String(\"domain.hello.world\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSubject: pulumi.String(\"CN=hello-world\"),\n\t\t\t\t\tValidityInMonths: pulumi.Int(12),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyIssuerParametersArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyKeyPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicySecretPropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"standard\")\n .softDeleteRetentionDays(7)\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"Purge\",\n \"SetIssuers\",\n \"Update\")\n .keyPermissions( \n \"Backup\",\n \"Create\",\n \"Decrypt\",\n \"Delete\",\n \"Encrypt\",\n \"Get\",\n \"Import\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Sign\",\n \"UnwrapKey\",\n \"Update\",\n \"Verify\",\n \"WrapKey\")\n .secretPermissions( \n \"Backup\",\n \"Delete\",\n \"Get\",\n \"List\",\n \"Purge\",\n \"Recover\",\n \"Restore\",\n \"Set\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificatePolicy(CertificateCertificatePolicyArgs.builder()\n .issuerParameters(CertificateCertificatePolicyIssuerParametersArgs.builder()\n .name(\"Self\")\n .build())\n .keyProperties(CertificateCertificatePolicyKeyPropertiesArgs.builder()\n .exportable(true)\n .keySize(2048)\n .keyType(\"RSA\")\n .reuseKey(true)\n .build())\n .lifetimeActions(CertificateCertificatePolicyLifetimeActionArgs.builder()\n .action(CertificateCertificatePolicyLifetimeActionActionArgs.builder()\n .actionType(\"AutoRenew\")\n .build())\n .trigger(CertificateCertificatePolicyLifetimeActionTriggerArgs.builder()\n .daysBeforeExpiry(30)\n .build())\n .build())\n .secretProperties(CertificateCertificatePolicySecretPropertiesArgs.builder()\n .contentType(\"application/x-pkcs12\")\n .build())\n .x509CertificateProperties(CertificateCertificatePolicyX509CertificatePropertiesArgs.builder()\n .extendedKeyUsages(\"1.3.6.1.5.5.7.3.1\")\n .keyUsages( \n \"cRLSign\",\n \"dataEncipherment\",\n \"digitalSignature\",\n \"keyAgreement\",\n \"keyCertSign\",\n \"keyEncipherment\")\n .subjectAlternativeNames(CertificateCertificatePolicyX509CertificatePropertiesSubjectAlternativeNamesArgs.builder()\n .dnsNames( \n \"internal.contoso.com\",\n \"domain.hello.world\")\n .build())\n .subject(\"CN=hello-world\")\n .validityInMonths(12)\n .build())\n .build())\n .build());\n\n }\n}\n```\n```yaml\nresources:\n exampleResourceGroup:\n type: azure:core:ResourceGroup\n properties:\n location: West Europe\n exampleKeyVault:\n type: azure:keyvault:KeyVault\n properties:\n location: ${exampleResourceGroup.location}\n resourceGroupName: ${exampleResourceGroup.name}\n tenantId: ${current.tenantId}\n skuName: standard\n softDeleteRetentionDays: 7\n accessPolicies:\n - tenantId: ${current.tenantId}\n objectId: ${current.objectId}\n certificatePermissions:\n - Create\n - Delete\n - DeleteIssuers\n - Get\n - GetIssuers\n - Import\n - List\n - ListIssuers\n - ManageContacts\n - ManageIssuers\n - Purge\n - SetIssuers\n - Update\n keyPermissions:\n - Backup\n - Create\n - Decrypt\n - Delete\n - Encrypt\n - Get\n - Import\n - List\n - Purge\n - Recover\n - Restore\n - Sign\n - UnwrapKey\n - Update\n - Verify\n - WrapKey\n secretPermissions:\n - Backup\n - Delete\n - Get\n - List\n - Purge\n - Recover\n - Restore\n - Set\n exampleCertificate:\n type: azure:keyvault:Certificate\n properties:\n keyVaultId: ${exampleKeyVault.id}\n certificatePolicy:\n issuerParameters:\n name: Self\n keyProperties:\n exportable: true\n keySize: 2048\n keyType: RSA\n reuseKey: true\n lifetimeActions:\n - action:\n actionType: AutoRenew\n trigger:\n daysBeforeExpiry: 30\n secretProperties:\n contentType: application/x-pkcs12\n x509CertificateProperties:\n extendedKeyUsages:\n - 1.3.6.1.5.5.7.3.1\n keyUsages:\n - cRLSign\n - dataEncipherment\n - digitalSignature\n - keyAgreement\n - keyCertSign\n - keyEncipherment\n subjectAlternativeNames:\n dnsNames:\n - internal.contoso.com\n - domain.hello.world\n subject: CN=hello-world\n validityInMonths: 12\nvariables:\n current:\n fn::invoke:\n Function: azure:core:getClientConfig\n Arguments: {}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nKey Vault Certificates can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:keyvault/certificate:Certificate example \"https://example-keyvault.vault.azure.net/certificates/example/fdf067c93bbb4b22bff4d8b7a9a56217\"\n```\n\n ", "properties": { "certificate": { "$ref": "#/types/azure:keyvault/CertificateCertificate:CertificateCertificate", @@ -194822,7 +194822,7 @@ } }, "azure:logicapps/integrationAccountAssembly:IntegrationAccountAssembly": { - "description": "Manages a Logic App Integration Account Assembly.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIntegrationAccount = new azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleIntegrationAccountAssembly = new azure.logicapps.IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\", {\n resourceGroupName: exampleResourceGroup.name,\n integrationAccountName: exampleIntegrationAccount.name,\n assemblyName: \"TestAssembly\",\n content: Buffer.from(fs.readFileSync(\"testdata/log4net.dll\"), 'binary').toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_integration_account = azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_integration_account_assembly = azure.logicapps.IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\",\n resource_group_name=example_resource_group.name,\n integration_account_name=example_integration_account.name,\n assembly_name=\"TestAssembly\",\n content=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"testdata/log4net.dll\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"exampleIntegrationAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleIntegrationAccountAssembly = new Azure.LogicApps.IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IntegrationAccountName = exampleIntegrationAccount.Name,\n AssemblyName = \"TestAssembly\",\n Content = ReadFileBase64(\"testdata/log4net.dll\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"exampleIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountAssembly(ctx, \"exampleIntegrationAccountAssembly\", \u0026logicapps.IntegrationAccountAssemblyArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIntegrationAccountName: exampleIntegrationAccount.Name,\n\t\t\tAssemblyName: pulumi.String(\"TestAssembly\"),\n\t\t\tContent: filebase64OrPanic(\"testdata/log4net.dll\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountAssembly;\nimport com.pulumi.azure.logicapps.IntegrationAccountAssemblyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIntegrationAccount = new IntegrationAccount(\"exampleIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleIntegrationAccountAssembly = new IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\", IntegrationAccountAssemblyArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .integrationAccountName(exampleIntegrationAccount.name())\n .assemblyName(\"TestAssembly\")\n .content(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"testdata/log4net.dll\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Assemblies can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountAssembly:IntegrationAccountAssembly example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/assemblies/assembly1\n```\n\n ", + "description": "Manages a Logic App Integration Account Assembly.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleIntegrationAccount = new azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n skuName: \"Basic\",\n});\nconst exampleIntegrationAccountAssembly = new azure.logicapps.IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\", {\n resourceGroupName: exampleResourceGroup.name,\n integrationAccountName: exampleIntegrationAccount.name,\n assemblyName: \"TestAssembly\",\n content: Buffer.from(fs.readFileSync(\"testdata/log4net.dll\", 'binary')).toString('base64'),\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_integration_account = azure.logicapps.IntegrationAccount(\"exampleIntegrationAccount\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n sku_name=\"Basic\")\nexample_integration_account_assembly = azure.logicapps.IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\",\n resource_group_name=example_resource_group.name,\n integration_account_name=example_integration_account.name,\n assembly_name=\"TestAssembly\",\n content=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"testdata/log4net.dll\"))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleIntegrationAccount = new Azure.LogicApps.IntegrationAccount(\"exampleIntegrationAccount\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n SkuName = \"Basic\",\n });\n\n var exampleIntegrationAccountAssembly = new Azure.LogicApps.IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n IntegrationAccountName = exampleIntegrationAccount.Name,\n AssemblyName = \"TestAssembly\",\n Content = ReadFileBase64(\"testdata/log4net.dll\"),\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/logicapps\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleIntegrationAccount, err := logicapps.NewIntegrationAccount(ctx, \"exampleIntegrationAccount\", \u0026logicapps.IntegrationAccountArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSkuName: pulumi.String(\"Basic\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = logicapps.NewIntegrationAccountAssembly(ctx, \"exampleIntegrationAccountAssembly\", \u0026logicapps.IntegrationAccountAssemblyArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tIntegrationAccountName: exampleIntegrationAccount.Name,\n\t\t\tAssemblyName: pulumi.String(\"TestAssembly\"),\n\t\t\tContent: filebase64OrPanic(\"testdata/log4net.dll\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccount;\nimport com.pulumi.azure.logicapps.IntegrationAccountArgs;\nimport com.pulumi.azure.logicapps.IntegrationAccountAssembly;\nimport com.pulumi.azure.logicapps.IntegrationAccountAssemblyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleIntegrationAccount = new IntegrationAccount(\"exampleIntegrationAccount\", IntegrationAccountArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .skuName(\"Basic\")\n .build());\n\n var exampleIntegrationAccountAssembly = new IntegrationAccountAssembly(\"exampleIntegrationAccountAssembly\", IntegrationAccountAssemblyArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .integrationAccountName(exampleIntegrationAccount.name())\n .assemblyName(\"TestAssembly\")\n .content(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"testdata/log4net.dll\"))))\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nLogic App Integration Account Assemblies can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:logicapps/integrationAccountAssembly:IntegrationAccountAssembly example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Logic/integrationAccounts/account1/assemblies/assembly1\n```\n\n ", "properties": { "assemblyName": { "type": "string", @@ -228316,7 +228316,7 @@ } }, "azure:nginx/certificate:Certificate": { - "description": "Manages a Certificate for an NGinx Deployment.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst examplePublicIp = new azure.network.PublicIp(\"examplePublicIp\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n allocationMethod: \"Static\",\n sku: \"Standard\",\n tags: {\n environment: \"Production\",\n },\n});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n delegations: [{\n name: \"delegation\",\n serviceDelegation: {\n name: \"NGINX.NGINXPLUS/nginxDeployments\",\n actions: [\"Microsoft.Network/virtualNetworks/subnets/join/action\"],\n },\n }],\n});\nconst exampleDeployment = new azure.nginx.Deployment(\"exampleDeployment\", {\n resourceGroupName: exampleResourceGroup.name,\n sku: \"publicpreview_Monthly_gmz7xq9ge3py\",\n location: exampleResourceGroup.location,\n managedResourceGroup: \"example\",\n diagnoseSupportEnabled: true,\n frontendPublic: {\n ipAddresses: [examplePublicIp.id],\n },\n networkInterfaces: [{\n subnetId: exampleSubnet.id,\n }],\n});\nconst current = azure.core.getClientConfig({});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\"), 'binary').toString('base64'),\n password: \"\",\n },\n});\nconst exampleNginx_certificateCertificate = new azure.nginx.Certificate(\"exampleNginx/certificateCertificate\", {\n nginxDeploymentId: exampleDeployment.id,\n keyVirtualPath: \"/src/cert/soservermekey.key\",\n certificateVirtualPath: \"/src/cert/server.cert\",\n keyVaultSecretId: exampleCertificate.secretId,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_public_ip = azure.network.PublicIp(\"examplePublicIp\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n allocation_method=\"Static\",\n sku=\"Standard\",\n tags={\n \"environment\": \"Production\",\n })\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"],\n delegations=[azure.network.SubnetDelegationArgs(\n name=\"delegation\",\n service_delegation=azure.network.SubnetDelegationServiceDelegationArgs(\n name=\"NGINX.NGINXPLUS/nginxDeployments\",\n actions=[\"Microsoft.Network/virtualNetworks/subnets/join/action\"],\n ),\n )])\nexample_deployment = azure.nginx.Deployment(\"exampleDeployment\",\n resource_group_name=example_resource_group.name,\n sku=\"publicpreview_Monthly_gmz7xq9ge3py\",\n location=example_resource_group.location,\n managed_resource_group=\"example\",\n diagnose_support_enabled=True,\n frontend_public=azure.nginx.DeploymentFrontendPublicArgs(\n ip_addresses=[example_public_ip.id],\n ),\n network_interfaces=[azure.nginx.DeploymentNetworkInterfaceArgs(\n subnet_id=example_subnet.id,\n )])\ncurrent = azure.core.get_client_config()\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\nexample_nginx_certificate_certificate = azure.nginx.Certificate(\"exampleNginx/certificateCertificate\",\n nginx_deployment_id=example_deployment.id,\n key_virtual_path=\"/src/cert/soservermekey.key\",\n certificate_virtual_path=\"/src/cert/server.cert\",\n key_vault_secret_id=example_certificate.secret_id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var examplePublicIp = new Azure.Network.PublicIp(\"examplePublicIp\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AllocationMethod = \"Static\",\n Sku = \"Standard\",\n Tags = \n {\n { \"environment\", \"Production\" },\n },\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n Delegations = new[]\n {\n new Azure.Network.Inputs.SubnetDelegationArgs\n {\n Name = \"delegation\",\n ServiceDelegation = new Azure.Network.Inputs.SubnetDelegationServiceDelegationArgs\n {\n Name = \"NGINX.NGINXPLUS/nginxDeployments\",\n Actions = new[]\n {\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\n },\n },\n },\n },\n });\n\n var exampleDeployment = new Azure.Nginx.Deployment(\"exampleDeployment\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Sku = \"publicpreview_Monthly_gmz7xq9ge3py\",\n Location = exampleResourceGroup.Location,\n ManagedResourceGroup = \"example\",\n DiagnoseSupportEnabled = true,\n FrontendPublic = new Azure.Nginx.Inputs.DeploymentFrontendPublicArgs\n {\n IpAddresses = new[]\n {\n examplePublicIp.Id,\n },\n },\n NetworkInterfaces = new[]\n {\n new Azure.Nginx.Inputs.DeploymentNetworkInterfaceArgs\n {\n SubnetId = exampleSubnet.Id,\n },\n },\n });\n\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n var exampleNginx_certificateCertificate = new Azure.Nginx.Certificate(\"exampleNginx/certificateCertificate\", new()\n {\n NginxDeploymentId = exampleDeployment.Id,\n KeyVirtualPath = \"/src/cert/soservermekey.key\",\n CertificateVirtualPath = \"/src/cert/server.cert\",\n KeyVaultSecretId = exampleCertificate.SecretId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/nginx\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePublicIp, err := network.NewPublicIp(ctx, \"examplePublicIp\", \u0026network.PublicIpArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAllocationMethod: pulumi.String(\"Static\"),\n\t\t\tSku: pulumi.String(\"Standard\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"Production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t\tDelegations: network.SubnetDelegationArray{\n\t\t\t\t\u0026network.SubnetDelegationArgs{\n\t\t\t\t\tName: pulumi.String(\"delegation\"),\n\t\t\t\t\tServiceDelegation: \u0026network.SubnetDelegationServiceDelegationArgs{\n\t\t\t\t\t\tName: pulumi.String(\"NGINX.NGINXPLUS/nginxDeployments\"),\n\t\t\t\t\t\tActions: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"Microsoft.Network/virtualNetworks/subnets/join/action\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDeployment, err := nginx.NewDeployment(ctx, \"exampleDeployment\", \u0026nginx.DeploymentArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSku: pulumi.String(\"publicpreview_Monthly_gmz7xq9ge3py\"),\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tManagedResourceGroup: pulumi.String(\"example\"),\n\t\t\tDiagnoseSupportEnabled: pulumi.Bool(true),\n\t\t\tFrontendPublic: \u0026nginx.DeploymentFrontendPublicArgs{\n\t\t\t\tIpAddresses: pulumi.StringArray{\n\t\t\t\t\texamplePublicIp.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworkInterfaces: nginx.DeploymentNetworkInterfaceArray{\n\t\t\t\t\u0026nginx.DeploymentNetworkInterfaceArgs{\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nginx.NewCertificate(ctx, \"exampleNginx/certificateCertificate\", \u0026nginx.CertificateArgs{\n\t\t\tNginxDeploymentId: exampleDeployment.ID(),\n\t\t\tKeyVirtualPath: pulumi.String(\"/src/cert/soservermekey.key\"),\n\t\t\tCertificateVirtualPath: pulumi.String(\"/src/cert/server.cert\"),\n\t\t\tKeyVaultSecretId: exampleCertificate.SecretId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.PublicIp;\nimport com.pulumi.azure.network.PublicIpArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.inputs.SubnetDelegationArgs;\nimport com.pulumi.azure.network.inputs.SubnetDelegationServiceDelegationArgs;\nimport com.pulumi.azure.nginx.Deployment;\nimport com.pulumi.azure.nginx.DeploymentArgs;\nimport com.pulumi.azure.nginx.inputs.DeploymentFrontendPublicArgs;\nimport com.pulumi.azure.nginx.inputs.DeploymentNetworkInterfaceArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.nginx.Certificate;\nimport com.pulumi.azure.nginx.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var examplePublicIp = new PublicIp(\"examplePublicIp\", PublicIpArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .allocationMethod(\"Static\")\n .sku(\"Standard\")\n .tags(Map.of(\"environment\", \"Production\"))\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .delegations(SubnetDelegationArgs.builder()\n .name(\"delegation\")\n .serviceDelegation(SubnetDelegationServiceDelegationArgs.builder()\n .name(\"NGINX.NGINXPLUS/nginxDeployments\")\n .actions(\"Microsoft.Network/virtualNetworks/subnets/join/action\")\n .build())\n .build())\n .build());\n\n var exampleDeployment = new Deployment(\"exampleDeployment\", DeploymentArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .sku(\"publicpreview_Monthly_gmz7xq9ge3py\")\n .location(exampleResourceGroup.location())\n .managedResourceGroup(\"example\")\n .diagnoseSupportEnabled(true)\n .frontendPublic(DeploymentFrontendPublicArgs.builder()\n .ipAddresses(examplePublicIp.id())\n .build())\n .networkInterfaces(DeploymentNetworkInterfaceArgs.builder()\n .subnetId(exampleSubnet.id())\n .build())\n .build());\n\n final var current = CoreFunctions.getClientConfig();\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n var exampleNginx_certificateCertificate = new Certificate(\"exampleNginx/certificateCertificate\", CertificateArgs.builder() \n .nginxDeploymentId(exampleDeployment.id())\n .keyVirtualPath(\"/src/cert/soservermekey.key\")\n .certificateVirtualPath(\"/src/cert/server.cert\")\n .keyVaultSecretId(exampleCertificate.secretId())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAn Nginx Certificate can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:nginx/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Nginx.NginxPlus/nginxDeployments/deploy1/certificates/cer1\n```\n\n ", + "description": "Manages a Certificate for an NGinx Deployment.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst examplePublicIp = new azure.network.PublicIp(\"examplePublicIp\", {\n resourceGroupName: exampleResourceGroup.name,\n location: exampleResourceGroup.location,\n allocationMethod: \"Static\",\n sku: \"Standard\",\n tags: {\n environment: \"Production\",\n },\n});\nconst exampleVirtualNetwork = new azure.network.VirtualNetwork(\"exampleVirtualNetwork\", {\n addressSpaces: [\"10.0.0.0/16\"],\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n});\nconst exampleSubnet = new azure.network.Subnet(\"exampleSubnet\", {\n resourceGroupName: exampleResourceGroup.name,\n virtualNetworkName: exampleVirtualNetwork.name,\n addressPrefixes: [\"10.0.2.0/24\"],\n delegations: [{\n name: \"delegation\",\n serviceDelegation: {\n name: \"NGINX.NGINXPLUS/nginxDeployments\",\n actions: [\"Microsoft.Network/virtualNetworks/subnets/join/action\"],\n },\n }],\n});\nconst exampleDeployment = new azure.nginx.Deployment(\"exampleDeployment\", {\n resourceGroupName: exampleResourceGroup.name,\n sku: \"publicpreview_Monthly_gmz7xq9ge3py\",\n location: exampleResourceGroup.location,\n managedResourceGroup: \"example\",\n diagnoseSupportEnabled: true,\n frontendPublic: {\n ipAddresses: [examplePublicIp.id],\n },\n networkInterfaces: [{\n subnetId: exampleSubnet.id,\n }],\n});\nconst current = azure.core.getClientConfig({});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [{\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n }],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\", 'binary')).toString('base64'),\n password: \"\",\n },\n});\nconst exampleNginx_certificateCertificate = new azure.nginx.Certificate(\"exampleNginx/certificateCertificate\", {\n nginxDeploymentId: exampleDeployment.id,\n keyVirtualPath: \"/src/cert/soservermekey.key\",\n certificateVirtualPath: \"/src/cert/server.cert\",\n keyVaultSecretId: exampleCertificate.secretId,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_public_ip = azure.network.PublicIp(\"examplePublicIp\",\n resource_group_name=example_resource_group.name,\n location=example_resource_group.location,\n allocation_method=\"Static\",\n sku=\"Standard\",\n tags={\n \"environment\": \"Production\",\n })\nexample_virtual_network = azure.network.VirtualNetwork(\"exampleVirtualNetwork\",\n address_spaces=[\"10.0.0.0/16\"],\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name)\nexample_subnet = azure.network.Subnet(\"exampleSubnet\",\n resource_group_name=example_resource_group.name,\n virtual_network_name=example_virtual_network.name,\n address_prefixes=[\"10.0.2.0/24\"],\n delegations=[azure.network.SubnetDelegationArgs(\n name=\"delegation\",\n service_delegation=azure.network.SubnetDelegationServiceDelegationArgs(\n name=\"NGINX.NGINXPLUS/nginxDeployments\",\n actions=[\"Microsoft.Network/virtualNetworks/subnets/join/action\"],\n ),\n )])\nexample_deployment = azure.nginx.Deployment(\"exampleDeployment\",\n resource_group_name=example_resource_group.name,\n sku=\"publicpreview_Monthly_gmz7xq9ge3py\",\n location=example_resource_group.location,\n managed_resource_group=\"example\",\n diagnose_support_enabled=True,\n frontend_public=azure.nginx.DeploymentFrontendPublicArgs(\n ip_addresses=[example_public_ip.id],\n ),\n network_interfaces=[azure.nginx.DeploymentNetworkInterfaceArgs(\n subnet_id=example_subnet.id,\n )])\ncurrent = azure.core.get_client_config()\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n ],\n )])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\nexample_nginx_certificate_certificate = azure.nginx.Certificate(\"exampleNginx/certificateCertificate\",\n nginx_deployment_id=example_deployment.id,\n key_virtual_path=\"/src/cert/soservermekey.key\",\n certificate_virtual_path=\"/src/cert/server.cert\",\n key_vault_secret_id=example_certificate.secret_id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var examplePublicIp = new Azure.Network.PublicIp(\"examplePublicIp\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Location = exampleResourceGroup.Location,\n AllocationMethod = \"Static\",\n Sku = \"Standard\",\n Tags = \n {\n { \"environment\", \"Production\" },\n },\n });\n\n var exampleVirtualNetwork = new Azure.Network.VirtualNetwork(\"exampleVirtualNetwork\", new()\n {\n AddressSpaces = new[]\n {\n \"10.0.0.0/16\",\n },\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n });\n\n var exampleSubnet = new Azure.Network.Subnet(\"exampleSubnet\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n VirtualNetworkName = exampleVirtualNetwork.Name,\n AddressPrefixes = new[]\n {\n \"10.0.2.0/24\",\n },\n Delegations = new[]\n {\n new Azure.Network.Inputs.SubnetDelegationArgs\n {\n Name = \"delegation\",\n ServiceDelegation = new Azure.Network.Inputs.SubnetDelegationServiceDelegationArgs\n {\n Name = \"NGINX.NGINXPLUS/nginxDeployments\",\n Actions = new[]\n {\n \"Microsoft.Network/virtualNetworks/subnets/join/action\",\n },\n },\n },\n },\n });\n\n var exampleDeployment = new Azure.Nginx.Deployment(\"exampleDeployment\", new()\n {\n ResourceGroupName = exampleResourceGroup.Name,\n Sku = \"publicpreview_Monthly_gmz7xq9ge3py\",\n Location = exampleResourceGroup.Location,\n ManagedResourceGroup = \"example\",\n DiagnoseSupportEnabled = true,\n FrontendPublic = new Azure.Nginx.Inputs.DeploymentFrontendPublicArgs\n {\n IpAddresses = new[]\n {\n examplePublicIp.Id,\n },\n },\n NetworkInterfaces = new[]\n {\n new Azure.Nginx.Inputs.DeploymentNetworkInterfaceArgs\n {\n SubnetId = exampleSubnet.Id,\n },\n },\n });\n\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n var exampleNginx_certificateCertificate = new Azure.Nginx.Certificate(\"exampleNginx/certificateCertificate\", new()\n {\n NginxDeploymentId = exampleDeployment.Id,\n KeyVirtualPath = \"/src/cert/soservermekey.key\",\n CertificateVirtualPath = \"/src/cert/server.cert\",\n KeyVaultSecretId = exampleCertificate.SecretId,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/network\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/nginx\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texamplePublicIp, err := network.NewPublicIp(ctx, \"examplePublicIp\", \u0026network.PublicIpArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tAllocationMethod: pulumi.String(\"Static\"),\n\t\t\tSku: pulumi.String(\"Standard\"),\n\t\t\tTags: pulumi.StringMap{\n\t\t\t\t\"environment\": pulumi.String(\"Production\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, \"exampleVirtualNetwork\", \u0026network.VirtualNetworkArgs{\n\t\t\tAddressSpaces: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.0.0/16\"),\n\t\t\t},\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleSubnet, err := network.NewSubnet(ctx, \"exampleSubnet\", \u0026network.SubnetArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tVirtualNetworkName: exampleVirtualNetwork.Name,\n\t\t\tAddressPrefixes: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"10.0.2.0/24\"),\n\t\t\t},\n\t\t\tDelegations: network.SubnetDelegationArray{\n\t\t\t\t\u0026network.SubnetDelegationArgs{\n\t\t\t\t\tName: pulumi.String(\"delegation\"),\n\t\t\t\t\tServiceDelegation: \u0026network.SubnetDelegationServiceDelegationArgs{\n\t\t\t\t\t\tName: pulumi.String(\"NGINX.NGINXPLUS/nginxDeployments\"),\n\t\t\t\t\t\tActions: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"Microsoft.Network/virtualNetworks/subnets/join/action\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleDeployment, err := nginx.NewDeployment(ctx, \"exampleDeployment\", \u0026nginx.DeploymentArgs{\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tSku: pulumi.String(\"publicpreview_Monthly_gmz7xq9ge3py\"),\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tManagedResourceGroup: pulumi.String(\"example\"),\n\t\t\tDiagnoseSupportEnabled: pulumi.Bool(true),\n\t\t\tFrontendPublic: \u0026nginx.DeploymentFrontendPublicArgs{\n\t\t\t\tIpAddresses: pulumi.StringArray{\n\t\t\t\t\texamplePublicIp.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworkInterfaces: nginx.DeploymentNetworkInterfaceArray{\n\t\t\t\t\u0026nginx.DeploymentNetworkInterfaceArgs{\n\t\t\t\t\tSubnetId: exampleSubnet.ID(),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Delete\"),\n\t\t\t\t\t\tpulumi.String(\"DeleteIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"GetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Import\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t\tpulumi.String(\"ListIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"ManageContacts\"),\n\t\t\t\t\t\tpulumi.String(\"ManageIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"SetIssuers\"),\n\t\t\t\t\t\tpulumi.String(\"Update\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nginx.NewCertificate(ctx, \"exampleNginx/certificateCertificate\", \u0026nginx.CertificateArgs{\n\t\t\tNginxDeploymentId: exampleDeployment.ID(),\n\t\t\tKeyVirtualPath: pulumi.String(\"/src/cert/soservermekey.key\"),\n\t\t\tCertificateVirtualPath: pulumi.String(\"/src/cert/server.cert\"),\n\t\t\tKeyVaultSecretId: exampleCertificate.SecretId,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.network.PublicIp;\nimport com.pulumi.azure.network.PublicIpArgs;\nimport com.pulumi.azure.network.VirtualNetwork;\nimport com.pulumi.azure.network.VirtualNetworkArgs;\nimport com.pulumi.azure.network.Subnet;\nimport com.pulumi.azure.network.SubnetArgs;\nimport com.pulumi.azure.network.inputs.SubnetDelegationArgs;\nimport com.pulumi.azure.network.inputs.SubnetDelegationServiceDelegationArgs;\nimport com.pulumi.azure.nginx.Deployment;\nimport com.pulumi.azure.nginx.DeploymentArgs;\nimport com.pulumi.azure.nginx.inputs.DeploymentFrontendPublicArgs;\nimport com.pulumi.azure.nginx.inputs.DeploymentNetworkInterfaceArgs;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.nginx.Certificate;\nimport com.pulumi.azure.nginx.CertificateArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var examplePublicIp = new PublicIp(\"examplePublicIp\", PublicIpArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .location(exampleResourceGroup.location())\n .allocationMethod(\"Static\")\n .sku(\"Standard\")\n .tags(Map.of(\"environment\", \"Production\"))\n .build());\n\n var exampleVirtualNetwork = new VirtualNetwork(\"exampleVirtualNetwork\", VirtualNetworkArgs.builder() \n .addressSpaces(\"10.0.0.0/16\")\n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .build());\n\n var exampleSubnet = new Subnet(\"exampleSubnet\", SubnetArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .virtualNetworkName(exampleVirtualNetwork.name())\n .addressPrefixes(\"10.0.2.0/24\")\n .delegations(SubnetDelegationArgs.builder()\n .name(\"delegation\")\n .serviceDelegation(SubnetDelegationServiceDelegationArgs.builder()\n .name(\"NGINX.NGINXPLUS/nginxDeployments\")\n .actions(\"Microsoft.Network/virtualNetworks/subnets/join/action\")\n .build())\n .build())\n .build());\n\n var exampleDeployment = new Deployment(\"exampleDeployment\", DeploymentArgs.builder() \n .resourceGroupName(exampleResourceGroup.name())\n .sku(\"publicpreview_Monthly_gmz7xq9ge3py\")\n .location(exampleResourceGroup.location())\n .managedResourceGroup(\"example\")\n .diagnoseSupportEnabled(true)\n .frontendPublic(DeploymentFrontendPublicArgs.builder()\n .ipAddresses(examplePublicIp.id())\n .build())\n .networkInterfaces(DeploymentNetworkInterfaceArgs.builder()\n .subnetId(exampleSubnet.id())\n .build())\n .build());\n\n final var current = CoreFunctions.getClientConfig();\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies(KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Delete\",\n \"DeleteIssuers\",\n \"Get\",\n \"GetIssuers\",\n \"Import\",\n \"List\",\n \"ListIssuers\",\n \"ManageContacts\",\n \"ManageIssuers\",\n \"SetIssuers\",\n \"Update\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n var exampleNginx_certificateCertificate = new Certificate(\"exampleNginx/certificateCertificate\", CertificateArgs.builder() \n .nginxDeploymentId(exampleDeployment.id())\n .keyVirtualPath(\"/src/cert/soservermekey.key\")\n .certificateVirtualPath(\"/src/cert/server.cert\")\n .keyVaultSecretId(exampleCertificate.secretId())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nAn Nginx Certificate can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:nginx/certificate:Certificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Nginx.NginxPlus/nginxDeployments/deploy1/certificates/cer1\n```\n\n ", "properties": { "certificateVirtualPath": { "type": "string", @@ -247101,7 +247101,7 @@ } }, "azure:signalr/serviceCustomCertificate:ServiceCustomCertificate": { - "description": "Manages an Azure SignalR Custom Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.signalr.Service(\"exampleService\", {\n location: azurerm_resource_group.test.location,\n resourceGroupName: azurerm_resource_group.test.name,\n sku: {\n name: \"Premium_P1\",\n capacity: 1,\n },\n identity: {\n type: \"SystemAssigned\",\n },\n});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: azurerm_signalr_service.test.identity[0].principal_id,\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n ],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\"), 'binary').toString('base64'),\n password: \"\",\n },\n});\nconst test = new azure.signalr.ServiceCustomCertificate(\"test\", {\n signalrServiceId: exampleService.id,\n customCertificateId: exampleCertificate.id,\n}, {\n dependsOn: [azurerm_key_vault_access_policy.example],\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.signalr.Service(\"exampleService\",\n location=azurerm_resource_group[\"test\"][\"location\"],\n resource_group_name=azurerm_resource_group[\"test\"][\"name\"],\n sku=azure.signalr.ServiceSkuArgs(\n name=\"Premium_P1\",\n capacity=1,\n ),\n identity=azure.signalr.ServiceIdentityArgs(\n type=\"SystemAssigned\",\n ))\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=azurerm_signalr_service[\"test\"][\"identity\"][0][\"principal_id\"],\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n ])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\ntest = azure.signalr.ServiceCustomCertificate(\"test\",\n signalr_service_id=example_service.id,\n custom_certificate_id=example_certificate.id,\n opts=pulumi.ResourceOptions(depends_on=[azurerm_key_vault_access_policy[\"example\"]]))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.SignalR.Service(\"exampleService\", new()\n {\n Location = azurerm_resource_group.Test.Location,\n ResourceGroupName = azurerm_resource_group.Test.Name,\n Sku = new Azure.SignalR.Inputs.ServiceSkuArgs\n {\n Name = \"Premium_P1\",\n Capacity = 1,\n },\n Identity = new Azure.SignalR.Inputs.ServiceIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = azurerm_signalr_service.Test.Identity[0].Principal_id,\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n var test = new Azure.SignalR.ServiceCustomCertificate(\"test\", new()\n {\n SignalrServiceId = exampleService.Id,\n CustomCertificateId = exampleCertificate.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n azurerm_key_vault_access_policy.Example,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/signalr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := signalr.NewService(ctx, \"exampleService\", \u0026signalr.ServiceArgs{\n\t\t\tLocation: pulumi.Any(azurerm_resource_group.Test.Location),\n\t\t\tResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),\n\t\t\tSku: \u0026signalr.ServiceSkuArgs{\n\t\t\t\tName: pulumi.String(\"Premium_P1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t\tIdentity: \u0026signalr.ServiceIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: pulumi.Any(azurerm_signalr_service.Test.Identity[0].Principal_id),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = signalr.NewServiceCustomCertificate(ctx, \"test\", \u0026signalr.ServiceCustomCertificateArgs{\n\t\t\tSignalrServiceId: exampleService.ID(),\n\t\t\tCustomCertificateId: exampleCertificate.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tazurerm_key_vault_access_policy.Example,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.signalr.Service;\nimport com.pulumi.azure.signalr.ServiceArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceSkuArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceIdentityArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.signalr.ServiceCustomCertificate;\nimport com.pulumi.azure.signalr.ServiceCustomCertificateArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(azurerm_resource_group.test().location())\n .resourceGroupName(azurerm_resource_group.test().name())\n .sku(ServiceSkuArgs.builder()\n .name(\"Premium_P1\")\n .capacity(1)\n .build())\n .identity(ServiceIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies( \n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build(),\n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(azurerm_signalr_service.test().identity()[0].principal_id())\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n var test = new ServiceCustomCertificate(\"test\", ServiceCustomCertificateArgs.builder() \n .signalrServiceId(exampleService.id())\n .customCertificateId(exampleCertificate.id())\n .build(), CustomResourceOptions.builder()\n .dependsOn(azurerm_key_vault_access_policy.example())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCustom Certificate for a SignalR service can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:signalr/serviceCustomCertificate:ServiceCustomCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/signalR/signalr1/customCertificates/cert1\n```\n\n ", + "description": "Manages an Azure SignalR Custom Certificate.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.signalr.Service(\"exampleService\", {\n location: azurerm_resource_group.test.location,\n resourceGroupName: azurerm_resource_group.test.name,\n sku: {\n name: \"Premium_P1\",\n capacity: 1,\n },\n identity: {\n type: \"SystemAssigned\",\n },\n});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: azurerm_signalr_service.test.identity[0].principal_id,\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n ],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\", 'binary')).toString('base64'),\n password: \"\",\n },\n});\nconst test = new azure.signalr.ServiceCustomCertificate(\"test\", {\n signalrServiceId: exampleService.id,\n customCertificateId: exampleCertificate.id,\n}, {\n dependsOn: [azurerm_key_vault_access_policy.example],\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.signalr.Service(\"exampleService\",\n location=azurerm_resource_group[\"test\"][\"location\"],\n resource_group_name=azurerm_resource_group[\"test\"][\"name\"],\n sku=azure.signalr.ServiceSkuArgs(\n name=\"Premium_P1\",\n capacity=1,\n ),\n identity=azure.signalr.ServiceIdentityArgs(\n type=\"SystemAssigned\",\n ))\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=azurerm_signalr_service[\"test\"][\"identity\"][0][\"principal_id\"],\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n ])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\ntest = azure.signalr.ServiceCustomCertificate(\"test\",\n signalr_service_id=example_service.id,\n custom_certificate_id=example_certificate.id,\n opts=pulumi.ResourceOptions(depends_on=[azurerm_key_vault_access_policy[\"example\"]]))\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.SignalR.Service(\"exampleService\", new()\n {\n Location = azurerm_resource_group.Test.Location,\n ResourceGroupName = azurerm_resource_group.Test.Name,\n Sku = new Azure.SignalR.Inputs.ServiceSkuArgs\n {\n Name = \"Premium_P1\",\n Capacity = 1,\n },\n Identity = new Azure.SignalR.Inputs.ServiceIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = azurerm_signalr_service.Test.Identity[0].Principal_id,\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n var test = new Azure.SignalR.ServiceCustomCertificate(\"test\", new()\n {\n SignalrServiceId = exampleService.Id,\n CustomCertificateId = exampleCertificate.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n azurerm_key_vault_access_policy.Example,\n },\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/signalr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := signalr.NewService(ctx, \"exampleService\", \u0026signalr.ServiceArgs{\n\t\t\tLocation: pulumi.Any(azurerm_resource_group.Test.Location),\n\t\t\tResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),\n\t\t\tSku: \u0026signalr.ServiceSkuArgs{\n\t\t\t\tName: pulumi.String(\"Premium_P1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t\tIdentity: \u0026signalr.ServiceIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: pulumi.Any(azurerm_signalr_service.Test.Identity[0].Principal_id),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = signalr.NewServiceCustomCertificate(ctx, \"test\", \u0026signalr.ServiceCustomCertificateArgs{\n\t\t\tSignalrServiceId: exampleService.ID(),\n\t\t\tCustomCertificateId: exampleCertificate.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tazurerm_key_vault_access_policy.Example,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.signalr.Service;\nimport com.pulumi.azure.signalr.ServiceArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceSkuArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceIdentityArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.signalr.ServiceCustomCertificate;\nimport com.pulumi.azure.signalr.ServiceCustomCertificateArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(azurerm_resource_group.test().location())\n .resourceGroupName(azurerm_resource_group.test().name())\n .sku(ServiceSkuArgs.builder()\n .name(\"Premium_P1\")\n .capacity(1)\n .build())\n .identity(ServiceIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies( \n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build(),\n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(azurerm_signalr_service.test().identity()[0].principal_id())\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n var test = new ServiceCustomCertificate(\"test\", ServiceCustomCertificateArgs.builder() \n .signalrServiceId(exampleService.id())\n .customCertificateId(exampleCertificate.id())\n .build(), CustomResourceOptions.builder()\n .dependsOn(azurerm_key_vault_access_policy.example())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCustom Certificate for a SignalR service can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:signalr/serviceCustomCertificate:ServiceCustomCertificate example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/signalR/signalr1/customCertificates/cert1\n```\n\n ", "properties": { "certificateVersion": { "type": "string", @@ -247174,7 +247174,7 @@ } }, "azure:signalr/serviceCustomDomain:ServiceCustomDomain": { - "description": "Manages an Azure SignalR Custom Domain.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.signalr.Service(\"exampleService\", {\n location: azurerm_resource_group.test.location,\n resourceGroupName: azurerm_resource_group.test.name,\n sku: {\n name: \"Premium_P1\",\n capacity: 1,\n },\n identity: {\n type: \"SystemAssigned\",\n },\n});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: azurerm_signalr_service.test.identity[0].principal_id,\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n ],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\"), 'binary').toString('base64'),\n password: \"\",\n },\n});\nconst testServiceCustomCertificate = new azure.signalr.ServiceCustomCertificate(\"testServiceCustomCertificate\", {\n signalrServiceId: exampleService.id,\n customCertificateId: exampleCertificate.id,\n}, {\n dependsOn: [azurerm_key_vault_access_policy.example],\n});\nconst testServiceCustomDomain = new azure.signalr.ServiceCustomDomain(\"testServiceCustomDomain\", {\n signalrServiceId: azurerm_signalr_service.test.id,\n domainName: \"tftest.com\",\n signalrCustomCertificateId: testServiceCustomCertificate.id,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.signalr.Service(\"exampleService\",\n location=azurerm_resource_group[\"test\"][\"location\"],\n resource_group_name=azurerm_resource_group[\"test\"][\"name\"],\n sku=azure.signalr.ServiceSkuArgs(\n name=\"Premium_P1\",\n capacity=1,\n ),\n identity=azure.signalr.ServiceIdentityArgs(\n type=\"SystemAssigned\",\n ))\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=azurerm_signalr_service[\"test\"][\"identity\"][0][\"principal_id\"],\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n ])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\ntest_service_custom_certificate = azure.signalr.ServiceCustomCertificate(\"testServiceCustomCertificate\",\n signalr_service_id=example_service.id,\n custom_certificate_id=example_certificate.id,\n opts=pulumi.ResourceOptions(depends_on=[azurerm_key_vault_access_policy[\"example\"]]))\ntest_service_custom_domain = azure.signalr.ServiceCustomDomain(\"testServiceCustomDomain\",\n signalr_service_id=azurerm_signalr_service[\"test\"][\"id\"],\n domain_name=\"tftest.com\",\n signalr_custom_certificate_id=test_service_custom_certificate.id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\tprivate static string ReadFileBase64(string path) {\n\t\treturn Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n\t}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.SignalR.Service(\"exampleService\", new()\n {\n Location = azurerm_resource_group.Test.Location,\n ResourceGroupName = azurerm_resource_group.Test.Name,\n Sku = new Azure.SignalR.Inputs.ServiceSkuArgs\n {\n Name = \"Premium_P1\",\n Capacity = 1,\n },\n Identity = new Azure.SignalR.Inputs.ServiceIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = azurerm_signalr_service.Test.Identity[0].Principal_id,\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n var testServiceCustomCertificate = new Azure.SignalR.ServiceCustomCertificate(\"testServiceCustomCertificate\", new()\n {\n SignalrServiceId = exampleService.Id,\n CustomCertificateId = exampleCertificate.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n azurerm_key_vault_access_policy.Example,\n },\n });\n\n var testServiceCustomDomain = new Azure.SignalR.ServiceCustomDomain(\"testServiceCustomDomain\", new()\n {\n SignalrServiceId = azurerm_signalr_service.Test.Id,\n DomainName = \"tftest.com\",\n SignalrCustomCertificateId = testServiceCustomCertificate.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/signalr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) pulumi.StringPtrInput {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn pulumi.String(base64.StdEncoding.EncodeToString(fileData[:]))\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := signalr.NewService(ctx, \"exampleService\", \u0026signalr.ServiceArgs{\n\t\t\tLocation: pulumi.Any(azurerm_resource_group.Test.Location),\n\t\t\tResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),\n\t\t\tSku: \u0026signalr.ServiceSkuArgs{\n\t\t\t\tName: pulumi.String(\"Premium_P1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t\tIdentity: \u0026signalr.ServiceIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: pulumi.Any(azurerm_signalr_service.Test.Identity[0].Principal_id),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestServiceCustomCertificate, err := signalr.NewServiceCustomCertificate(ctx, \"testServiceCustomCertificate\", \u0026signalr.ServiceCustomCertificateArgs{\n\t\t\tSignalrServiceId: exampleService.ID(),\n\t\t\tCustomCertificateId: exampleCertificate.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tazurerm_key_vault_access_policy.Example,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = signalr.NewServiceCustomDomain(ctx, \"testServiceCustomDomain\", \u0026signalr.ServiceCustomDomainArgs{\n\t\t\tSignalrServiceId: pulumi.Any(azurerm_signalr_service.Test.Id),\n\t\t\tDomainName: pulumi.String(\"tftest.com\"),\n\t\t\tSignalrCustomCertificateId: testServiceCustomCertificate.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.signalr.Service;\nimport com.pulumi.azure.signalr.ServiceArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceSkuArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceIdentityArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.signalr.ServiceCustomCertificate;\nimport com.pulumi.azure.signalr.ServiceCustomCertificateArgs;\nimport com.pulumi.azure.signalr.ServiceCustomDomain;\nimport com.pulumi.azure.signalr.ServiceCustomDomainArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(azurerm_resource_group.test().location())\n .resourceGroupName(azurerm_resource_group.test().name())\n .sku(ServiceSkuArgs.builder()\n .name(\"Premium_P1\")\n .capacity(1)\n .build())\n .identity(ServiceIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies( \n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build(),\n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(azurerm_signalr_service.test().identity()[0].principal_id())\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n var testServiceCustomCertificate = new ServiceCustomCertificate(\"testServiceCustomCertificate\", ServiceCustomCertificateArgs.builder() \n .signalrServiceId(exampleService.id())\n .customCertificateId(exampleCertificate.id())\n .build(), CustomResourceOptions.builder()\n .dependsOn(azurerm_key_vault_access_policy.example())\n .build());\n\n var testServiceCustomDomain = new ServiceCustomDomain(\"testServiceCustomDomain\", ServiceCustomDomainArgs.builder() \n .signalrServiceId(azurerm_signalr_service.test().id())\n .domainName(\"tftest.com\")\n .signalrCustomCertificateId(testServiceCustomCertificate.id())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCustom Domain for a SignalR service can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:signalr/serviceCustomDomain:ServiceCustomDomain example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/signalR/signalr1/customDomains/customDomain1\n```\n\n ", + "description": "Manages an Azure SignalR Custom Domain.\n\n{{% examples %}}\n## Example Usage\n{{% example %}}\n\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as azure from \"@pulumi/azure\";\nimport * as fs from \"fs\";\n\nconst current = azure.core.getClientConfig({});\nconst exampleResourceGroup = new azure.core.ResourceGroup(\"exampleResourceGroup\", {location: \"West Europe\"});\nconst exampleService = new azure.signalr.Service(\"exampleService\", {\n location: azurerm_resource_group.test.location,\n resourceGroupName: azurerm_resource_group.test.name,\n sku: {\n name: \"Premium_P1\",\n capacity: 1,\n },\n identity: {\n type: \"SystemAssigned\",\n },\n});\nconst exampleKeyVault = new azure.keyvault.KeyVault(\"exampleKeyVault\", {\n location: exampleResourceGroup.location,\n resourceGroupName: exampleResourceGroup.name,\n tenantId: current.then(current =\u003e current.tenantId),\n skuName: \"premium\",\n accessPolicies: [\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: current.then(current =\u003e current.objectId),\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n {\n tenantId: current.then(current =\u003e current.tenantId),\n objectId: azurerm_signalr_service.test.identity[0].principal_id,\n certificatePermissions: [\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secretPermissions: [\n \"Get\",\n \"List\",\n ],\n },\n ],\n});\nconst exampleCertificate = new azure.keyvault.Certificate(\"exampleCertificate\", {\n keyVaultId: exampleKeyVault.id,\n certificate: {\n contents: Buffer.from(fs.readFileSync(\"certificate-to-import.pfx\", 'binary')).toString('base64'),\n password: \"\",\n },\n});\nconst testServiceCustomCertificate = new azure.signalr.ServiceCustomCertificate(\"testServiceCustomCertificate\", {\n signalrServiceId: exampleService.id,\n customCertificateId: exampleCertificate.id,\n}, {\n dependsOn: [azurerm_key_vault_access_policy.example],\n});\nconst testServiceCustomDomain = new azure.signalr.ServiceCustomDomain(\"testServiceCustomDomain\", {\n signalrServiceId: azurerm_signalr_service.test.id,\n domainName: \"tftest.com\",\n signalrCustomCertificateId: testServiceCustomCertificate.id,\n});\n```\n```python\nimport pulumi\nimport base64\nimport pulumi_azure as azure\n\ncurrent = azure.core.get_client_config()\nexample_resource_group = azure.core.ResourceGroup(\"exampleResourceGroup\", location=\"West Europe\")\nexample_service = azure.signalr.Service(\"exampleService\",\n location=azurerm_resource_group[\"test\"][\"location\"],\n resource_group_name=azurerm_resource_group[\"test\"][\"name\"],\n sku=azure.signalr.ServiceSkuArgs(\n name=\"Premium_P1\",\n capacity=1,\n ),\n identity=azure.signalr.ServiceIdentityArgs(\n type=\"SystemAssigned\",\n ))\nexample_key_vault = azure.keyvault.KeyVault(\"exampleKeyVault\",\n location=example_resource_group.location,\n resource_group_name=example_resource_group.name,\n tenant_id=current.tenant_id,\n sku_name=\"premium\",\n access_policies=[\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=current.object_id,\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n azure.keyvault.KeyVaultAccessPolicyArgs(\n tenant_id=current.tenant_id,\n object_id=azurerm_signalr_service[\"test\"][\"identity\"][0][\"principal_id\"],\n certificate_permissions=[\n \"Create\",\n \"Get\",\n \"List\",\n ],\n secret_permissions=[\n \"Get\",\n \"List\",\n ],\n ),\n ])\nexample_certificate = azure.keyvault.Certificate(\"exampleCertificate\",\n key_vault_id=example_key_vault.id,\n certificate=azure.keyvault.CertificateCertificateArgs(\n contents=(lambda path: base64.b64encode(open(path).read().encode()).decode())(\"certificate-to-import.pfx\"),\n password=\"\",\n ))\ntest_service_custom_certificate = azure.signalr.ServiceCustomCertificate(\"testServiceCustomCertificate\",\n signalr_service_id=example_service.id,\n custom_certificate_id=example_certificate.id,\n opts=pulumi.ResourceOptions(depends_on=[azurerm_key_vault_access_policy[\"example\"]]))\ntest_service_custom_domain = azure.signalr.ServiceCustomDomain(\"testServiceCustomDomain\",\n signalr_service_id=azurerm_signalr_service[\"test\"][\"id\"],\n domain_name=\"tftest.com\",\n signalr_custom_certificate_id=test_service_custom_certificate.id)\n```\n```csharp\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing Pulumi;\nusing Azure = Pulumi.Azure;\n\n\t\nstring ReadFileBase64(string path) \n{\n return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path)));\n}\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n var current = Azure.Core.GetClientConfig.Invoke();\n\n var exampleResourceGroup = new Azure.Core.ResourceGroup(\"exampleResourceGroup\", new()\n {\n Location = \"West Europe\",\n });\n\n var exampleService = new Azure.SignalR.Service(\"exampleService\", new()\n {\n Location = azurerm_resource_group.Test.Location,\n ResourceGroupName = azurerm_resource_group.Test.Name,\n Sku = new Azure.SignalR.Inputs.ServiceSkuArgs\n {\n Name = \"Premium_P1\",\n Capacity = 1,\n },\n Identity = new Azure.SignalR.Inputs.ServiceIdentityArgs\n {\n Type = \"SystemAssigned\",\n },\n });\n\n var exampleKeyVault = new Azure.KeyVault.KeyVault(\"exampleKeyVault\", new()\n {\n Location = exampleResourceGroup.Location,\n ResourceGroupName = exampleResourceGroup.Name,\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n SkuName = \"premium\",\n AccessPolicies = new[]\n {\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.ObjectId),\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n new Azure.KeyVault.Inputs.KeyVaultAccessPolicyArgs\n {\n TenantId = current.Apply(getClientConfigResult =\u003e getClientConfigResult.TenantId),\n ObjectId = azurerm_signalr_service.Test.Identity[0].Principal_id,\n CertificatePermissions = new[]\n {\n \"Create\",\n \"Get\",\n \"List\",\n },\n SecretPermissions = new[]\n {\n \"Get\",\n \"List\",\n },\n },\n },\n });\n\n var exampleCertificate = new Azure.KeyVault.Certificate(\"exampleCertificate\", new()\n {\n KeyVaultId = exampleKeyVault.Id,\n KeyVaultCertificate = new Azure.KeyVault.Inputs.CertificateCertificateArgs\n {\n Contents = ReadFileBase64(\"certificate-to-import.pfx\"),\n Password = \"\",\n },\n });\n\n var testServiceCustomCertificate = new Azure.SignalR.ServiceCustomCertificate(\"testServiceCustomCertificate\", new()\n {\n SignalrServiceId = exampleService.Id,\n CustomCertificateId = exampleCertificate.Id,\n }, new CustomResourceOptions\n {\n DependsOn = new[]\n {\n azurerm_key_vault_access_policy.Example,\n },\n });\n\n var testServiceCustomDomain = new Azure.SignalR.ServiceCustomDomain(\"testServiceCustomDomain\", new()\n {\n SignalrServiceId = azurerm_signalr_service.Test.Id,\n DomainName = \"tftest.com\",\n SignalrCustomCertificateId = testServiceCustomCertificate.Id,\n });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/base64\"\n\t\"os\"\n\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault\"\n\t\"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/signalr\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc filebase64OrPanic(path string) string {\n\tif fileData, err := os.ReadFile(path); err == nil {\n\t\treturn base64.StdEncoding.EncodeToString(fileData[:])\n\t} else {\n\t\tpanic(err.Error())\n\t}\n}\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcurrent, err := core.GetClientConfig(ctx, nil, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleResourceGroup, err := core.NewResourceGroup(ctx, \"exampleResourceGroup\", \u0026core.ResourceGroupArgs{\n\t\t\tLocation: pulumi.String(\"West Europe\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleService, err := signalr.NewService(ctx, \"exampleService\", \u0026signalr.ServiceArgs{\n\t\t\tLocation: pulumi.Any(azurerm_resource_group.Test.Location),\n\t\t\tResourceGroupName: pulumi.Any(azurerm_resource_group.Test.Name),\n\t\t\tSku: \u0026signalr.ServiceSkuArgs{\n\t\t\t\tName: pulumi.String(\"Premium_P1\"),\n\t\t\t\tCapacity: pulumi.Int(1),\n\t\t\t},\n\t\t\tIdentity: \u0026signalr.ServiceIdentityArgs{\n\t\t\t\tType: pulumi.String(\"SystemAssigned\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleKeyVault, err := keyvault.NewKeyVault(ctx, \"exampleKeyVault\", \u0026keyvault.KeyVaultArgs{\n\t\t\tLocation: exampleResourceGroup.Location,\n\t\t\tResourceGroupName: exampleResourceGroup.Name,\n\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\tSkuName: pulumi.String(\"premium\"),\n\t\t\tAccessPolicies: keyvault.KeyVaultAccessPolicyArray{\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: *pulumi.String(current.ObjectId),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t\u0026keyvault.KeyVaultAccessPolicyArgs{\n\t\t\t\t\tTenantId: *pulumi.String(current.TenantId),\n\t\t\t\t\tObjectId: pulumi.Any(azurerm_signalr_service.Test.Identity[0].Principal_id),\n\t\t\t\t\tCertificatePermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Create\"),\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t\tSecretPermissions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Get\"),\n\t\t\t\t\t\tpulumi.String(\"List\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\texampleCertificate, err := keyvault.NewCertificate(ctx, \"exampleCertificate\", \u0026keyvault.CertificateArgs{\n\t\t\tKeyVaultId: exampleKeyVault.ID(),\n\t\t\tCertificate: \u0026keyvault.CertificateCertificateArgs{\n\t\t\t\tContents: filebase64OrPanic(\"certificate-to-import.pfx\"),\n\t\t\t\tPassword: pulumi.String(\"\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttestServiceCustomCertificate, err := signalr.NewServiceCustomCertificate(ctx, \"testServiceCustomCertificate\", \u0026signalr.ServiceCustomCertificateArgs{\n\t\t\tSignalrServiceId: exampleService.ID(),\n\t\t\tCustomCertificateId: exampleCertificate.ID(),\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tazurerm_key_vault_access_policy.Example,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = signalr.NewServiceCustomDomain(ctx, \"testServiceCustomDomain\", \u0026signalr.ServiceCustomDomainArgs{\n\t\t\tSignalrServiceId: pulumi.Any(azurerm_signalr_service.Test.Id),\n\t\t\tDomainName: pulumi.String(\"tftest.com\"),\n\t\t\tSignalrCustomCertificateId: testServiceCustomCertificate.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.azure.core.CoreFunctions;\nimport com.pulumi.azure.core.ResourceGroup;\nimport com.pulumi.azure.core.ResourceGroupArgs;\nimport com.pulumi.azure.signalr.Service;\nimport com.pulumi.azure.signalr.ServiceArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceSkuArgs;\nimport com.pulumi.azure.signalr.inputs.ServiceIdentityArgs;\nimport com.pulumi.azure.keyvault.KeyVault;\nimport com.pulumi.azure.keyvault.KeyVaultArgs;\nimport com.pulumi.azure.keyvault.inputs.KeyVaultAccessPolicyArgs;\nimport com.pulumi.azure.keyvault.Certificate;\nimport com.pulumi.azure.keyvault.CertificateArgs;\nimport com.pulumi.azure.keyvault.inputs.CertificateCertificateArgs;\nimport com.pulumi.azure.signalr.ServiceCustomCertificate;\nimport com.pulumi.azure.signalr.ServiceCustomCertificateArgs;\nimport com.pulumi.azure.signalr.ServiceCustomDomain;\nimport com.pulumi.azure.signalr.ServiceCustomDomainArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n public static void main(String[] args) {\n Pulumi.run(App::stack);\n }\n\n public static void stack(Context ctx) {\n final var current = CoreFunctions.getClientConfig();\n\n var exampleResourceGroup = new ResourceGroup(\"exampleResourceGroup\", ResourceGroupArgs.builder() \n .location(\"West Europe\")\n .build());\n\n var exampleService = new Service(\"exampleService\", ServiceArgs.builder() \n .location(azurerm_resource_group.test().location())\n .resourceGroupName(azurerm_resource_group.test().name())\n .sku(ServiceSkuArgs.builder()\n .name(\"Premium_P1\")\n .capacity(1)\n .build())\n .identity(ServiceIdentityArgs.builder()\n .type(\"SystemAssigned\")\n .build())\n .build());\n\n var exampleKeyVault = new KeyVault(\"exampleKeyVault\", KeyVaultArgs.builder() \n .location(exampleResourceGroup.location())\n .resourceGroupName(exampleResourceGroup.name())\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .skuName(\"premium\")\n .accessPolicies( \n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.objectId()))\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build(),\n KeyVaultAccessPolicyArgs.builder()\n .tenantId(current.applyValue(getClientConfigResult -\u003e getClientConfigResult.tenantId()))\n .objectId(azurerm_signalr_service.test().identity()[0].principal_id())\n .certificatePermissions( \n \"Create\",\n \"Get\",\n \"List\")\n .secretPermissions( \n \"Get\",\n \"List\")\n .build())\n .build());\n\n var exampleCertificate = new Certificate(\"exampleCertificate\", CertificateArgs.builder() \n .keyVaultId(exampleKeyVault.id())\n .certificate(CertificateCertificateArgs.builder()\n .contents(Base64.getEncoder().encodeToString(Files.readAllBytes(Paths.get(\"certificate-to-import.pfx\"))))\n .password(\"\")\n .build())\n .build());\n\n var testServiceCustomCertificate = new ServiceCustomCertificate(\"testServiceCustomCertificate\", ServiceCustomCertificateArgs.builder() \n .signalrServiceId(exampleService.id())\n .customCertificateId(exampleCertificate.id())\n .build(), CustomResourceOptions.builder()\n .dependsOn(azurerm_key_vault_access_policy.example())\n .build());\n\n var testServiceCustomDomain = new ServiceCustomDomain(\"testServiceCustomDomain\", ServiceCustomDomainArgs.builder() \n .signalrServiceId(azurerm_signalr_service.test().id())\n .domainName(\"tftest.com\")\n .signalrCustomCertificateId(testServiceCustomCertificate.id())\n .build());\n\n }\n}\n```\n{{% /example %}}\n{{% /examples %}}\n\n## Import\n\nCustom Domain for a SignalR service can be imported using the `resource id`, e.g.\n\n```sh\n $ pulumi import azure:signalr/serviceCustomDomain:ServiceCustomDomain example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.SignalRService/signalR/signalr1/customDomains/customDomain1\n```\n\n ", "properties": { "domainName": { "type": "string", diff --git a/provider/go.mod b/provider/go.mod index 3923316ad2..78b9eeb757 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -8,7 +8,7 @@ require ( github.com/hashicorp/terraform-plugin-sdk/v2 v2.29.0 github.com/hashicorp/terraform-provider-azurerm v1.44.1-0.20220923005104-eaa801c358ff github.com/pulumi/pulumi-terraform-bridge/v3 v3.68.0 - github.com/pulumi/pulumi/sdk/v3 v3.96.2 + github.com/pulumi/pulumi/sdk/v3 v3.97.0 github.com/stretchr/testify v1.8.4 ) @@ -253,3 +253,7 @@ require ( lukechampine.com/frand v1.4.2 // indirect software.sslmate.com/src/go-pkcs12 v0.2.1 // indirect ) + +replace github.com/pulumi/pulumi/pkg/v3 => github.com/pulumi/pulumi/pkg/v3 v3.78.2-0.20231218141242-d45f203c99f7 + +replace github.com/pulumi/pulumi/sdk/v3 => github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7 diff --git a/provider/go.sum b/provider/go.sum index 2405f83162..a6d326f002 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -2200,10 +2200,10 @@ github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4 h1:rIzMmtcVpPX8ynaz6/nW github.com/pulumi/pulumi-terraform-bridge/x/muxer v0.0.4/go.mod h1:Kt8RIZWa/N8rW3+0g6NrqCBmF3o+HuIhFaZpssEkG6w= github.com/pulumi/pulumi-yaml v1.4.3 h1:GO36c7FTl8If20Dn/w2Hi3huP7kmsO00KNaz3GJU0Ws= github.com/pulumi/pulumi-yaml v1.4.3/go.mod h1:1hwsXFnT7hm2ZeftY5fzjkngjs2eT/rv9MsPE48Leb4= -github.com/pulumi/pulumi/pkg/v3 v3.96.2 h1:d+zDsh4K1j90q/upDRkhgxHkspP20Xxd3g6OaMbw574= -github.com/pulumi/pulumi/pkg/v3 v3.96.2/go.mod h1:lR+q06XrnEqRzJXZ6IeHb4nu+U5fswFcc51Q0MRBTio= -github.com/pulumi/pulumi/sdk/v3 v3.96.2 h1:q5ZKdf+e9JR+a6Eiueg0Ohy6jCQGk9pO2V7xI/qGP3I= -github.com/pulumi/pulumi/sdk/v3 v3.96.2/go.mod h1:yvD23IIRiqIXuo4kaZNe5zK/uT0nhO99wr6BVEqoi7A= +github.com/pulumi/pulumi/pkg/v3 v3.78.2-0.20231218141242-d45f203c99f7 h1:a+qLIfU0BGhjyjWtgTlyvj/Eu1fjfxTO4eJ7VH2fXko= +github.com/pulumi/pulumi/pkg/v3 v3.78.2-0.20231218141242-d45f203c99f7/go.mod h1:GmiL5PyX6XW45zwUyoinz7vp1dMdKjDHJORUdoP+RVI= +github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7 h1:zXfLod7sP0MzAZlaMgrpxONdTVuBZ108QowGVZ+G+HI= +github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7/go.mod h1:yvD23IIRiqIXuo4kaZNe5zK/uT0nhO99wr6BVEqoi7A= github.com/pulumi/schema-tools v0.1.2 h1:Fd9xvUjgck4NA+7/jSk7InqCUT4Kj940+EcnbQKpfZo= github.com/pulumi/schema-tools v0.1.2/go.mod h1:62lgj52Tzq11eqWTIaKd+EVyYAu5dEcDJxMhTjvMO/k= github.com/pulumi/terraform-diff-reader v0.0.2 h1:kTE4nEXU3/SYXESvAIem+wyHMI3abqkI3OhJ0G04LLI= diff --git a/sdk/go.mod b/sdk/go.mod index ccaa179aee..5f4a241a88 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -92,3 +92,7 @@ require ( lukechampine.com/frand v1.4.2 // indirect pgregory.net/rapid v0.6.1 // indirect ) + +replace github.com/pulumi/pulumi/pkg/v3 => github.com/pulumi/pulumi/pkg/v3 v3.78.2-0.20231218141242-d45f203c99f7 + +replace github.com/pulumi/pulumi/sdk/v3 => github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7 diff --git a/sdk/go.sum b/sdk/go.sum index 9c7549f06c..085b0ccfa7 100644 --- a/sdk/go.sum +++ b/sdk/go.sum @@ -151,8 +151,8 @@ github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231 h1:vkHw5I/plNdTr435 github.com/pulumi/appdash v0.0.0-20231130102222-75f619a67231/go.mod h1:murToZ2N9hNJzewjHBgfFdXhZKjY3z5cYC1VXk+lbFE= github.com/pulumi/esc v0.5.6 h1:4WV3X7OEVcChIwbSG+JxhZDdmq/q7lFPaSjHRYlPwmI= github.com/pulumi/esc v0.5.6/go.mod h1:wpwNfVS5fV7Kd51j4dJ6FWYlKfxdqyppgp0gtkzqH04= -github.com/pulumi/pulumi/sdk/v3 v3.96.2 h1:q5ZKdf+e9JR+a6Eiueg0Ohy6jCQGk9pO2V7xI/qGP3I= -github.com/pulumi/pulumi/sdk/v3 v3.96.2/go.mod h1:yvD23IIRiqIXuo4kaZNe5zK/uT0nhO99wr6BVEqoi7A= +github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7 h1:zXfLod7sP0MzAZlaMgrpxONdTVuBZ108QowGVZ+G+HI= +github.com/pulumi/pulumi/sdk/v3 v3.97.1-0.20231218141242-d45f203c99f7/go.mod h1:yvD23IIRiqIXuo4kaZNe5zK/uT0nhO99wr6BVEqoi7A= github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= github.com/rivo/uniseg v0.4.4 h1:8TfxU8dW6PdqD27gjM8MVNuicgxIjxpm4K7x4jp8sis= From cecb8823078c90cc8ae6797a3fef2385a37c0c24 Mon Sep 17 00:00:00 2001 From: pulumi-bot Date: Mon, 18 Dec 2023 14:26:51 +0000 Subject: [PATCH 2/2] make build_sdks --- sdk/dotnet/ApiManagement/Certificate.cs | 16 ++++++++++------ .../ApiManagement/GatewayCertificateAuthority.cs | 8 +++++--- .../GatewayHostNameConfiguration.cs | 8 +++++--- sdk/dotnet/AppService/Certificate.cs | 8 +++++--- sdk/dotnet/AppService/PublicCertificate.cs | 8 +++++--- sdk/dotnet/ArcKubernetes/ClusterExtension.cs | 8 +++++--- sdk/dotnet/ArcKubernetes/FluxConfiguration.cs | 8 +++++--- sdk/dotnet/Automation/Certificate.cs | 8 +++++--- sdk/dotnet/Automation/ConnectionCertificate.cs | 8 +++++--- sdk/dotnet/Batch/Certificate.cs | 8 +++++--- sdk/dotnet/Batch/Pool.cs | 8 +++++--- sdk/dotnet/Cdn/FrontdoorSecret.cs | 8 +++++--- sdk/dotnet/Iot/Certificate.cs | 8 +++++--- sdk/dotnet/Iot/IotHubCertificate.cs | 8 +++++--- sdk/dotnet/KeyVault/Certifiate.cs | 8 +++++--- sdk/dotnet/KeyVault/Certificate.cs | 8 +++++--- .../LogicApps/IntegrationAccountAssembly.cs | 8 +++++--- sdk/dotnet/Nginx/Certificate.cs | 8 +++++--- sdk/dotnet/SignalR/ServiceCustomCertificate.cs | 8 +++++--- sdk/dotnet/SignalR/ServiceCustomDomain.cs | 8 +++++--- sdk/go/azure/apimanagement/certificate.go | 8 ++++---- .../apimanagement/gatewayCertificateAuthority.go | 4 ++-- .../gatewayHostNameConfiguration.go | 4 ++-- sdk/go/azure/appservice/certificate.go | 4 ++-- sdk/go/azure/appservice/publicCertificate.go | 4 ++-- sdk/go/azure/arckubernetes/clusterExtension.go | 4 ++-- sdk/go/azure/arckubernetes/fluxConfiguration.go | 4 ++-- sdk/go/azure/automation/certificate.go | 4 ++-- sdk/go/azure/automation/connectionCertificate.go | 4 ++-- sdk/go/azure/batch/certificate.go | 4 ++-- sdk/go/azure/batch/pool.go | 4 ++-- sdk/go/azure/cdn/frontdoorSecret.go | 4 ++-- sdk/go/azure/iot/certificate.go | 4 ++-- sdk/go/azure/iot/iotHubCertificate.go | 4 ++-- sdk/go/azure/keyvault/certifiate.go | 4 ++-- sdk/go/azure/keyvault/certificate.go | 4 ++-- .../logicapps/integrationAccountAssembly.go | 4 ++-- sdk/go/azure/nginx/certificate.go | 4 ++-- sdk/go/azure/signalr/serviceCustomCertificate.go | 4 ++-- sdk/go/azure/signalr/serviceCustomDomain.go | 4 ++-- sdk/nodejs/apimanagement/certificate.ts | 4 ++-- .../apimanagement/gatewayCertificateAuthority.ts | 2 +- .../gatewayHostNameConfiguration.ts | 2 +- sdk/nodejs/appservice/certificate.ts | 2 +- sdk/nodejs/appservice/publicCertificate.ts | 2 +- sdk/nodejs/arckubernetes/clusterExtension.ts | 2 +- sdk/nodejs/arckubernetes/fluxConfiguration.ts | 2 +- sdk/nodejs/automation/certificate.ts | 2 +- sdk/nodejs/automation/connectionCertificate.ts | 2 +- sdk/nodejs/batch/certificate.ts | 2 +- sdk/nodejs/batch/pool.ts | 2 +- sdk/nodejs/cdn/frontdoorSecret.ts | 2 +- sdk/nodejs/iot/certificate.ts | 2 +- sdk/nodejs/iot/iotHubCertificate.ts | 2 +- sdk/nodejs/keyvault/certifiate.ts | 2 +- sdk/nodejs/keyvault/certificate.ts | 2 +- .../logicapps/integrationAccountAssembly.ts | 2 +- sdk/nodejs/nginx/certificate.ts | 2 +- sdk/nodejs/signalr/serviceCustomCertificate.ts | 2 +- sdk/nodejs/signalr/serviceCustomDomain.ts | 2 +- 60 files changed, 168 insertions(+), 126 deletions(-) diff --git a/sdk/dotnet/ApiManagement/Certificate.cs b/sdk/dotnet/ApiManagement/Certificate.cs index de9836aa74..6ddd236091 100644 --- a/sdk/dotnet/ApiManagement/Certificate.cs +++ b/sdk/dotnet/ApiManagement/Certificate.cs @@ -23,9 +23,11 @@ namespace Pulumi.Azure.ApiManagement /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { @@ -62,9 +64,11 @@ namespace Pulumi.Azure.ApiManagement /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/ApiManagement/GatewayCertificateAuthority.cs b/sdk/dotnet/ApiManagement/GatewayCertificateAuthority.cs index 85e5bcd3b4..5096d5552d 100644 --- a/sdk/dotnet/ApiManagement/GatewayCertificateAuthority.cs +++ b/sdk/dotnet/ApiManagement/GatewayCertificateAuthority.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.ApiManagement /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/ApiManagement/GatewayHostNameConfiguration.cs b/sdk/dotnet/ApiManagement/GatewayHostNameConfiguration.cs index 2b506183d5..ce61dba2ab 100644 --- a/sdk/dotnet/ApiManagement/GatewayHostNameConfiguration.cs +++ b/sdk/dotnet/ApiManagement/GatewayHostNameConfiguration.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.ApiManagement /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/AppService/Certificate.cs b/sdk/dotnet/AppService/Certificate.cs index 33c24f6f50..20f76bba7b 100644 --- a/sdk/dotnet/AppService/Certificate.cs +++ b/sdk/dotnet/AppService/Certificate.cs @@ -24,9 +24,11 @@ namespace Pulumi.Azure.AppService /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/AppService/PublicCertificate.cs b/sdk/dotnet/AppService/PublicCertificate.cs index 345b96bfc9..6d1fc9b3f3 100644 --- a/sdk/dotnet/AppService/PublicCertificate.cs +++ b/sdk/dotnet/AppService/PublicCertificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.AppService /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/ArcKubernetes/ClusterExtension.cs b/sdk/dotnet/ArcKubernetes/ClusterExtension.cs index 00ca19b4dd..ad2d591e52 100644 --- a/sdk/dotnet/ArcKubernetes/ClusterExtension.cs +++ b/sdk/dotnet/ArcKubernetes/ClusterExtension.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.ArcKubernetes /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/ArcKubernetes/FluxConfiguration.cs b/sdk/dotnet/ArcKubernetes/FluxConfiguration.cs index 4beb7b411a..0ec0c12132 100644 --- a/sdk/dotnet/ArcKubernetes/FluxConfiguration.cs +++ b/sdk/dotnet/ArcKubernetes/FluxConfiguration.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.ArcKubernetes /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Automation/Certificate.cs b/sdk/dotnet/Automation/Certificate.cs index 08d3f7d96d..0219d34cfc 100644 --- a/sdk/dotnet/Automation/Certificate.cs +++ b/sdk/dotnet/Automation/Certificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.Automation /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Automation/ConnectionCertificate.cs b/sdk/dotnet/Automation/ConnectionCertificate.cs index 2bc32c1b82..f626b35720 100644 --- a/sdk/dotnet/Automation/ConnectionCertificate.cs +++ b/sdk/dotnet/Automation/ConnectionCertificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.Automation /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Batch/Certificate.cs b/sdk/dotnet/Batch/Certificate.cs index b83dbe54c2..55bb64915d 100644 --- a/sdk/dotnet/Batch/Certificate.cs +++ b/sdk/dotnet/Batch/Certificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.Batch /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Batch/Pool.cs b/sdk/dotnet/Batch/Pool.cs index 83755fe086..90d0e1e65a 100644 --- a/sdk/dotnet/Batch/Pool.cs +++ b/sdk/dotnet/Batch/Pool.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.Batch /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Cdn/FrontdoorSecret.cs b/sdk/dotnet/Cdn/FrontdoorSecret.cs index 5064331641..98800eb64b 100644 --- a/sdk/dotnet/Cdn/FrontdoorSecret.cs +++ b/sdk/dotnet/Cdn/FrontdoorSecret.cs @@ -23,9 +23,11 @@ namespace Pulumi.Azure.Cdn /// using Azure = Pulumi.Azure; /// using AzureAD = Pulumi.AzureAD; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Iot/Certificate.cs b/sdk/dotnet/Iot/Certificate.cs index b5f705214e..e3c6a72136 100644 --- a/sdk/dotnet/Iot/Certificate.cs +++ b/sdk/dotnet/Iot/Certificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.Iot /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Iot/IotHubCertificate.cs b/sdk/dotnet/Iot/IotHubCertificate.cs index 6f81d6f8a8..e8b5c93722 100644 --- a/sdk/dotnet/Iot/IotHubCertificate.cs +++ b/sdk/dotnet/Iot/IotHubCertificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.Iot /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/KeyVault/Certifiate.cs b/sdk/dotnet/KeyVault/Certifiate.cs index b84804f1f0..806b556a52 100644 --- a/sdk/dotnet/KeyVault/Certifiate.cs +++ b/sdk/dotnet/KeyVault/Certifiate.cs @@ -30,9 +30,11 @@ namespace Pulumi.Azure.KeyVault /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/KeyVault/Certificate.cs b/sdk/dotnet/KeyVault/Certificate.cs index 9df3727270..73d0bb3c67 100644 --- a/sdk/dotnet/KeyVault/Certificate.cs +++ b/sdk/dotnet/KeyVault/Certificate.cs @@ -30,9 +30,11 @@ namespace Pulumi.Azure.KeyVault /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/LogicApps/IntegrationAccountAssembly.cs b/sdk/dotnet/LogicApps/IntegrationAccountAssembly.cs index a27fa292a6..92cb33ad51 100644 --- a/sdk/dotnet/LogicApps/IntegrationAccountAssembly.cs +++ b/sdk/dotnet/LogicApps/IntegrationAccountAssembly.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.LogicApps /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/Nginx/Certificate.cs b/sdk/dotnet/Nginx/Certificate.cs index 87a4fd0c1d..9c5583f677 100644 --- a/sdk/dotnet/Nginx/Certificate.cs +++ b/sdk/dotnet/Nginx/Certificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.Nginx /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/SignalR/ServiceCustomCertificate.cs b/sdk/dotnet/SignalR/ServiceCustomCertificate.cs index 5dce71d409..19febcfaeb 100644 --- a/sdk/dotnet/SignalR/ServiceCustomCertificate.cs +++ b/sdk/dotnet/SignalR/ServiceCustomCertificate.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.SignalR /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/dotnet/SignalR/ServiceCustomDomain.cs b/sdk/dotnet/SignalR/ServiceCustomDomain.cs index 7496fdfd81..83b0702a51 100644 --- a/sdk/dotnet/SignalR/ServiceCustomDomain.cs +++ b/sdk/dotnet/SignalR/ServiceCustomDomain.cs @@ -22,9 +22,11 @@ namespace Pulumi.Azure.SignalR /// using Pulumi; /// using Azure = Pulumi.Azure; /// - /// private static string ReadFileBase64(string path) { - /// return Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(path))); - /// } + /// + /// string ReadFileBase64(string path) + /// { + /// return Convert.ToBase64String(Encoding.UTF8.GetBytes(File.ReadAllText(path))); + /// } /// /// return await Deployment.RunAsync(() => /// { diff --git a/sdk/go/azure/apimanagement/certificate.go b/sdk/go/azure/apimanagement/certificate.go index 8fd57adc8b..8a44150b34 100644 --- a/sdk/go/azure/apimanagement/certificate.go +++ b/sdk/go/azure/apimanagement/certificate.go @@ -31,9 +31,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } @@ -87,9 +87,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/apimanagement/gatewayCertificateAuthority.go b/sdk/go/azure/apimanagement/gatewayCertificateAuthority.go index 5223664676..c1c9ad5238 100644 --- a/sdk/go/azure/apimanagement/gatewayCertificateAuthority.go +++ b/sdk/go/azure/apimanagement/gatewayCertificateAuthority.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/apimanagement/gatewayHostNameConfiguration.go b/sdk/go/azure/apimanagement/gatewayHostNameConfiguration.go index 4cc188ad26..109bc0e5bf 100644 --- a/sdk/go/azure/apimanagement/gatewayHostNameConfiguration.go +++ b/sdk/go/azure/apimanagement/gatewayHostNameConfiguration.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/appservice/certificate.go b/sdk/go/azure/appservice/certificate.go index 151e149be8..19db2d5e54 100644 --- a/sdk/go/azure/appservice/certificate.go +++ b/sdk/go/azure/appservice/certificate.go @@ -32,9 +32,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/appservice/publicCertificate.go b/sdk/go/azure/appservice/publicCertificate.go index 44fba8a007..f5a4a76fe3 100644 --- a/sdk/go/azure/appservice/publicCertificate.go +++ b/sdk/go/azure/appservice/publicCertificate.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/arckubernetes/clusterExtension.go b/sdk/go/azure/arckubernetes/clusterExtension.go index d77a46ab60..cfc9d0edae 100644 --- a/sdk/go/azure/arckubernetes/clusterExtension.go +++ b/sdk/go/azure/arckubernetes/clusterExtension.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/arckubernetes/fluxConfiguration.go b/sdk/go/azure/arckubernetes/fluxConfiguration.go index c7d747b6e7..f7f9d4c224 100644 --- a/sdk/go/azure/arckubernetes/fluxConfiguration.go +++ b/sdk/go/azure/arckubernetes/fluxConfiguration.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/automation/certificate.go b/sdk/go/azure/automation/certificate.go index 3fa78ca207..f967df9182 100644 --- a/sdk/go/azure/automation/certificate.go +++ b/sdk/go/azure/automation/certificate.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/automation/connectionCertificate.go b/sdk/go/azure/automation/connectionCertificate.go index eb9f9d26ea..c85b9f5323 100644 --- a/sdk/go/azure/automation/connectionCertificate.go +++ b/sdk/go/azure/automation/connectionCertificate.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/batch/certificate.go b/sdk/go/azure/batch/certificate.go index 04a89c472e..598b6f3174 100644 --- a/sdk/go/azure/batch/certificate.go +++ b/sdk/go/azure/batch/certificate.go @@ -31,9 +31,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/batch/pool.go b/sdk/go/azure/batch/pool.go index 2f5d2c01cf..841d478825 100644 --- a/sdk/go/azure/batch/pool.go +++ b/sdk/go/azure/batch/pool.go @@ -31,9 +31,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/cdn/frontdoorSecret.go b/sdk/go/azure/cdn/frontdoorSecret.go index cda81d3323..f24cfec6d6 100644 --- a/sdk/go/azure/cdn/frontdoorSecret.go +++ b/sdk/go/azure/cdn/frontdoorSecret.go @@ -32,9 +32,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/iot/certificate.go b/sdk/go/azure/iot/certificate.go index b904ff30bf..a31e56f3a6 100644 --- a/sdk/go/azure/iot/certificate.go +++ b/sdk/go/azure/iot/certificate.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/iot/iotHubCertificate.go b/sdk/go/azure/iot/iotHubCertificate.go index c26f068b3f..02c6e59eec 100644 --- a/sdk/go/azure/iot/iotHubCertificate.go +++ b/sdk/go/azure/iot/iotHubCertificate.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/keyvault/certifiate.go b/sdk/go/azure/keyvault/certifiate.go index cd562c81d7..55d360ec27 100644 --- a/sdk/go/azure/keyvault/certifiate.go +++ b/sdk/go/azure/keyvault/certifiate.go @@ -38,9 +38,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/keyvault/certificate.go b/sdk/go/azure/keyvault/certificate.go index aa0c4f8e5d..a73c6cb175 100644 --- a/sdk/go/azure/keyvault/certificate.go +++ b/sdk/go/azure/keyvault/certificate.go @@ -38,9 +38,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/logicapps/integrationAccountAssembly.go b/sdk/go/azure/logicapps/integrationAccountAssembly.go index 612d939db9..6a35309143 100644 --- a/sdk/go/azure/logicapps/integrationAccountAssembly.go +++ b/sdk/go/azure/logicapps/integrationAccountAssembly.go @@ -30,9 +30,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/nginx/certificate.go b/sdk/go/azure/nginx/certificate.go index 31821d6767..6c87e83cc6 100644 --- a/sdk/go/azure/nginx/certificate.go +++ b/sdk/go/azure/nginx/certificate.go @@ -32,9 +32,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/signalr/serviceCustomCertificate.go b/sdk/go/azure/signalr/serviceCustomCertificate.go index 9ffd016f31..0ea7a5c4a2 100644 --- a/sdk/go/azure/signalr/serviceCustomCertificate.go +++ b/sdk/go/azure/signalr/serviceCustomCertificate.go @@ -31,9 +31,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/go/azure/signalr/serviceCustomDomain.go b/sdk/go/azure/signalr/serviceCustomDomain.go index 8bc3066fd0..f62aca5688 100644 --- a/sdk/go/azure/signalr/serviceCustomDomain.go +++ b/sdk/go/azure/signalr/serviceCustomDomain.go @@ -31,9 +31,9 @@ import ( // // ) // -// func filebase64OrPanic(path string) pulumi.StringPtrInput { +// func filebase64OrPanic(path string) string { // if fileData, err := os.ReadFile(path); err == nil { -// return pulumi.String(base64.StdEncoding.EncodeToString(fileData[:])) +// return base64.StdEncoding.EncodeToString(fileData[:]) // } else { // panic(err.Error()) // } diff --git a/sdk/nodejs/apimanagement/certificate.ts b/sdk/nodejs/apimanagement/certificate.ts index 462a00f476..3f8d37e41c 100644 --- a/sdk/nodejs/apimanagement/certificate.ts +++ b/sdk/nodejs/apimanagement/certificate.ts @@ -26,7 +26,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.apimanagement.Certificate("exampleCertificate", { * apiManagementName: exampleService.name, * resourceGroupName: exampleResourceGroup.name, - * data: Buffer.from(fs.readFileSync("example.pfx"), 'binary').toString('base64'), + * data: Buffer.from(fs.readFileSync("example.pfx", 'binary')).toString('base64'), * }); * ``` * ### With Key Vault Certificate) @@ -64,7 +64,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.keyvault.Certificate("exampleCertificate", { * keyVaultId: exampleKeyVault.id, * certificate: { - * contents: Buffer.from(fs.readFileSync("example_cert.pfx"), 'binary').toString('base64'), + * contents: Buffer.from(fs.readFileSync("example_cert.pfx", 'binary')).toString('base64'), * password: "terraform", * }, * certificatePolicy: { diff --git a/sdk/nodejs/apimanagement/gatewayCertificateAuthority.ts b/sdk/nodejs/apimanagement/gatewayCertificateAuthority.ts index 339b3c1c98..d8e22fb750 100644 --- a/sdk/nodejs/apimanagement/gatewayCertificateAuthority.ts +++ b/sdk/nodejs/apimanagement/gatewayCertificateAuthority.ts @@ -35,7 +35,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.apimanagement.Certificate("exampleCertificate", { * apiManagementName: exampleService.name, * resourceGroupName: exampleResourceGroup.name, - * data: Buffer.from(fs.readFileSync("example.pfx"), 'binary').toString('base64'), + * data: Buffer.from(fs.readFileSync("example.pfx", 'binary')).toString('base64'), * }); * const exampleGatewayCertificateAuthority = new azure.apimanagement.GatewayCertificateAuthority("exampleGatewayCertificateAuthority", { * apiManagementId: exampleService.id, diff --git a/sdk/nodejs/apimanagement/gatewayHostNameConfiguration.ts b/sdk/nodejs/apimanagement/gatewayHostNameConfiguration.ts index 8d526c4ae2..0def967f68 100644 --- a/sdk/nodejs/apimanagement/gatewayHostNameConfiguration.ts +++ b/sdk/nodejs/apimanagement/gatewayHostNameConfiguration.ts @@ -35,7 +35,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.apimanagement.Certificate("exampleCertificate", { * apiManagementName: exampleService.name, * resourceGroupName: exampleResourceGroup.name, - * data: Buffer.from(fs.readFileSync("example.pfx"), 'binary').toString('base64'), + * data: Buffer.from(fs.readFileSync("example.pfx", 'binary')).toString('base64'), * }); * const exampleGatewayHostNameConfiguration = new azure.apimanagement.GatewayHostNameConfiguration("exampleGatewayHostNameConfiguration", { * apiManagementId: exampleService.id, diff --git a/sdk/nodejs/appservice/certificate.ts b/sdk/nodejs/appservice/certificate.ts index 6ae51be9f1..b1d8cc4b0f 100644 --- a/sdk/nodejs/appservice/certificate.ts +++ b/sdk/nodejs/appservice/certificate.ts @@ -20,7 +20,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.appservice.Certificate("exampleCertificate", { * resourceGroupName: exampleResourceGroup.name, * location: exampleResourceGroup.location, - * pfxBlob: Buffer.from(fs.readFileSync("certificate.pfx"), 'binary').toString('base64'), + * pfxBlob: Buffer.from(fs.readFileSync("certificate.pfx", 'binary')).toString('base64'), * password: "password123!", * }); * ``` diff --git a/sdk/nodejs/appservice/publicCertificate.ts b/sdk/nodejs/appservice/publicCertificate.ts index 3769adef7b..50766a5a57 100644 --- a/sdk/nodejs/appservice/publicCertificate.ts +++ b/sdk/nodejs/appservice/publicCertificate.ts @@ -33,7 +33,7 @@ import * as utilities from "../utilities"; * appServiceName: exampleAppService.name, * certificateName: "example-public-certificate", * certificateLocation: "Unknown", - * blob: Buffer.from(fs.readFileSync("app_service_public_certificate.cer"), 'binary').toString('base64'), + * blob: Buffer.from(fs.readFileSync("app_service_public_certificate.cer", 'binary')).toString('base64'), * }); * ``` * diff --git a/sdk/nodejs/arckubernetes/clusterExtension.ts b/sdk/nodejs/arckubernetes/clusterExtension.ts index 8a37583359..6bcdf793ff 100644 --- a/sdk/nodejs/arckubernetes/clusterExtension.ts +++ b/sdk/nodejs/arckubernetes/clusterExtension.ts @@ -20,7 +20,7 @@ import * as utilities from "../utilities"; * const exampleCluster = new azure.arckubernetes.Cluster("exampleCluster", { * resourceGroupName: exampleResourceGroup.name, * location: "West Europe", - * agentPublicKeyCertificate: Buffer.from(fs.readFileSync("testdata/public.cer"), 'binary').toString('base64'), + * agentPublicKeyCertificate: Buffer.from(fs.readFileSync("testdata/public.cer", 'binary')).toString('base64'), * identity: { * type: "SystemAssigned", * }, diff --git a/sdk/nodejs/arckubernetes/fluxConfiguration.ts b/sdk/nodejs/arckubernetes/fluxConfiguration.ts index 44ee326db4..0c78347257 100644 --- a/sdk/nodejs/arckubernetes/fluxConfiguration.ts +++ b/sdk/nodejs/arckubernetes/fluxConfiguration.ts @@ -20,7 +20,7 @@ import * as utilities from "../utilities"; * const exampleCluster = new azure.arckubernetes.Cluster("exampleCluster", { * resourceGroupName: exampleResourceGroup.name, * location: "West Europe", - * agentPublicKeyCertificate: Buffer.from(fs.readFileSync("testdata/public.cer"), 'binary').toString('base64'), + * agentPublicKeyCertificate: Buffer.from(fs.readFileSync("testdata/public.cer", 'binary')).toString('base64'), * identity: { * type: "SystemAssigned", * }, diff --git a/sdk/nodejs/automation/certificate.ts b/sdk/nodejs/automation/certificate.ts index 544c02f475..87273b9504 100644 --- a/sdk/nodejs/automation/certificate.ts +++ b/sdk/nodejs/automation/certificate.ts @@ -24,7 +24,7 @@ import * as utilities from "../utilities"; * resourceGroupName: exampleResourceGroup.name, * automationAccountName: exampleAccount.name, * description: "This is an example certificate", - * base64: Buffer.from(fs.readFileSync("certificate.pfx"), 'binary').toString('base64'), + * base64: Buffer.from(fs.readFileSync("certificate.pfx", 'binary')).toString('base64'), * exportable: true, * }); * ``` diff --git a/sdk/nodejs/automation/connectionCertificate.ts b/sdk/nodejs/automation/connectionCertificate.ts index 20db244a0d..24236eb371 100644 --- a/sdk/nodejs/automation/connectionCertificate.ts +++ b/sdk/nodejs/automation/connectionCertificate.ts @@ -24,7 +24,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.automation.Certificate("exampleCertificate", { * resourceGroupName: exampleResourceGroup.name, * automationAccountName: exampleAccount.name, - * base64: Buffer.from(fs.readFileSync("certificate.pfx"), 'binary').toString('base64'), + * base64: Buffer.from(fs.readFileSync("certificate.pfx", 'binary')).toString('base64'), * }); * const exampleConnectionCertificate = new azure.automation.ConnectionCertificate("exampleConnectionCertificate", { * resourceGroupName: exampleResourceGroup.name, diff --git a/sdk/nodejs/batch/certificate.ts b/sdk/nodejs/batch/certificate.ts index be189a226f..185bb126b3 100644 --- a/sdk/nodejs/batch/certificate.ts +++ b/sdk/nodejs/batch/certificate.ts @@ -34,7 +34,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.batch.Certificate("exampleCertificate", { * resourceGroupName: exampleResourceGroup.name, * accountName: exampleBatch / accountAccount.name, - * certificate: Buffer.from(fs.readFileSync("certificate.pfx"), 'binary').toString('base64'), + * certificate: Buffer.from(fs.readFileSync("certificate.pfx", 'binary')).toString('base64'), * format: "Pfx", * password: "password", * thumbprint: "42C107874FD0E4A9583292A2F1098E8FE4B2EDDA", diff --git a/sdk/nodejs/batch/pool.ts b/sdk/nodejs/batch/pool.ts index 5873689f46..4c1de1e62b 100644 --- a/sdk/nodejs/batch/pool.ts +++ b/sdk/nodejs/batch/pool.ts @@ -36,7 +36,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.batch.Certificate("exampleCertificate", { * resourceGroupName: exampleResourceGroup.name, * accountName: exampleBatch / accountAccount.name, - * certificate: Buffer.from(fs.readFileSync("certificate.cer"), 'binary').toString('base64'), + * certificate: Buffer.from(fs.readFileSync("certificate.cer", 'binary')).toString('base64'), * format: "Cer", * thumbprint: "312d31a79fa0cef49c00f769afc2b73e9f4edf34", * thumbprintAlgorithm: "SHA1", diff --git a/sdk/nodejs/cdn/frontdoorSecret.ts b/sdk/nodejs/cdn/frontdoorSecret.ts index d072b737b6..a823578e2b 100644 --- a/sdk/nodejs/cdn/frontdoorSecret.ts +++ b/sdk/nodejs/cdn/frontdoorSecret.ts @@ -55,7 +55,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.keyvault.Certificate("exampleCertificate", { * keyVaultId: exampleKeyVault.id, * certificate: { - * contents: Buffer.from(fs.readFileSync("my-certificate.pfx"), 'binary').toString('base64'), + * contents: Buffer.from(fs.readFileSync("my-certificate.pfx", 'binary')).toString('base64'), * }, * }); * const exampleFrontdoorProfile = new azure.cdn.FrontdoorProfile("exampleFrontdoorProfile", { diff --git a/sdk/nodejs/iot/certificate.ts b/sdk/nodejs/iot/certificate.ts index cdd0c24c91..c433d04af8 100644 --- a/sdk/nodejs/iot/certificate.ts +++ b/sdk/nodejs/iot/certificate.ts @@ -27,7 +27,7 @@ import * as utilities from "../utilities"; * resourceGroupName: exampleResourceGroup.name, * iothubName: exampleIoTHub.name, * isVerified: true, - * certificateContent: Buffer.from(fs.readFileSync("example.cer"), 'binary').toString('base64'), + * certificateContent: Buffer.from(fs.readFileSync("example.cer", 'binary')).toString('base64'), * }); * ``` * diff --git a/sdk/nodejs/iot/iotHubCertificate.ts b/sdk/nodejs/iot/iotHubCertificate.ts index 0d745ce72e..1b4ff2fd23 100644 --- a/sdk/nodejs/iot/iotHubCertificate.ts +++ b/sdk/nodejs/iot/iotHubCertificate.ts @@ -26,7 +26,7 @@ import * as utilities from "../utilities"; * const exampleIotHubCertificate = new azure.iot.IotHubCertificate("exampleIotHubCertificate", { * resourceGroupName: exampleResourceGroup.name, * iotDpsName: exampleIotHubDps.name, - * certificateContent: Buffer.from(fs.readFileSync("example.cer"), 'binary').toString('base64'), + * certificateContent: Buffer.from(fs.readFileSync("example.cer", 'binary')).toString('base64'), * }); * ``` * diff --git a/sdk/nodejs/keyvault/certifiate.ts b/sdk/nodejs/keyvault/certifiate.ts index be1fcecacd..2bc1c8edc3 100644 --- a/sdk/nodejs/keyvault/certifiate.ts +++ b/sdk/nodejs/keyvault/certifiate.ts @@ -81,7 +81,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.keyvault.Certificate("exampleCertificate", { * keyVaultId: exampleKeyVault.id, * certificate: { - * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx"), 'binary').toString('base64'), + * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx", 'binary')).toString('base64'), * password: "", * }, * }); diff --git a/sdk/nodejs/keyvault/certificate.ts b/sdk/nodejs/keyvault/certificate.ts index f51ca6297f..868d6a5337 100644 --- a/sdk/nodejs/keyvault/certificate.ts +++ b/sdk/nodejs/keyvault/certificate.ts @@ -81,7 +81,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.keyvault.Certificate("exampleCertificate", { * keyVaultId: exampleKeyVault.id, * certificate: { - * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx"), 'binary').toString('base64'), + * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx", 'binary')).toString('base64'), * password: "", * }, * }); diff --git a/sdk/nodejs/logicapps/integrationAccountAssembly.ts b/sdk/nodejs/logicapps/integrationAccountAssembly.ts index 23d42cea70..9f10c61d85 100644 --- a/sdk/nodejs/logicapps/integrationAccountAssembly.ts +++ b/sdk/nodejs/logicapps/integrationAccountAssembly.ts @@ -24,7 +24,7 @@ import * as utilities from "../utilities"; * resourceGroupName: exampleResourceGroup.name, * integrationAccountName: exampleIntegrationAccount.name, * assemblyName: "TestAssembly", - * content: Buffer.from(fs.readFileSync("testdata/log4net.dll"), 'binary').toString('base64'), + * content: Buffer.from(fs.readFileSync("testdata/log4net.dll", 'binary')).toString('base64'), * }); * ``` * diff --git a/sdk/nodejs/nginx/certificate.ts b/sdk/nodejs/nginx/certificate.ts index c027790d49..34decae1cb 100644 --- a/sdk/nodejs/nginx/certificate.ts +++ b/sdk/nodejs/nginx/certificate.ts @@ -82,7 +82,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.keyvault.Certificate("exampleCertificate", { * keyVaultId: exampleKeyVault.id, * certificate: { - * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx"), 'binary').toString('base64'), + * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx", 'binary')).toString('base64'), * password: "", * }, * }); diff --git a/sdk/nodejs/signalr/serviceCustomCertificate.ts b/sdk/nodejs/signalr/serviceCustomCertificate.ts index 7e21c9122a..c48bd87c40 100644 --- a/sdk/nodejs/signalr/serviceCustomCertificate.ts +++ b/sdk/nodejs/signalr/serviceCustomCertificate.ts @@ -64,7 +64,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.keyvault.Certificate("exampleCertificate", { * keyVaultId: exampleKeyVault.id, * certificate: { - * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx"), 'binary').toString('base64'), + * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx", 'binary')).toString('base64'), * password: "", * }, * }); diff --git a/sdk/nodejs/signalr/serviceCustomDomain.ts b/sdk/nodejs/signalr/serviceCustomDomain.ts index 1c0944f0ed..c7ded50ae5 100644 --- a/sdk/nodejs/signalr/serviceCustomDomain.ts +++ b/sdk/nodejs/signalr/serviceCustomDomain.ts @@ -64,7 +64,7 @@ import * as utilities from "../utilities"; * const exampleCertificate = new azure.keyvault.Certificate("exampleCertificate", { * keyVaultId: exampleKeyVault.id, * certificate: { - * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx"), 'binary').toString('base64'), + * contents: Buffer.from(fs.readFileSync("certificate-to-import.pfx", 'binary')).toString('base64'), * password: "", * }, * });