![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.azure.containerservice.kotlin.KubernetesClusterExtension.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pulumi-azure-kotlin Show documentation
Show all versions of pulumi-azure-kotlin Show documentation
Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.containerservice.kotlin
import com.pulumi.azure.containerservice.kotlin.outputs.KubernetesClusterExtensionAksAssignedIdentity
import com.pulumi.azure.containerservice.kotlin.outputs.KubernetesClusterExtensionPlan
import com.pulumi.core.Output
import com.pulumi.kotlin.KotlinCustomResource
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.ResourceMapper
import com.pulumi.kotlin.options.CustomResourceOptions
import com.pulumi.kotlin.options.CustomResourceOptionsBuilder
import com.pulumi.resources.Resource
import kotlin.Boolean
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.collections.Map
import com.pulumi.azure.containerservice.kotlin.outputs.KubernetesClusterExtensionAksAssignedIdentity.Companion.toKotlin as kubernetesClusterExtensionAksAssignedIdentityToKotlin
import com.pulumi.azure.containerservice.kotlin.outputs.KubernetesClusterExtensionPlan.Companion.toKotlin as kubernetesClusterExtensionPlanToKotlin
/**
* Builder for [KubernetesClusterExtension].
*/
@PulumiTagMarker
public class KubernetesClusterExtensionResourceBuilder internal constructor() {
public var name: String? = null
public var args: KubernetesClusterExtensionArgs = KubernetesClusterExtensionArgs()
public var opts: CustomResourceOptions = CustomResourceOptions()
/**
* @param name The _unique_ name of the resulting resource.
*/
public fun name(`value`: String) {
this.name = value
}
/**
* @param block The arguments to use to populate this resource's properties.
*/
public suspend fun args(block: suspend KubernetesClusterExtensionArgsBuilder.() -> Unit) {
val builder = KubernetesClusterExtensionArgsBuilder()
block(builder)
this.args = builder.build()
}
/**
* @param block A bag of options that control this resource's behavior.
*/
public suspend fun opts(block: suspend CustomResourceOptionsBuilder.() -> Unit) {
this.opts = com.pulumi.kotlin.options.CustomResourceOptions.opts(block)
}
internal fun build(): KubernetesClusterExtension {
val builtJavaResource =
com.pulumi.azure.containerservice.KubernetesClusterExtension(
this.name,
this.args.toJava(),
this.opts.toJava(),
)
return KubernetesClusterExtension(builtJavaResource)
}
}
/**
* Manages a Kubernetes Cluster Extension.
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as azure from "@pulumi/azure";
* const example = new azure.core.ResourceGroup("example", {
* name: "example-resources",
* location: "West Europe",
* });
* const exampleKubernetesCluster = new azure.containerservice.KubernetesCluster("example", {
* name: "example-aks",
* location: "West Europe",
* resourceGroupName: example.name,
* dnsPrefix: "example-aks",
* defaultNodePool: {
* name: "default",
* nodeCount: 1,
* vmSize: "Standard_DS2_v2",
* },
* identity: {
* type: "SystemAssigned",
* },
* });
* const exampleKubernetesClusterExtension = new azure.containerservice.KubernetesClusterExtension("example", {
* name: "example-ext",
* clusterId: exampleKubernetesCluster.id,
* extensionType: "microsoft.flux",
* });
* ```
* ```python
* import pulumi
* import pulumi_azure as azure
* example = azure.core.ResourceGroup("example",
* name="example-resources",
* location="West Europe")
* example_kubernetes_cluster = azure.containerservice.KubernetesCluster("example",
* name="example-aks",
* location="West Europe",
* resource_group_name=example.name,
* dns_prefix="example-aks",
* default_node_pool={
* "name": "default",
* "node_count": 1,
* "vm_size": "Standard_DS2_v2",
* },
* identity={
* "type": "SystemAssigned",
* })
* example_kubernetes_cluster_extension = azure.containerservice.KubernetesClusterExtension("example",
* name="example-ext",
* cluster_id=example_kubernetes_cluster.id,
* extension_type="microsoft.flux")
* ```
* ```csharp
* using System.Collections.Generic;
* using System.Linq;
* using Pulumi;
* using Azure = Pulumi.Azure;
* return await Deployment.RunAsync(() =>
* {
* var example = new Azure.Core.ResourceGroup("example", new()
* {
* Name = "example-resources",
* Location = "West Europe",
* });
* var exampleKubernetesCluster = new Azure.ContainerService.KubernetesCluster("example", new()
* {
* Name = "example-aks",
* Location = "West Europe",
* ResourceGroupName = example.Name,
* DnsPrefix = "example-aks",
* DefaultNodePool = new Azure.ContainerService.Inputs.KubernetesClusterDefaultNodePoolArgs
* {
* Name = "default",
* NodeCount = 1,
* VmSize = "Standard_DS2_v2",
* },
* Identity = new Azure.ContainerService.Inputs.KubernetesClusterIdentityArgs
* {
* Type = "SystemAssigned",
* },
* });
* var exampleKubernetesClusterExtension = new Azure.ContainerService.KubernetesClusterExtension("example", new()
* {
* Name = "example-ext",
* ClusterId = exampleKubernetesCluster.Id,
* ExtensionType = "microsoft.flux",
* });
* });
* ```
* ```go
* package main
* import (
* "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/containerservice"
* "github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
* "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
* }
* exampleKubernetesCluster, err := containerservice.NewKubernetesCluster(ctx, "example", &containerservice.KubernetesClusterArgs{
* Name: pulumi.String("example-aks"),
* Location: pulumi.String("West Europe"),
* ResourceGroupName: example.Name,
* DnsPrefix: pulumi.String("example-aks"),
* DefaultNodePool: &containerservice.KubernetesClusterDefaultNodePoolArgs{
* Name: pulumi.String("default"),
* NodeCount: pulumi.Int(1),
* VmSize: pulumi.String("Standard_DS2_v2"),
* },
* Identity: &containerservice.KubernetesClusterIdentityArgs{
* Type: pulumi.String("SystemAssigned"),
* },
* })
* if err != nil {
* return err
* }
* _, err = containerservice.NewKubernetesClusterExtension(ctx, "example", &containerservice.KubernetesClusterExtensionArgs{
* Name: pulumi.String("example-ext"),
* ClusterId: exampleKubernetesCluster.ID(),
* ExtensionType: pulumi.String("microsoft.flux"),
* })
* if err != nil {
* return err
* }
* return nil
* })
* }
* ```
* ```java
* 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.containerservice.KubernetesCluster;
* import com.pulumi.azure.containerservice.KubernetesClusterArgs;
* import com.pulumi.azure.containerservice.inputs.KubernetesClusterDefaultNodePoolArgs;
* import com.pulumi.azure.containerservice.inputs.KubernetesClusterIdentityArgs;
* import com.pulumi.azure.containerservice.KubernetesClusterExtension;
* import com.pulumi.azure.containerservice.KubernetesClusterExtensionArgs;
* 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 exampleKubernetesCluster = new KubernetesCluster("exampleKubernetesCluster", KubernetesClusterArgs.builder()
* .name("example-aks")
* .location("West Europe")
* .resourceGroupName(example.name())
* .dnsPrefix("example-aks")
* .defaultNodePool(KubernetesClusterDefaultNodePoolArgs.builder()
* .name("default")
* .nodeCount(1)
* .vmSize("Standard_DS2_v2")
* .build())
* .identity(KubernetesClusterIdentityArgs.builder()
* .type("SystemAssigned")
* .build())
* .build());
* var exampleKubernetesClusterExtension = new KubernetesClusterExtension("exampleKubernetesClusterExtension", KubernetesClusterExtensionArgs.builder()
* .name("example-ext")
* .clusterId(exampleKubernetesCluster.id())
* .extensionType("microsoft.flux")
* .build());
* }
* }
* ```
* ```yaml
* resources:
* example:
* type: azure:core:ResourceGroup
* properties:
* name: example-resources
* location: West Europe
* exampleKubernetesCluster:
* type: azure:containerservice:KubernetesCluster
* name: example
* properties:
* name: example-aks
* location: West Europe
* resourceGroupName: ${example.name}
* dnsPrefix: example-aks
* defaultNodePool:
* name: default
* nodeCount: 1
* vmSize: Standard_DS2_v2
* identity:
* type: SystemAssigned
* exampleKubernetesClusterExtension:
* type: azure:containerservice:KubernetesClusterExtension
* name: example
* properties:
* name: example-ext
* clusterId: ${exampleKubernetesCluster.id}
* extensionType: microsoft.flux
* ```
*
* ## Import
* Kubernetes Cluster Extension can be imported using the `resource id` for different `cluster_resource_name`, e.g.
* ```sh
* $ pulumi import azure:containerservice/kubernetesClusterExtension:KubernetesClusterExtension example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1/providers/Microsoft.ContainerService/managedClusters/cluster1/providers/Microsoft.KubernetesConfiguration/extensions/extension1
* ```
*/
public class KubernetesClusterExtension internal constructor(
override val javaResource: com.pulumi.azure.containerservice.KubernetesClusterExtension,
) : KotlinCustomResource(javaResource, KubernetesClusterExtensionMapper) {
/**
* An `aks_assigned_identity` block as defined below.
*/
public val aksAssignedIdentities: Output>
get() = javaResource.aksAssignedIdentities().applyValue({ args0 ->
args0.map({ args0 ->
args0.let({ args0 -> kubernetesClusterExtensionAksAssignedIdentityToKotlin(args0) })
})
})
/**
* Specifies the Cluster ID. Changing this forces a new Kubernetes Cluster Extension to be created.
*/
public val clusterId: Output
get() = javaResource.clusterId().applyValue({ args0 -> args0 })
/**
* Configuration settings that are sensitive, as name-value pairs for configuring this extension.
*/
public val configurationProtectedSettings: Output
© 2015 - 2025 Weber Informatics LLC | Privacy Policy