IacProfileArgs

data class IacProfileArgs(val branchName: Output<String>? = null, val iacProfileName: Output<String>? = null, val location: Output<String>? = null, val repositoryMainBranch: Output<String>? = null, val repositoryName: Output<String>? = null, val repositoryOwner: Output<String>? = null, val resourceGroupName: Output<String>? = null, val stages: Output<List<StagePropertiesArgs>>? = null, val storageAccountName: Output<String>? = null, val storageAccountResourceGroup: Output<String>? = null, val storageAccountSubscription: Output<String>? = null, val storageContainerName: Output<String>? = null, val tags: Output<Map<String, String>>? = null, val templates: Output<List<IacTemplatePropertiesArgs>>? = null) : ConvertibleToJava<IacProfileArgs>

Resource representation of a IacProfile. Uses Azure REST API version 2024-05-01-preview. In version 2.x of the Azure Native provider, it used API version 2024-05-01-preview. Other available API versions: 2024-08-01-preview, 2025-03-01-preview. These can be accessed by generating a local SDK package using the CLI command pulumi package add azure-native devhub [ApiVersion]. See the ../../../version-guide/#accessing-any-api-version-via-local-packages for details.

Example Usage

Create IacProfile

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var iacProfile = new AzureNative.DevHub.IacProfile("iacProfile", new()
{
IacProfileName = "profile1",
Location = "eastus",
RepositoryName = "localtest",
RepositoryOwner = "qfai",
ResourceGroupName = "resourceGroup1",
Stages = new[]
{
new AzureNative.DevHub.Inputs.StagePropertiesArgs
{
Dependencies = new() { },
GitEnvironment = "Terraform",
StageName = "dev",
},
new AzureNative.DevHub.Inputs.StagePropertiesArgs
{
Dependencies = new[]
{
"dev",
},
GitEnvironment = "Terraform",
StageName = "qa",
},
},
StorageAccountName = "iacbackend",
StorageAccountResourceGroup = "test",
StorageAccountSubscription = "586c20df-c465-4f10-8673-65aa4859e7ca",
StorageContainerName = "tfbackend",
Templates = new[]
{
new AzureNative.DevHub.Inputs.IacTemplatePropertiesArgs
{
InstanceName = "quickinstance",
InstanceStage = "dev",
QuickStartTemplateType = AzureNative.DevHub.QuickStartTemplateType.HCIAKS,
TemplateName = "hciaksss",
},
},
});
});
package main
import (
devhub "github.com/pulumi/pulumi-azure-native-sdk/devhub/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := devhub.NewIacProfile(ctx, "iacProfile", &devhub.IacProfileArgs{
IacProfileName: pulumi.String("profile1"),
Location: pulumi.String("eastus"),
RepositoryName: pulumi.String("localtest"),
RepositoryOwner: pulumi.String("qfai"),
ResourceGroupName: pulumi.String("resourceGroup1"),
Stages: devhub.StagePropertiesArray{
&devhub.StagePropertiesArgs{
Dependencies: pulumi.StringArray{},
GitEnvironment: pulumi.String("Terraform"),
StageName: pulumi.String("dev"),
},
&devhub.StagePropertiesArgs{
Dependencies: pulumi.StringArray{
pulumi.String("dev"),
},
GitEnvironment: pulumi.String("Terraform"),
StageName: pulumi.String("qa"),
},
},
StorageAccountName: pulumi.String("iacbackend"),
StorageAccountResourceGroup: pulumi.String("test"),
StorageAccountSubscription: pulumi.String("586c20df-c465-4f10-8673-65aa4859e7ca"),
StorageContainerName: pulumi.String("tfbackend"),
Templates: devhub.IacTemplatePropertiesArray{
&devhub.IacTemplatePropertiesArgs{
InstanceName: pulumi.String("quickinstance"),
InstanceStage: pulumi.String("dev"),
QuickStartTemplateType: pulumi.String(devhub.QuickStartTemplateTypeHCIAKS),
TemplateName: pulumi.String("hciaksss"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.devhub.IacProfile;
import com.pulumi.azurenative.devhub.IacProfileArgs;
import com.pulumi.azurenative.devhub.inputs.StagePropertiesArgs;
import com.pulumi.azurenative.devhub.inputs.IacTemplatePropertiesArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var iacProfile = new IacProfile("iacProfile", IacProfileArgs.builder()
.iacProfileName("profile1")
.location("eastus")
.repositoryName("localtest")
.repositoryOwner("qfai")
.resourceGroupName("resourceGroup1")
.stages(
StagePropertiesArgs.builder()
.dependencies()
.gitEnvironment("Terraform")
.stageName("dev")
.build(),
StagePropertiesArgs.builder()
.dependencies("dev")
.gitEnvironment("Terraform")
.stageName("qa")
.build())
.storageAccountName("iacbackend")
.storageAccountResourceGroup("test")
.storageAccountSubscription("586c20df-c465-4f10-8673-65aa4859e7ca")
.storageContainerName("tfbackend")
.templates(IacTemplatePropertiesArgs.builder()
.instanceName("quickinstance")
.instanceStage("dev")
.quickStartTemplateType("HCIAKS")
.templateName("hciaksss")
.build())
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:devhub:IacProfile profile1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevHub/iacProfiles/{iacProfileName}

Constructors

Link copied to clipboard
constructor(branchName: Output<String>? = null, iacProfileName: Output<String>? = null, location: Output<String>? = null, repositoryMainBranch: Output<String>? = null, repositoryName: Output<String>? = null, repositoryOwner: Output<String>? = null, resourceGroupName: Output<String>? = null, stages: Output<List<StagePropertiesArgs>>? = null, storageAccountName: Output<String>? = null, storageAccountResourceGroup: Output<String>? = null, storageAccountSubscription: Output<String>? = null, storageContainerName: Output<String>? = null, tags: Output<Map<String, String>>? = null, templates: Output<List<IacTemplatePropertiesArgs>>? = null)

Properties

Link copied to clipboard
val branchName: Output<String>? = null

Repository Branch Name

Link copied to clipboard
val iacProfileName: Output<String>? = null

The name of the IacProfile.

Link copied to clipboard
val location: Output<String>? = null

The geo-location where the resource lives

Link copied to clipboard
val repositoryMainBranch: Output<String>? = null

Repository Main Branch

Link copied to clipboard
val repositoryName: Output<String>? = null

Repository Name

Link copied to clipboard
val repositoryOwner: Output<String>? = null

Repository Owner

Link copied to clipboard
val resourceGroupName: Output<String>? = null

The name of the resource group. The name is case insensitive.

Link copied to clipboard
val stages: Output<List<StagePropertiesArgs>>? = null
Link copied to clipboard
val storageAccountName: Output<String>? = null

Terraform Storage Account Name

Link copied to clipboard
val storageAccountResourceGroup: Output<String>? = null

Terraform Storage Account Resource Group

Link copied to clipboard
val storageAccountSubscription: Output<String>? = null

Terraform Storage Account Subscription

Link copied to clipboard
val storageContainerName: Output<String>? = null

Terraform Container Name

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Resource tags.

Link copied to clipboard

Functions

Link copied to clipboard
open override fun toJava(): IacProfileArgs