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

com.pulumi.azure.managedlustre.kotlin.inputs.FileSystemHsmSettingArgs.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.14.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.azure.managedlustre.kotlin.inputs

import com.pulumi.azure.managedlustre.inputs.FileSystemHsmSettingArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName

/**
 *
 * @property containerId The resource ID of the storage container that is used for hydrating the namespace and archiving from the namespace. Changing this forces a new resource to be created.
 * @property importPrefix The import prefix for the Azure Managed Lustre File System. Only blobs in the non-logging container that start with this path/prefix get hydrated into the cluster namespace. Changing this forces a new resource to be created.
 * > **NOTE:** The roles `Contributor` and `Storage Blob Data Contributor` must be added to the Service Principal `HPC Cache Resource Provider` for the Storage Account. See official docs for more information.
 * @property loggingContainerId The resource ID of the storage container that is used for logging events and errors. Changing this forces a new resource to be created.
 */
public data class FileSystemHsmSettingArgs(
    public val containerId: Output,
    public val importPrefix: Output? = null,
    public val loggingContainerId: Output,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.azure.managedlustre.inputs.FileSystemHsmSettingArgs =
        com.pulumi.azure.managedlustre.inputs.FileSystemHsmSettingArgs.builder()
            .containerId(containerId.applyValue({ args0 -> args0 }))
            .importPrefix(importPrefix?.applyValue({ args0 -> args0 }))
            .loggingContainerId(loggingContainerId.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [FileSystemHsmSettingArgs].
 */
@PulumiTagMarker
public class FileSystemHsmSettingArgsBuilder internal constructor() {
    private var containerId: Output? = null

    private var importPrefix: Output? = null

    private var loggingContainerId: Output? = null

    /**
     * @param value The resource ID of the storage container that is used for hydrating the namespace and archiving from the namespace. Changing this forces a new resource to be created.
     */
    @JvmName("qffxokenmlfrjtqh")
    public suspend fun containerId(`value`: Output) {
        this.containerId = value
    }

    /**
     * @param value The import prefix for the Azure Managed Lustre File System. Only blobs in the non-logging container that start with this path/prefix get hydrated into the cluster namespace. Changing this forces a new resource to be created.
     * > **NOTE:** The roles `Contributor` and `Storage Blob Data Contributor` must be added to the Service Principal `HPC Cache Resource Provider` for the Storage Account. See official docs for more information.
     */
    @JvmName("ybmkdipfkgxwrvod")
    public suspend fun importPrefix(`value`: Output) {
        this.importPrefix = value
    }

    /**
     * @param value The resource ID of the storage container that is used for logging events and errors. Changing this forces a new resource to be created.
     */
    @JvmName("ywvphqqxkheeccvf")
    public suspend fun loggingContainerId(`value`: Output) {
        this.loggingContainerId = value
    }

    /**
     * @param value The resource ID of the storage container that is used for hydrating the namespace and archiving from the namespace. Changing this forces a new resource to be created.
     */
    @JvmName("tfrhbhbhowerquyk")
    public suspend fun containerId(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.containerId = mapped
    }

    /**
     * @param value The import prefix for the Azure Managed Lustre File System. Only blobs in the non-logging container that start with this path/prefix get hydrated into the cluster namespace. Changing this forces a new resource to be created.
     * > **NOTE:** The roles `Contributor` and `Storage Blob Data Contributor` must be added to the Service Principal `HPC Cache Resource Provider` for the Storage Account. See official docs for more information.
     */
    @JvmName("dgxfyuejhxgrgbab")
    public suspend fun importPrefix(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.importPrefix = mapped
    }

    /**
     * @param value The resource ID of the storage container that is used for logging events and errors. Changing this forces a new resource to be created.
     */
    @JvmName("bugcaipjenvtynsy")
    public suspend fun loggingContainerId(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.loggingContainerId = mapped
    }

    internal fun build(): FileSystemHsmSettingArgs = FileSystemHsmSettingArgs(
        containerId = containerId ?: throw PulumiNullFieldException("containerId"),
        importPrefix = importPrefix,
        loggingContainerId = loggingContainerId ?: throw PulumiNullFieldException("loggingContainerId"),
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy