StorageClassArgs

data class StorageClassArgs(val accessModes: Output<List<Either<String, AccessMode>>>? = null, val allowVolumeExpansion: Output<Either<String, VolumeExpansion>>? = null, val dataResilience: Output<Either<String, DataResilienceTier>>? = null, val failoverSpeed: Output<Either<String, FailoverTier>>? = null, val limitations: Output<List<String>>? = null, val mountOptions: Output<List<String>>? = null, val performance: Output<Either<String, PerformanceTier>>? = null, val priority: Output<Double>? = null, val provisioner: Output<String>? = null, val resourceUri: Output<String>? = null, val storageClassName: Output<String>? = null, val typeProperties: Output<Any>? = null, val volumeBindingMode: Output<Either<String, VolumeBindingMode>>? = null) : ConvertibleToJava<StorageClassArgs>

A StorageClass resource for an Arc connected cluster (Microsoft.Kubernetes/connectedClusters) Uses Azure REST API version 2024-03-01. In version 2.x of the Azure Native provider, it used API version 2024-03-01.

Example Usage

StorageClass_CreateOrUpdate_0

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var storageClass = new AzureNative.KubernetesRuntime.StorageClass("storageClass", new()
{
ResourceUri = "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/example/providers/Microsoft.Kubernetes/connectedClusters/cluster1",
StorageClassName = "testrwx",
TypeProperties = new AzureNative.KubernetesRuntime.Inputs.RwxStorageClassTypePropertiesArgs
{
BackingStorageClassName = "default",
Type = "RWX",
},
});
});
package main
import (
kubernetesruntime "github.com/pulumi/pulumi-azure-native-sdk/kubernetesruntime/v3"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := kubernetesruntime.NewStorageClass(ctx, "storageClass", &kubernetesruntime.StorageClassArgs{
ResourceUri: pulumi.String("subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/example/providers/Microsoft.Kubernetes/connectedClusters/cluster1"),
StorageClassName: pulumi.String("testrwx"),
TypeProperties: &kubernetesruntime.RwxStorageClassTypePropertiesArgs{
BackingStorageClassName: pulumi.String("default"),
Type: pulumi.String("RWX"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.kubernetesruntime.StorageClass;
import com.pulumi.azurenative.kubernetesruntime.StorageClassArgs;
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 storageClass = new StorageClass("storageClass", StorageClassArgs.builder()
.resourceUri("subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/example/providers/Microsoft.Kubernetes/connectedClusters/cluster1")
.storageClassName("testrwx")
.typeProperties(RwxStorageClassTypePropertiesArgs.builder()
.backingStorageClassName("default")
.type("RWX")
.build())
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:kubernetesruntime:StorageClass testrwx /{resourceUri}/providers/Microsoft.KubernetesRuntime/storageClasses/{storageClassName}

Constructors

Link copied to clipboard
constructor(accessModes: Output<List<Either<String, AccessMode>>>? = null, allowVolumeExpansion: Output<Either<String, VolumeExpansion>>? = null, dataResilience: Output<Either<String, DataResilienceTier>>? = null, failoverSpeed: Output<Either<String, FailoverTier>>? = null, limitations: Output<List<String>>? = null, mountOptions: Output<List<String>>? = null, performance: Output<Either<String, PerformanceTier>>? = null, priority: Output<Double>? = null, provisioner: Output<String>? = null, resourceUri: Output<String>? = null, storageClassName: Output<String>? = null, typeProperties: Output<Any>? = null, volumeBindingMode: Output<Either<String, VolumeBindingMode>>? = null)

Properties

Link copied to clipboard
val accessModes: Output<List<Either<String, AccessMode>>>? = null

The access mode: ReadWriteOnce, ReadWriteMany or ReadWriteOnce

Link copied to clipboard
val allowVolumeExpansion: Output<Either<String, VolumeExpansion>>? = null

Volume can be expanded or not

Link copied to clipboard
val dataResilience: Output<Either<String, DataResilienceTier>>? = null

Allow single data node failure

Link copied to clipboard
val failoverSpeed: Output<Either<String, FailoverTier>>? = null

Failover speed: NA, Slow, Fast

Link copied to clipboard
val limitations: Output<List<String>>? = null

Limitations of the storage class

Link copied to clipboard
val mountOptions: Output<List<String>>? = null

Additional mount options

Link copied to clipboard
val performance: Output<Either<String, PerformanceTier>>? = null

Performance tier

Link copied to clipboard
val priority: Output<Double>? = null

Selection priority when multiple storage classes meet the criteria. 0: Highest, -1: Never use

Link copied to clipboard
val provisioner: Output<String>? = null

Provisioner name

Link copied to clipboard
val resourceUri: Output<String>? = null

The fully qualified Azure Resource manager identifier of the resource.

Link copied to clipboard
val storageClassName: Output<String>? = null

The name of the the storage class

Link copied to clipboard
val typeProperties: Output<Any>? = null

Properties of the StorageClass

Link copied to clipboard
val volumeBindingMode: Output<Either<String, VolumeBindingMode>>? = null

Binding mode of volumes: Immediate, WaitForFirstConsumer

Functions

Link copied to clipboard
open override fun toJava(): StorageClassArgs