1. Packages
  2. Azure Classic
  3. API Docs
  4. arckubernetes
  5. ClusterExtension

We recommend using Azure Native.

Azure Classic v5.72.0 published on Monday, Apr 15, 2024 by Pulumi

azure.arckubernetes.ClusterExtension

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.72.0 published on Monday, Apr 15, 2024 by Pulumi

    Manages an Arc Kubernetes Cluster Extension.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    import * as std from "@pulumi/std";
    
    const example = new azure.core.ResourceGroup("example", {
        name: "example-resources",
        location: "West Europe",
    });
    const exampleCluster = new azure.arckubernetes.Cluster("example", {
        name: "example-akcc",
        resourceGroupName: example.name,
        location: "West Europe",
        agentPublicKeyCertificate: std.filebase64({
            input: "testdata/public.cer",
        }).then(invoke => invoke.result),
        identity: {
            type: "SystemAssigned",
        },
        tags: {
            ENV: "Test",
        },
    });
    const exampleClusterExtension = new azure.arckubernetes.ClusterExtension("example", {
        name: "example-ext",
        clusterId: exampleCluster.id,
        extensionType: "microsoft.flux",
    });
    
    import pulumi
    import pulumi_azure as azure
    import pulumi_std as std
    
    example = azure.core.ResourceGroup("example",
        name="example-resources",
        location="West Europe")
    example_cluster = azure.arckubernetes.Cluster("example",
        name="example-akcc",
        resource_group_name=example.name,
        location="West Europe",
        agent_public_key_certificate=std.filebase64(input="testdata/public.cer").result,
        identity=azure.arckubernetes.ClusterIdentityArgs(
            type="SystemAssigned",
        ),
        tags={
            "ENV": "Test",
        })
    example_cluster_extension = azure.arckubernetes.ClusterExtension("example",
        name="example-ext",
        cluster_id=example_cluster.id,
        extension_type="microsoft.flux")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/arckubernetes"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi-std/sdk/go/std"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
    			Name:     pulumi.String("example-resources"),
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		invokeFilebase64, err := std.Filebase64(ctx, &std.Filebase64Args{
    			Input: "testdata/public.cer",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		exampleCluster, err := arckubernetes.NewCluster(ctx, "example", &arckubernetes.ClusterArgs{
    			Name:                      pulumi.String("example-akcc"),
    			ResourceGroupName:         example.Name,
    			Location:                  pulumi.String("West Europe"),
    			AgentPublicKeyCertificate: invokeFilebase64.Result,
    			Identity: &arckubernetes.ClusterIdentityArgs{
    				Type: pulumi.String("SystemAssigned"),
    			},
    			Tags: pulumi.StringMap{
    				"ENV": pulumi.String("Test"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = arckubernetes.NewClusterExtension(ctx, "example", &arckubernetes.ClusterExtensionArgs{
    			Name:          pulumi.String("example-ext"),
    			ClusterId:     exampleCluster.ID(),
    			ExtensionType: pulumi.String("microsoft.flux"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    using Std = Pulumi.Std;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Azure.Core.ResourceGroup("example", new()
        {
            Name = "example-resources",
            Location = "West Europe",
        });
    
        var exampleCluster = new Azure.ArcKubernetes.Cluster("example", new()
        {
            Name = "example-akcc",
            ResourceGroupName = example.Name,
            Location = "West Europe",
            AgentPublicKeyCertificate = Std.Filebase64.Invoke(new()
            {
                Input = "testdata/public.cer",
            }).Apply(invoke => invoke.Result),
            Identity = new Azure.ArcKubernetes.Inputs.ClusterIdentityArgs
            {
                Type = "SystemAssigned",
            },
            Tags = 
            {
                { "ENV", "Test" },
            },
        });
    
        var exampleClusterExtension = new Azure.ArcKubernetes.ClusterExtension("example", new()
        {
            Name = "example-ext",
            ClusterId = exampleCluster.Id,
            ExtensionType = "microsoft.flux",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.arckubernetes.Cluster;
    import com.pulumi.azure.arckubernetes.ClusterArgs;
    import com.pulumi.azure.arckubernetes.inputs.ClusterIdentityArgs;
    import com.pulumi.azure.arckubernetes.ClusterExtension;
    import com.pulumi.azure.arckubernetes.ClusterExtensionArgs;
    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 example = new ResourceGroup("example", ResourceGroupArgs.builder()        
                .name("example-resources")
                .location("West Europe")
                .build());
    
            var exampleCluster = new Cluster("exampleCluster", ClusterArgs.builder()        
                .name("example-akcc")
                .resourceGroupName(example.name())
                .location("West Europe")
                .agentPublicKeyCertificate(StdFunctions.filebase64(Filebase64Args.builder()
                    .input("testdata/public.cer")
                    .build()).result())
                .identity(ClusterIdentityArgs.builder()
                    .type("SystemAssigned")
                    .build())
                .tags(Map.of("ENV", "Test"))
                .build());
    
            var exampleClusterExtension = new ClusterExtension("exampleClusterExtension", ClusterExtensionArgs.builder()        
                .name("example-ext")
                .clusterId(exampleCluster.id())
                .extensionType("microsoft.flux")
                .build());
    
        }
    }
    
    resources:
      example:
        type: azure:core:ResourceGroup
        properties:
          name: example-resources
          location: West Europe
      exampleCluster:
        type: azure:arckubernetes:Cluster
        name: example
        properties:
          name: example-akcc
          resourceGroupName: ${example.name}
          location: West Europe
          agentPublicKeyCertificate:
            fn::invoke:
              Function: std:filebase64
              Arguments:
                input: testdata/public.cer
              Return: result
          identity:
            type: SystemAssigned
          tags:
            ENV: Test
      exampleClusterExtension:
        type: azure:arckubernetes:ClusterExtension
        name: example
        properties:
          name: example-ext
          clusterId: ${exampleCluster.id}
          extensionType: microsoft.flux
    

    Create ClusterExtension Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ClusterExtension(name: string, args: ClusterExtensionArgs, opts?: CustomResourceOptions);
    @overload
    def ClusterExtension(resource_name: str,
                         args: ClusterExtensionArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def ClusterExtension(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         cluster_id: Optional[str] = None,
                         extension_type: Optional[str] = None,
                         identity: Optional[ClusterExtensionIdentityArgs] = None,
                         configuration_protected_settings: Optional[Mapping[str, str]] = None,
                         configuration_settings: Optional[Mapping[str, str]] = None,
                         name: Optional[str] = None,
                         release_namespace: Optional[str] = None,
                         release_train: Optional[str] = None,
                         target_namespace: Optional[str] = None,
                         version: Optional[str] = None)
    func NewClusterExtension(ctx *Context, name string, args ClusterExtensionArgs, opts ...ResourceOption) (*ClusterExtension, error)
    public ClusterExtension(string name, ClusterExtensionArgs args, CustomResourceOptions? opts = null)
    public ClusterExtension(String name, ClusterExtensionArgs args)
    public ClusterExtension(String name, ClusterExtensionArgs args, CustomResourceOptions options)
    
    type: azure:arckubernetes:ClusterExtension
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ClusterExtensionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ClusterExtensionArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ClusterExtensionArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ClusterExtensionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ClusterExtensionArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var clusterExtensionResource = new Azure.ArcKubernetes.ClusterExtension("clusterExtensionResource", new()
    {
        ClusterId = "string",
        ExtensionType = "string",
        Identity = new Azure.ArcKubernetes.Inputs.ClusterExtensionIdentityArgs
        {
            Type = "string",
            PrincipalId = "string",
            TenantId = "string",
        },
        ConfigurationProtectedSettings = 
        {
            { "string", "string" },
        },
        ConfigurationSettings = 
        {
            { "string", "string" },
        },
        Name = "string",
        ReleaseNamespace = "string",
        ReleaseTrain = "string",
        TargetNamespace = "string",
        Version = "string",
    });
    
    example, err := arckubernetes.NewClusterExtension(ctx, "clusterExtensionResource", &arckubernetes.ClusterExtensionArgs{
    	ClusterId:     pulumi.String("string"),
    	ExtensionType: pulumi.String("string"),
    	Identity: &arckubernetes.ClusterExtensionIdentityArgs{
    		Type:        pulumi.String("string"),
    		PrincipalId: pulumi.String("string"),
    		TenantId:    pulumi.String("string"),
    	},
    	ConfigurationProtectedSettings: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	ConfigurationSettings: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Name:             pulumi.String("string"),
    	ReleaseNamespace: pulumi.String("string"),
    	ReleaseTrain:     pulumi.String("string"),
    	TargetNamespace:  pulumi.String("string"),
    	Version:          pulumi.String("string"),
    })
    
    var clusterExtensionResource = new ClusterExtension("clusterExtensionResource", ClusterExtensionArgs.builder()        
        .clusterId("string")
        .extensionType("string")
        .identity(ClusterExtensionIdentityArgs.builder()
            .type("string")
            .principalId("string")
            .tenantId("string")
            .build())
        .configurationProtectedSettings(Map.of("string", "string"))
        .configurationSettings(Map.of("string", "string"))
        .name("string")
        .releaseNamespace("string")
        .releaseTrain("string")
        .targetNamespace("string")
        .version("string")
        .build());
    
    cluster_extension_resource = azure.arckubernetes.ClusterExtension("clusterExtensionResource",
        cluster_id="string",
        extension_type="string",
        identity=azure.arckubernetes.ClusterExtensionIdentityArgs(
            type="string",
            principal_id="string",
            tenant_id="string",
        ),
        configuration_protected_settings={
            "string": "string",
        },
        configuration_settings={
            "string": "string",
        },
        name="string",
        release_namespace="string",
        release_train="string",
        target_namespace="string",
        version="string")
    
    const clusterExtensionResource = new azure.arckubernetes.ClusterExtension("clusterExtensionResource", {
        clusterId: "string",
        extensionType: "string",
        identity: {
            type: "string",
            principalId: "string",
            tenantId: "string",
        },
        configurationProtectedSettings: {
            string: "string",
        },
        configurationSettings: {
            string: "string",
        },
        name: "string",
        releaseNamespace: "string",
        releaseTrain: "string",
        targetNamespace: "string",
        version: "string",
    });
    
    type: azure:arckubernetes:ClusterExtension
    properties:
        clusterId: string
        configurationProtectedSettings:
            string: string
        configurationSettings:
            string: string
        extensionType: string
        identity:
            principalId: string
            tenantId: string
            type: string
        name: string
        releaseNamespace: string
        releaseTrain: string
        targetNamespace: string
        version: string
    

    ClusterExtension Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The ClusterExtension resource accepts the following input properties:

    ClusterId string
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ExtensionType string
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Identity ClusterExtensionIdentity
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ConfigurationProtectedSettings Dictionary<string, string>
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    ConfigurationSettings Dictionary<string, string>
    Configuration settings, as name-value pairs for configuring this extension.
    Name string
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseNamespace string
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseTrain string
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    TargetNamespace string
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Version string
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ClusterId string
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ExtensionType string
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Identity ClusterExtensionIdentityArgs
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ConfigurationProtectedSettings map[string]string
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    ConfigurationSettings map[string]string
    Configuration settings, as name-value pairs for configuring this extension.
    Name string
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseNamespace string
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseTrain string
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    TargetNamespace string
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Version string
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    clusterId String
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    extensionType String
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity ClusterExtensionIdentity
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configurationProtectedSettings Map<String,String>
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configurationSettings Map<String,String>
    Configuration settings, as name-value pairs for configuring this extension.
    name String
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseNamespace String
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseTrain String
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    targetNamespace String
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version String
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    clusterId string
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    extensionType string
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity ClusterExtensionIdentity
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configurationProtectedSettings {[key: string]: string}
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configurationSettings {[key: string]: string}
    Configuration settings, as name-value pairs for configuring this extension.
    name string
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseNamespace string
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseTrain string
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    targetNamespace string
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version string
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    cluster_id str
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    extension_type str
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity ClusterExtensionIdentityArgs
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configuration_protected_settings Mapping[str, str]
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configuration_settings Mapping[str, str]
    Configuration settings, as name-value pairs for configuring this extension.
    name str
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    release_namespace str
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    release_train str
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    target_namespace str
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version str
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    clusterId String
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    extensionType String
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity Property Map
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configurationProtectedSettings Map<String>
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configurationSettings Map<String>
    Configuration settings, as name-value pairs for configuring this extension.
    name String
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseNamespace String
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseTrain String
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    targetNamespace String
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version String
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ClusterExtension resource produces the following output properties:

    CurrentVersion string
    The current version of the extension.
    Id string
    The provider-assigned unique ID for this managed resource.
    CurrentVersion string
    The current version of the extension.
    Id string
    The provider-assigned unique ID for this managed resource.
    currentVersion String
    The current version of the extension.
    id String
    The provider-assigned unique ID for this managed resource.
    currentVersion string
    The current version of the extension.
    id string
    The provider-assigned unique ID for this managed resource.
    current_version str
    The current version of the extension.
    id str
    The provider-assigned unique ID for this managed resource.
    currentVersion String
    The current version of the extension.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ClusterExtension Resource

    Get an existing ClusterExtension resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ClusterExtensionState, opts?: CustomResourceOptions): ClusterExtension
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            cluster_id: Optional[str] = None,
            configuration_protected_settings: Optional[Mapping[str, str]] = None,
            configuration_settings: Optional[Mapping[str, str]] = None,
            current_version: Optional[str] = None,
            extension_type: Optional[str] = None,
            identity: Optional[ClusterExtensionIdentityArgs] = None,
            name: Optional[str] = None,
            release_namespace: Optional[str] = None,
            release_train: Optional[str] = None,
            target_namespace: Optional[str] = None,
            version: Optional[str] = None) -> ClusterExtension
    func GetClusterExtension(ctx *Context, name string, id IDInput, state *ClusterExtensionState, opts ...ResourceOption) (*ClusterExtension, error)
    public static ClusterExtension Get(string name, Input<string> id, ClusterExtensionState? state, CustomResourceOptions? opts = null)
    public static ClusterExtension get(String name, Output<String> id, ClusterExtensionState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ClusterId string
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ConfigurationProtectedSettings Dictionary<string, string>
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    ConfigurationSettings Dictionary<string, string>
    Configuration settings, as name-value pairs for configuring this extension.
    CurrentVersion string
    The current version of the extension.
    ExtensionType string
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Identity ClusterExtensionIdentity
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Name string
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseNamespace string
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseTrain string
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    TargetNamespace string
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Version string
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ClusterId string
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ConfigurationProtectedSettings map[string]string
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    ConfigurationSettings map[string]string
    Configuration settings, as name-value pairs for configuring this extension.
    CurrentVersion string
    The current version of the extension.
    ExtensionType string
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Identity ClusterExtensionIdentityArgs
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Name string
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseNamespace string
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    ReleaseTrain string
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    TargetNamespace string
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    Version string
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    clusterId String
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configurationProtectedSettings Map<String,String>
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configurationSettings Map<String,String>
    Configuration settings, as name-value pairs for configuring this extension.
    currentVersion String
    The current version of the extension.
    extensionType String
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity ClusterExtensionIdentity
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    name String
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseNamespace String
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseTrain String
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    targetNamespace String
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version String
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    clusterId string
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configurationProtectedSettings {[key: string]: string}
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configurationSettings {[key: string]: string}
    Configuration settings, as name-value pairs for configuring this extension.
    currentVersion string
    The current version of the extension.
    extensionType string
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity ClusterExtensionIdentity
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    name string
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseNamespace string
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseTrain string
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    targetNamespace string
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version string
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    cluster_id str
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configuration_protected_settings Mapping[str, str]
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configuration_settings Mapping[str, str]
    Configuration settings, as name-value pairs for configuring this extension.
    current_version str
    The current version of the extension.
    extension_type str
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity ClusterExtensionIdentityArgs
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    name str
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    release_namespace str
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    release_train str
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    target_namespace str
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version str
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    clusterId String
    Specifies the Cluster ID. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    configurationProtectedSettings Map<String>
    Configuration settings that are sensitive, as name-value pairs for configuring this extension.
    configurationSettings Map<String>
    Configuration settings, as name-value pairs for configuring this extension.
    currentVersion String
    The current version of the extension.
    extensionType String
    Specifies the type of extension. It must be one of the extension types registered with Microsoft.KubernetesConfiguration by the Extension publisher. For more information, please refer to Available Extensions for Arc-enabled Kubernetes clusters. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    identity Property Map
    An identity block as defined below. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    name String
    Specifies the name which should be used for this Arc Kubernetes Cluster Extension. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseNamespace String
    Namespace where the extension release must be placed for a cluster scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    releaseTrain String
    The release train used by this extension. Possible values include but are not limited to Stable, Preview. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    targetNamespace String
    Namespace where the extension will be created for a namespace scoped extension. If this namespace does not exist, it will be created. Changing this forces a new Arc Kubernetes Cluster Extension to be created.
    version String
    User-specified version that the extension should pin to. If it is not set, Azure will use the latest version and auto upgrade it. Changing this forces a new Arc Kubernetes Cluster Extension to be created.

    Supporting Types

    ClusterExtensionIdentity, ClusterExtensionIdentityArgs

    Type string
    Specifies the type of Managed Service Identity. The only possible value is SystemAssigned. Changing this forces a new resource to be created.
    PrincipalId string
    The Principal ID associated with this Managed Service Identity.
    TenantId string
    The Tenant ID associated with this Managed Service Identity.
    Type string
    Specifies the type of Managed Service Identity. The only possible value is SystemAssigned. Changing this forces a new resource to be created.
    PrincipalId string
    The Principal ID associated with this Managed Service Identity.
    TenantId string
    The Tenant ID associated with this Managed Service Identity.
    type String
    Specifies the type of Managed Service Identity. The only possible value is SystemAssigned. Changing this forces a new resource to be created.
    principalId String
    The Principal ID associated with this Managed Service Identity.
    tenantId String
    The Tenant ID associated with this Managed Service Identity.
    type string
    Specifies the type of Managed Service Identity. The only possible value is SystemAssigned. Changing this forces a new resource to be created.
    principalId string
    The Principal ID associated with this Managed Service Identity.
    tenantId string
    The Tenant ID associated with this Managed Service Identity.
    type str
    Specifies the type of Managed Service Identity. The only possible value is SystemAssigned. Changing this forces a new resource to be created.
    principal_id str
    The Principal ID associated with this Managed Service Identity.
    tenant_id str
    The Tenant ID associated with this Managed Service Identity.
    type String
    Specifies the type of Managed Service Identity. The only possible value is SystemAssigned. Changing this forces a new resource to be created.
    principalId String
    The Principal ID associated with this Managed Service Identity.
    tenantId String
    The Tenant ID associated with this Managed Service Identity.

    Import

    Arc Kubernetes Cluster Extension can be imported using the resource id for different cluster_resource_name, e.g.

    $ 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
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Azure Classic v5.72.0 published on Monday, Apr 15, 2024 by Pulumi