VolumeQuotaRule

class VolumeQuotaRule : KotlinCustomResource

Manages a Volume Quota Rule.

Example Usage

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.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationServiceDelegationArgs;
import com.pulumi.azure.netapp.Account;
import com.pulumi.azure.netapp.AccountArgs;
import com.pulumi.azure.netapp.Pool;
import com.pulumi.azure.netapp.PoolArgs;
import com.pulumi.azure.netapp.Volume;
import com.pulumi.azure.netapp.VolumeArgs;
import com.pulumi.azure.netapp.VolumeQuotaRule;
import com.pulumi.azure.netapp.VolumeQuotaRuleArgs;
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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.addressSpaces("10.0.0.0/16")
.build());
var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.virtualNetworkName(exampleVirtualNetwork.name())
.addressPrefixes("10.0.2.0/24")
.delegations(SubnetDelegationArgs.builder()
.name("netapp")
.serviceDelegation(SubnetDelegationServiceDelegationArgs.builder()
.name("Microsoft.Netapp/volumes")
.actions(
"Microsoft.Network/networkinterfaces/*",
"Microsoft.Network/virtualNetworks/subnets/join/action")
.build())
.build())
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.build());
var examplePool = new Pool("examplePool", PoolArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.accountName(exampleAccount.name())
.serviceLevel("Premium")
.sizeInTb(4)
.build());
var exampleVolume = new Volume("exampleVolume", VolumeArgs.builder()
.location(exampleResourceGroup.location())
.zone("1")
.resourceGroupName(exampleResourceGroup.name())
.accountName(exampleAccount.name())
.poolName(examplePool.name())
.volumePath("my-unique-file-path")
.serviceLevel("Premium")
.subnetId(exampleSubnet.id())
.networkFeatures("Basic")
.protocols("NFSv4.1")
.securityStyle("unix")
.storageQuotaInGb(100)
.snapshotDirectoryVisible(false)
.build());
var quota1 = new VolumeQuotaRule("quota1", VolumeQuotaRuleArgs.builder()
.location(exampleResourceGroup.location())
.volumeId(exampleVolume.id())
.quotaTarget("3001")
.quotaSizeInKib(1024)
.quotaType("IndividualGroupQuota")
.build());
var quota2 = new VolumeQuotaRule("quota2", VolumeQuotaRuleArgs.builder()
.location(exampleResourceGroup.location())
.volumeId(exampleVolume.id())
.quotaTarget("2001")
.quotaSizeInKib(1024)
.quotaType("IndividualUserQuota")
.build());
var quota3 = new VolumeQuotaRule("quota3", VolumeQuotaRuleArgs.builder()
.location(exampleResourceGroup.location())
.volumeId(exampleVolume.id())
.quotaSizeInKib(1024)
.quotaType("DefaultUserQuota")
.build());
var quota4 = new VolumeQuotaRule("quota4", VolumeQuotaRuleArgs.builder()
.location(exampleResourceGroup.location())
.volumeId(exampleVolume.id())
.quotaSizeInKib(1024)
.quotaType("DefaultGroupQuota")
.build());
}
}

Import

Volume Quota Rules can be imported using the resource id, e.g.

$ pulumi import azure:netapp/volumeQuotaRule:VolumeQuotaRule example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.NetApp/netAppAccounts/account1/capacityPools/pool1/volumes/vol1/volumeQuotaRules/quota1

*/

Properties

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val location: Output<String>

The Azure Region where the Volume Quota Rule should exist. Changing this forces a new Volume Quota Rule to be created.

Link copied to clipboard
val name: Output<String>

The name which should be used for this Volume Quota Rule. Changing this forces a new Volume Quota Rule to be created.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val quotaSizeInKib: Output<Int>

Quota size in kibibytes.

Link copied to clipboard
val quotaTarget: Output<String>?

Quota Target. This can be Unix UID/GID for NFSv3/NFSv4.1 volumes and Windows User SID for CIFS based volumes.

Link copied to clipboard
val quotaType: Output<String>

Quota type. Possible values are DefaultGroupQuota, DefaultUserQuota, IndividualGroupQuota and IndividualUserQuota. Please note that IndividualGroupQuota and DefaultGroupQuota are not applicable to SMB and dual-protocol volumes.

Link copied to clipboard
val urn: Output<String>
Link copied to clipboard
val volumeId: Output<String>

The NetApp volume ID where the Volume Quota Rule is assigned to.