Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.azure.hpc.kotlin.inputs
import com.pulumi.azure.hpc.inputs.CacheDefaultAccessPolicyAccessRuleArgs.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.Boolean
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
*
* @property access The access level for this rule. Possible values are: `rw`, `ro`, `no`.
* @property anonymousGid The anonymous GID used when `root_squash_enabled` is `true`.
* @property anonymousUid The anonymous UID used when `root_squash_enabled` is `true`.
* @property filter The filter applied to the `scope` for this rule. The filter's format depends on its scope: `default` scope matches all clients and has no filter value; `network` scope takes a CIDR format; `host` takes an IP address or fully qualified domain name. If a client does not match any filter rule and there is no default rule, access is denied.
* @property rootSquashEnabled Whether to enable [root squash](https://docs.microsoft.com/azure/hpc-cache/access-policies#root-squash)?
* @property scope The scope of this rule. The `scope` and (potentially) the `filter` determine which clients match the rule. Possible values are: `default`, `network`, `host`.
* > **Note:** Each `access_rule` should set a unique `scope`.
* @property submountAccessEnabled Whether allow access to subdirectories under the root export?
* @property suidEnabled Whether [SUID](https://docs.microsoft.com/azure/hpc-cache/access-policies#suid) is allowed?
*/
public data class CacheDefaultAccessPolicyAccessRuleArgs(
public val access: Output,
public val anonymousGid: Output? = null,
public val anonymousUid: Output? = null,
public val filter: Output? = null,
public val rootSquashEnabled: Output? = null,
public val scope: Output,
public val submountAccessEnabled: Output? = null,
public val suidEnabled: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.azure.hpc.inputs.CacheDefaultAccessPolicyAccessRuleArgs =
com.pulumi.azure.hpc.inputs.CacheDefaultAccessPolicyAccessRuleArgs.builder()
.access(access.applyValue({ args0 -> args0 }))
.anonymousGid(anonymousGid?.applyValue({ args0 -> args0 }))
.anonymousUid(anonymousUid?.applyValue({ args0 -> args0 }))
.filter(filter?.applyValue({ args0 -> args0 }))
.rootSquashEnabled(rootSquashEnabled?.applyValue({ args0 -> args0 }))
.scope(scope.applyValue({ args0 -> args0 }))
.submountAccessEnabled(submountAccessEnabled?.applyValue({ args0 -> args0 }))
.suidEnabled(suidEnabled?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [CacheDefaultAccessPolicyAccessRuleArgs].
*/
@PulumiTagMarker
public class CacheDefaultAccessPolicyAccessRuleArgsBuilder internal constructor() {
private var access: Output? = null
private var anonymousGid: Output? = null
private var anonymousUid: Output? = null
private var filter: Output? = null
private var rootSquashEnabled: Output? = null
private var scope: Output? = null
private var submountAccessEnabled: Output? = null
private var suidEnabled: Output? = null
/**
* @param value The access level for this rule. Possible values are: `rw`, `ro`, `no`.
*/
@JvmName("ebjhsyrnvlofjpcl")
public suspend fun access(`value`: Output) {
this.access = value
}
/**
* @param value The anonymous GID used when `root_squash_enabled` is `true`.
*/
@JvmName("uhdjvlegrbfrhnms")
public suspend fun anonymousGid(`value`: Output) {
this.anonymousGid = value
}
/**
* @param value The anonymous UID used when `root_squash_enabled` is `true`.
*/
@JvmName("jsdcpcdaopbqucja")
public suspend fun anonymousUid(`value`: Output) {
this.anonymousUid = value
}
/**
* @param value The filter applied to the `scope` for this rule. The filter's format depends on its scope: `default` scope matches all clients and has no filter value; `network` scope takes a CIDR format; `host` takes an IP address or fully qualified domain name. If a client does not match any filter rule and there is no default rule, access is denied.
*/
@JvmName("hsrhxrvqhgwpnxlm")
public suspend fun filter(`value`: Output) {
this.filter = value
}
/**
* @param value Whether to enable [root squash](https://docs.microsoft.com/azure/hpc-cache/access-policies#root-squash)?
*/
@JvmName("jqxelxpiudnbajdo")
public suspend fun rootSquashEnabled(`value`: Output) {
this.rootSquashEnabled = value
}
/**
* @param value The scope of this rule. The `scope` and (potentially) the `filter` determine which clients match the rule. Possible values are: `default`, `network`, `host`.
* > **Note:** Each `access_rule` should set a unique `scope`.
*/
@JvmName("rsamhrwkrwwxtvji")
public suspend fun scope(`value`: Output) {
this.scope = value
}
/**
* @param value Whether allow access to subdirectories under the root export?
*/
@JvmName("xgwoywkurlvickao")
public suspend fun submountAccessEnabled(`value`: Output) {
this.submountAccessEnabled = value
}
/**
* @param value Whether [SUID](https://docs.microsoft.com/azure/hpc-cache/access-policies#suid) is allowed?
*/
@JvmName("itvsdljmbmygiawf")
public suspend fun suidEnabled(`value`: Output) {
this.suidEnabled = value
}
/**
* @param value The access level for this rule. Possible values are: `rw`, `ro`, `no`.
*/
@JvmName("cdpqsfyhophgbxjd")
public suspend fun access(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.access = mapped
}
/**
* @param value The anonymous GID used when `root_squash_enabled` is `true`.
*/
@JvmName("blagypwwdecnuhyu")
public suspend fun anonymousGid(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.anonymousGid = mapped
}
/**
* @param value The anonymous UID used when `root_squash_enabled` is `true`.
*/
@JvmName("fjkqskwngxtqgmfp")
public suspend fun anonymousUid(`value`: Int?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.anonymousUid = mapped
}
/**
* @param value The filter applied to the `scope` for this rule. The filter's format depends on its scope: `default` scope matches all clients and has no filter value; `network` scope takes a CIDR format; `host` takes an IP address or fully qualified domain name. If a client does not match any filter rule and there is no default rule, access is denied.
*/
@JvmName("hucgunkblfqbxjew")
public suspend fun filter(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.filter = mapped
}
/**
* @param value Whether to enable [root squash](https://docs.microsoft.com/azure/hpc-cache/access-policies#root-squash)?
*/
@JvmName("nqhucsjcetviticw")
public suspend fun rootSquashEnabled(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.rootSquashEnabled = mapped
}
/**
* @param value The scope of this rule. The `scope` and (potentially) the `filter` determine which clients match the rule. Possible values are: `default`, `network`, `host`.
* > **Note:** Each `access_rule` should set a unique `scope`.
*/
@JvmName("qswhectbfttpysia")
public suspend fun scope(`value`: String) {
val toBeMapped = value
val mapped = toBeMapped.let({ args0 -> of(args0) })
this.scope = mapped
}
/**
* @param value Whether allow access to subdirectories under the root export?
*/
@JvmName("bfpixjivwiobidut")
public suspend fun submountAccessEnabled(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.submountAccessEnabled = mapped
}
/**
* @param value Whether [SUID](https://docs.microsoft.com/azure/hpc-cache/access-policies#suid) is allowed?
*/
@JvmName("nxpdregrithddqnx")
public suspend fun suidEnabled(`value`: Boolean?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.suidEnabled = mapped
}
internal fun build(): CacheDefaultAccessPolicyAccessRuleArgs =
CacheDefaultAccessPolicyAccessRuleArgs(
access = access ?: throw PulumiNullFieldException("access"),
anonymousGid = anonymousGid,
anonymousUid = anonymousUid,
filter = filter,
rootSquashEnabled = rootSquashEnabled,
scope = scope ?: throw PulumiNullFieldException("scope"),
submountAccessEnabled = submountAccessEnabled,
suidEnabled = suidEnabled,
)
}