All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.azure.containerservice.kotlin.KubernetesFleetManager.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 6.15.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.containerservice.kotlin

import com.pulumi.azure.containerservice.kotlin.outputs.KubernetesFleetManagerHubProfile
import com.pulumi.azure.containerservice.kotlin.outputs.KubernetesFleetManagerHubProfile.Companion.toKotlin
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.Deprecated
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.Map

/**
 * Builder for [KubernetesFleetManager].
 */
@PulumiTagMarker
public class KubernetesFleetManagerResourceBuilder internal constructor() {
    public var name: String? = null

    public var args: KubernetesFleetManagerArgs = KubernetesFleetManagerArgs()

    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 KubernetesFleetManagerArgsBuilder.() -> Unit) {
        val builder = KubernetesFleetManagerArgsBuilder()
        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(): KubernetesFleetManager {
        val builtJavaResource =
            com.pulumi.azure.containerservice.KubernetesFleetManager(
                this.name,
                this.args.toJava(),
                this.opts.toJava(),
            )
        return KubernetesFleetManager(builtJavaResource)
    }
}

/**
 * 
 * Manages a Kubernetes Fleet Manager.
 * ## 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 exampleKubernetesFleetManager = new azure.containerservice.KubernetesFleetManager("example", {
 *     location: example.location,
 *     name: "example",
 *     resourceGroupName: example.name,
 * });
 * ```
 * ```python
 * import pulumi
 * import pulumi_azure as azure
 * example = azure.core.ResourceGroup("example",
 *     name="example-resources",
 *     location="West Europe")
 * example_kubernetes_fleet_manager = azure.containerservice.KubernetesFleetManager("example",
 *     location=example.location,
 *     name="example",
 *     resource_group_name=example.name)
 * ```
 * ```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 exampleKubernetesFleetManager = new Azure.ContainerService.KubernetesFleetManager("example", new()
 *     {
 *         Location = example.Location,
 *         Name = "example",
 *         ResourceGroupName = example.Name,
 *     });
 * });
 * ```
 * ```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
 * 		}
 * 		_, err = containerservice.NewKubernetesFleetManager(ctx, "example", &containerservice.KubernetesFleetManagerArgs{
 * 			Location:          example.Location,
 * 			Name:              pulumi.String("example"),
 * 			ResourceGroupName: example.Name,
 * 		})
 * 		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.KubernetesFleetManager;
 * import com.pulumi.azure.containerservice.KubernetesFleetManagerArgs;
 * 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 exampleKubernetesFleetManager = new KubernetesFleetManager("exampleKubernetesFleetManager", KubernetesFleetManagerArgs.builder()
 *             .location(example.location())
 *             .name("example")
 *             .resourceGroupName(example.name())
 *             .build());
 *     }
 * }
 * ```
 * ```yaml
 * resources:
 *   example:
 *     type: azure:core:ResourceGroup
 *     properties:
 *       name: example-resources
 *       location: West Europe
 *   exampleKubernetesFleetManager:
 *     type: azure:containerservice:KubernetesFleetManager
 *     name: example
 *     properties:
 *       location: ${example.location}
 *       name: example
 *       resourceGroupName: ${example.name}
 * ```
 * 
 * ## Blocks Reference
 * ### `hub_profile` Block
 * The `hub_profile` block supports the following arguments:
 * * `dns_prefix` - (Required)
 * In addition to the arguments defined above, the `hub_profile` block exports the following attributes:
 * * `fqdn` -
 * * `kubernetes_version` -
 * ## Import
 * An existing Kubernetes Fleet Manager can be imported into Terraform using the `resource id`, e.g.
 * ```sh
 * $ pulumi import azure:containerservice/kubernetesFleetManager:KubernetesFleetManager example /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/fleets/{fleetName}
 * ```
 * * Where `{subscriptionId}` is the ID of the Azure Subscription where the Kubernetes Fleet Manager exists. For example `12345678-1234-9876-4563-123456789012`.
 * * Where `{resourceGroupName}` is the name of Resource Group where this Kubernetes Fleet Manager exists. For example `example-resource-group`.
 * * Where `{fleetName}` is the name of the Fleet. For example `fleetValue`.
 */
public class KubernetesFleetManager internal constructor(
    override val javaResource: com.pulumi.azure.containerservice.KubernetesFleetManager,
) : KotlinCustomResource(javaResource, KubernetesFleetManagerMapper) {
    @Deprecated(
        message = """
  The service team has indicated this field is now deprecated and not to be used, as such we are
      marking it as such and no longer sending it to the API, please see url:
      https://learn.microsoft.com/en-us/azure/kubernetes-fleet/architectural-overview
  """,
    )
    public val hubProfile: Output?
        get() = javaResource.hubProfile().applyValue({ args0 ->
            args0.map({ args0 ->
                args0.let({ args0 ->
                    toKotlin(args0)
                })
            }).orElse(null)
        })

    /**
     * The Azure Region where the Kubernetes Fleet Manager should exist. Changing this forces a new Kubernetes Fleet Manager to be created.
     */
    public val location: Output
        get() = javaResource.location().applyValue({ args0 -> args0 })

    /**
     * Specifies the name of this Kubernetes Fleet Manager. Changing this forces a new Kubernetes Fleet Manager to be created.
     */
    public val name: Output
        get() = javaResource.name().applyValue({ args0 -> args0 })

    /**
     * Specifies the name of the Resource Group within which this Kubernetes Fleet Manager should exist. Changing this forces a new Kubernetes Fleet Manager to be created.
     */
    public val resourceGroupName: Output
        get() = javaResource.resourceGroupName().applyValue({ args0 -> args0 })

    /**
     * A mapping of tags which should be assigned to the Kubernetes Fleet Manager.
     */
    public val tags: Output>?
        get() = javaResource.tags().applyValue({ args0 ->
            args0.map({ args0 ->
                args0.map({ args0 ->
                    args0.key.to(args0.value)
                }).toMap()
            }).orElse(null)
        })
}

public object KubernetesFleetManagerMapper : ResourceMapper {
    override fun supportsMappingOfType(javaResource: Resource): Boolean =
        com.pulumi.azure.containerservice.KubernetesFleetManager::class == javaResource::class

    override fun map(javaResource: Resource): KubernetesFleetManager =
        KubernetesFleetManager(
            javaResource as
                com.pulumi.azure.containerservice.KubernetesFleetManager,
        )
}

/**
 * @see [KubernetesFleetManager].
 * @param name The _unique_ name of the resulting resource.
 * @param block Builder for [KubernetesFleetManager].
 */
public suspend fun kubernetesFleetManager(
    name: String,
    block: suspend KubernetesFleetManagerResourceBuilder.() -> Unit,
): KubernetesFleetManager {
    val builder = KubernetesFleetManagerResourceBuilder()
    builder.name(name)
    block(builder)
    return builder.build()
}

/**
 * @see [KubernetesFleetManager].
 * @param name The _unique_ name of the resulting resource.
 */
public fun kubernetesFleetManager(name: String): KubernetesFleetManager {
    val builder = KubernetesFleetManagerResourceBuilder()
    builder.name(name)
    return builder.build()
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy