InstanceArgs

data class InstanceArgs(val description: Output<String>? = null, val fileShares: Output<InstanceFileSharesArgs>? = null, val kmsKeyName: Output<String>? = null, val labels: Output<Map<String, String>>? = null, val location: Output<String>? = null, val name: Output<String>? = null, val networks: Output<List<InstanceNetworkArgs>>? = null, val project: Output<String>? = null, val tier: Output<String>? = null, val zone: Output<String>? = null) : ConvertibleToJava<InstanceArgs>

A Google Cloud Filestore instance. To get more information about Instance, see:

Example Usage

Filestore Instance Basic

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.filestore.Instance;
import com.pulumi.gcp.filestore.InstanceArgs;
import com.pulumi.gcp.filestore.inputs.InstanceFileSharesArgs;
import com.pulumi.gcp.filestore.inputs.InstanceNetworkArgs;
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 instance = new Instance("instance", InstanceArgs.builder()
.fileShares(InstanceFileSharesArgs.builder()
.capacityGb(1024)
.name("share1")
.build())
.location("us-central1-b")
.networks(InstanceNetworkArgs.builder()
.modes("MODE_IPV4")
.network("default")
.build())
.tier("BASIC_HDD")
.build());
}
}

Filestore Instance Full

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.filestore.Instance;
import com.pulumi.gcp.filestore.InstanceArgs;
import com.pulumi.gcp.filestore.inputs.InstanceFileSharesArgs;
import com.pulumi.gcp.filestore.inputs.InstanceNetworkArgs;
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 instance = new Instance("instance", InstanceArgs.builder()
.fileShares(InstanceFileSharesArgs.builder()
.capacityGb(2560)
.name("share1")
.nfsExportOptions(
InstanceFileSharesNfsExportOptionArgs.builder()
.accessMode("READ_WRITE")
.ipRanges("10.0.0.0/24")
.squashMode("NO_ROOT_SQUASH")
.build(),
InstanceFileSharesNfsExportOptionArgs.builder()
.accessMode("READ_ONLY")
.anonGid(456)
.anonUid(123)
.ipRanges("10.10.0.0/24")
.squashMode("ROOT_SQUASH")
.build())
.build())
.location("us-central1-b")
.networks(InstanceNetworkArgs.builder()
.connectMode("DIRECT_PEERING")
.modes("MODE_IPV4")
.network("default")
.build())
.tier("BASIC_SSD")
.build());
}
}

Filestore Instance Enterprise

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.kms.KeyRing;
import com.pulumi.gcp.kms.KeyRingArgs;
import com.pulumi.gcp.kms.CryptoKey;
import com.pulumi.gcp.kms.CryptoKeyArgs;
import com.pulumi.gcp.filestore.Instance;
import com.pulumi.gcp.filestore.InstanceArgs;
import com.pulumi.gcp.filestore.inputs.InstanceFileSharesArgs;
import com.pulumi.gcp.filestore.inputs.InstanceNetworkArgs;
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 filestoreKeyring = new KeyRing("filestoreKeyring", KeyRingArgs.builder()
.location("us-central1")
.build());
var filestoreKey = new CryptoKey("filestoreKey", CryptoKeyArgs.builder()
.keyRing(filestoreKeyring.id())
.build());
var instance = new Instance("instance", InstanceArgs.builder()
.location("us-central1")
.tier("ENTERPRISE")
.fileShares(InstanceFileSharesArgs.builder()
.capacityGb(1024)
.name("share1")
.build())
.networks(InstanceNetworkArgs.builder()
.network("default")
.modes("MODE_IPV4")
.build())
.kmsKeyName(filestoreKey.id())
.build());
}
}

Import

Instance can be imported using any of these accepted formats

$ pulumi import gcp:filestore/instance:Instance default projects/{{project}}/locations/{{location}}/instances/{{name}}
$ pulumi import gcp:filestore/instance:Instance default {{project}}/{{location}}/{{name}}
$ pulumi import gcp:filestore/instance:Instance default {{location}}/{{name}}

Constructors

Link copied to clipboard
constructor(description: Output<String>? = null, fileShares: Output<InstanceFileSharesArgs>? = null, kmsKeyName: Output<String>? = null, labels: Output<Map<String, String>>? = null, location: Output<String>? = null, name: Output<String>? = null, networks: Output<List<InstanceNetworkArgs>>? = null, project: Output<String>? = null, tier: Output<String>? = null, zone: Output<String>? = null)

Properties

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

A description of the instance.

Link copied to clipboard
val fileShares: Output<InstanceFileSharesArgs>? = null

File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.

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

KMS key name used for data encryption.

Link copied to clipboard
val labels: Output<Map<String, String>>? = null

Resource labels to represent user-provided metadata.

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

The name of the location of the instance. This can be a region for ENTERPRISE tier instances.

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

The resource name of the instance.

Link copied to clipboard
val networks: Output<List<InstanceNetworkArgs>>? = null

VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.

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

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

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

The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL and ENTERPRISE

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

(Optional, Deprecated) The name of the Filestore zone of the instance.

Functions

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