gcp.filestore.Instance
Explore with Pulumi AI
A Google Cloud Filestore instance.
To get more information about Instance, see:
Example Usage
Filestore Instance Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.filestore.Instance("instance", {
name: "test-instance",
location: "us-central1-b",
tier: "BASIC_HDD",
fileShares: {
capacityGb: 1024,
name: "share1",
},
networks: [{
network: "default",
modes: ["MODE_IPV4"],
}],
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.filestore.Instance("instance",
name="test-instance",
location="us-central1-b",
tier="BASIC_HDD",
file_shares={
"capacity_gb": 1024,
"name": "share1",
},
networks=[{
"network": "default",
"modes": ["MODE_IPV4"],
}])
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/filestore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := filestore.NewInstance(ctx, "instance", &filestore.InstanceArgs{
Name: pulumi.String("test-instance"),
Location: pulumi.String("us-central1-b"),
Tier: pulumi.String("BASIC_HDD"),
FileShares: &filestore.InstanceFileSharesArgs{
CapacityGb: pulumi.Int(1024),
Name: pulumi.String("share1"),
},
Networks: filestore.InstanceNetworkArray{
&filestore.InstanceNetworkArgs{
Network: pulumi.String("default"),
Modes: pulumi.StringArray{
pulumi.String("MODE_IPV4"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var instance = new Gcp.Filestore.Instance("instance", new()
{
Name = "test-instance",
Location = "us-central1-b",
Tier = "BASIC_HDD",
FileShares = new Gcp.Filestore.Inputs.InstanceFileSharesArgs
{
CapacityGb = 1024,
Name = "share1",
},
Networks = new[]
{
new Gcp.Filestore.Inputs.InstanceNetworkArgs
{
Network = "default",
Modes = new[]
{
"MODE_IPV4",
},
},
},
});
});
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()
.name("test-instance")
.location("us-central1-b")
.tier("BASIC_HDD")
.fileShares(InstanceFileSharesArgs.builder()
.capacityGb(1024)
.name("share1")
.build())
.networks(InstanceNetworkArgs.builder()
.network("default")
.modes("MODE_IPV4")
.build())
.build());
}
}
resources:
instance:
type: gcp:filestore:Instance
properties:
name: test-instance
location: us-central1-b
tier: BASIC_HDD
fileShares:
capacityGb: 1024
name: share1
networks:
- network: default
modes:
- MODE_IPV4
Filestore Instance Full
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.filestore.Instance("instance", {
name: "test-instance",
location: "us-central1-b",
tier: "BASIC_SSD",
fileShares: {
capacityGb: 2560,
name: "share1",
nfsExportOptions: [
{
ipRanges: ["10.0.0.0/24"],
accessMode: "READ_WRITE",
squashMode: "NO_ROOT_SQUASH",
},
{
ipRanges: ["10.10.0.0/24"],
accessMode: "READ_ONLY",
squashMode: "ROOT_SQUASH",
anonUid: 123,
anonGid: 456,
},
],
},
networks: [{
network: "default",
modes: ["MODE_IPV4"],
connectMode: "DIRECT_PEERING",
}],
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.filestore.Instance("instance",
name="test-instance",
location="us-central1-b",
tier="BASIC_SSD",
file_shares={
"capacity_gb": 2560,
"name": "share1",
"nfs_export_options": [
{
"ip_ranges": ["10.0.0.0/24"],
"access_mode": "READ_WRITE",
"squash_mode": "NO_ROOT_SQUASH",
},
{
"ip_ranges": ["10.10.0.0/24"],
"access_mode": "READ_ONLY",
"squash_mode": "ROOT_SQUASH",
"anon_uid": 123,
"anon_gid": 456,
},
],
},
networks=[{
"network": "default",
"modes": ["MODE_IPV4"],
"connect_mode": "DIRECT_PEERING",
}])
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/filestore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := filestore.NewInstance(ctx, "instance", &filestore.InstanceArgs{
Name: pulumi.String("test-instance"),
Location: pulumi.String("us-central1-b"),
Tier: pulumi.String("BASIC_SSD"),
FileShares: &filestore.InstanceFileSharesArgs{
CapacityGb: pulumi.Int(2560),
Name: pulumi.String("share1"),
NfsExportOptions: filestore.InstanceFileSharesNfsExportOptionArray{
&filestore.InstanceFileSharesNfsExportOptionArgs{
IpRanges: pulumi.StringArray{
pulumi.String("10.0.0.0/24"),
},
AccessMode: pulumi.String("READ_WRITE"),
SquashMode: pulumi.String("NO_ROOT_SQUASH"),
},
&filestore.InstanceFileSharesNfsExportOptionArgs{
IpRanges: pulumi.StringArray{
pulumi.String("10.10.0.0/24"),
},
AccessMode: pulumi.String("READ_ONLY"),
SquashMode: pulumi.String("ROOT_SQUASH"),
AnonUid: pulumi.Int(123),
AnonGid: pulumi.Int(456),
},
},
},
Networks: filestore.InstanceNetworkArray{
&filestore.InstanceNetworkArgs{
Network: pulumi.String("default"),
Modes: pulumi.StringArray{
pulumi.String("MODE_IPV4"),
},
ConnectMode: pulumi.String("DIRECT_PEERING"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var instance = new Gcp.Filestore.Instance("instance", new()
{
Name = "test-instance",
Location = "us-central1-b",
Tier = "BASIC_SSD",
FileShares = new Gcp.Filestore.Inputs.InstanceFileSharesArgs
{
CapacityGb = 2560,
Name = "share1",
NfsExportOptions = new[]
{
new Gcp.Filestore.Inputs.InstanceFileSharesNfsExportOptionArgs
{
IpRanges = new[]
{
"10.0.0.0/24",
},
AccessMode = "READ_WRITE",
SquashMode = "NO_ROOT_SQUASH",
},
new Gcp.Filestore.Inputs.InstanceFileSharesNfsExportOptionArgs
{
IpRanges = new[]
{
"10.10.0.0/24",
},
AccessMode = "READ_ONLY",
SquashMode = "ROOT_SQUASH",
AnonUid = 123,
AnonGid = 456,
},
},
},
Networks = new[]
{
new Gcp.Filestore.Inputs.InstanceNetworkArgs
{
Network = "default",
Modes = new[]
{
"MODE_IPV4",
},
ConnectMode = "DIRECT_PEERING",
},
},
});
});
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()
.name("test-instance")
.location("us-central1-b")
.tier("BASIC_SSD")
.fileShares(InstanceFileSharesArgs.builder()
.capacityGb(2560)
.name("share1")
.nfsExportOptions(
InstanceFileSharesNfsExportOptionArgs.builder()
.ipRanges("10.0.0.0/24")
.accessMode("READ_WRITE")
.squashMode("NO_ROOT_SQUASH")
.build(),
InstanceFileSharesNfsExportOptionArgs.builder()
.ipRanges("10.10.0.0/24")
.accessMode("READ_ONLY")
.squashMode("ROOT_SQUASH")
.anonUid(123)
.anonGid(456)
.build())
.build())
.networks(InstanceNetworkArgs.builder()
.network("default")
.modes("MODE_IPV4")
.connectMode("DIRECT_PEERING")
.build())
.build());
}
}
resources:
instance:
type: gcp:filestore:Instance
properties:
name: test-instance
location: us-central1-b
tier: BASIC_SSD
fileShares:
capacityGb: 2560
name: share1
nfsExportOptions:
- ipRanges:
- 10.0.0.0/24
accessMode: READ_WRITE
squashMode: NO_ROOT_SQUASH
- ipRanges:
- 10.10.0.0/24
accessMode: READ_ONLY
squashMode: ROOT_SQUASH
anonUid: 123
anonGid: 456
networks:
- network: default
modes:
- MODE_IPV4
connectMode: DIRECT_PEERING
Filestore Instance Protocol
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.filestore.Instance("instance", {
name: "test-instance",
location: "us-central1",
tier: "ENTERPRISE",
protocol: "NFS_V4_1",
fileShares: {
capacityGb: 1024,
name: "share1",
},
networks: [{
network: "default",
modes: ["MODE_IPV4"],
}],
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.filestore.Instance("instance",
name="test-instance",
location="us-central1",
tier="ENTERPRISE",
protocol="NFS_V4_1",
file_shares={
"capacity_gb": 1024,
"name": "share1",
},
networks=[{
"network": "default",
"modes": ["MODE_IPV4"],
}])
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/filestore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := filestore.NewInstance(ctx, "instance", &filestore.InstanceArgs{
Name: pulumi.String("test-instance"),
Location: pulumi.String("us-central1"),
Tier: pulumi.String("ENTERPRISE"),
Protocol: pulumi.String("NFS_V4_1"),
FileShares: &filestore.InstanceFileSharesArgs{
CapacityGb: pulumi.Int(1024),
Name: pulumi.String("share1"),
},
Networks: filestore.InstanceNetworkArray{
&filestore.InstanceNetworkArgs{
Network: pulumi.String("default"),
Modes: pulumi.StringArray{
pulumi.String("MODE_IPV4"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var instance = new Gcp.Filestore.Instance("instance", new()
{
Name = "test-instance",
Location = "us-central1",
Tier = "ENTERPRISE",
Protocol = "NFS_V4_1",
FileShares = new Gcp.Filestore.Inputs.InstanceFileSharesArgs
{
CapacityGb = 1024,
Name = "share1",
},
Networks = new[]
{
new Gcp.Filestore.Inputs.InstanceNetworkArgs
{
Network = "default",
Modes = new[]
{
"MODE_IPV4",
},
},
},
});
});
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()
.name("test-instance")
.location("us-central1")
.tier("ENTERPRISE")
.protocol("NFS_V4_1")
.fileShares(InstanceFileSharesArgs.builder()
.capacityGb(1024)
.name("share1")
.build())
.networks(InstanceNetworkArgs.builder()
.network("default")
.modes("MODE_IPV4")
.build())
.build());
}
}
resources:
instance:
type: gcp:filestore:Instance
properties:
name: test-instance
location: us-central1
tier: ENTERPRISE
protocol: NFS_V4_1
fileShares:
capacityGb: 1024
name: share1
networks:
- network: default
modes:
- MODE_IPV4
Filestore Instance Enterprise
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const filestoreKeyring = new gcp.kms.KeyRing("filestore_keyring", {
name: "filestore-keyring",
location: "us-central1",
});
const filestoreKey = new gcp.kms.CryptoKey("filestore_key", {
name: "filestore-key",
keyRing: filestoreKeyring.id,
});
const instance = new gcp.filestore.Instance("instance", {
name: "test-instance",
location: "us-central1",
tier: "ENTERPRISE",
fileShares: {
capacityGb: 1024,
name: "share1",
},
networks: [{
network: "default",
modes: ["MODE_IPV4"],
}],
kmsKeyName: filestoreKey.id,
});
import pulumi
import pulumi_gcp as gcp
filestore_keyring = gcp.kms.KeyRing("filestore_keyring",
name="filestore-keyring",
location="us-central1")
filestore_key = gcp.kms.CryptoKey("filestore_key",
name="filestore-key",
key_ring=filestore_keyring.id)
instance = gcp.filestore.Instance("instance",
name="test-instance",
location="us-central1",
tier="ENTERPRISE",
file_shares={
"capacity_gb": 1024,
"name": "share1",
},
networks=[{
"network": "default",
"modes": ["MODE_IPV4"],
}],
kms_key_name=filestore_key.id)
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/filestore"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/kms"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
filestoreKeyring, err := kms.NewKeyRing(ctx, "filestore_keyring", &kms.KeyRingArgs{
Name: pulumi.String("filestore-keyring"),
Location: pulumi.String("us-central1"),
})
if err != nil {
return err
}
filestoreKey, err := kms.NewCryptoKey(ctx, "filestore_key", &kms.CryptoKeyArgs{
Name: pulumi.String("filestore-key"),
KeyRing: filestoreKeyring.ID(),
})
if err != nil {
return err
}
_, err = filestore.NewInstance(ctx, "instance", &filestore.InstanceArgs{
Name: pulumi.String("test-instance"),
Location: pulumi.String("us-central1"),
Tier: pulumi.String("ENTERPRISE"),
FileShares: &filestore.InstanceFileSharesArgs{
CapacityGb: pulumi.Int(1024),
Name: pulumi.String("share1"),
},
Networks: filestore.InstanceNetworkArray{
&filestore.InstanceNetworkArgs{
Network: pulumi.String("default"),
Modes: pulumi.StringArray{
pulumi.String("MODE_IPV4"),
},
},
},
KmsKeyName: filestoreKey.ID(),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var filestoreKeyring = new Gcp.Kms.KeyRing("filestore_keyring", new()
{
Name = "filestore-keyring",
Location = "us-central1",
});
var filestoreKey = new Gcp.Kms.CryptoKey("filestore_key", new()
{
Name = "filestore-key",
KeyRing = filestoreKeyring.Id,
});
var instance = new Gcp.Filestore.Instance("instance", new()
{
Name = "test-instance",
Location = "us-central1",
Tier = "ENTERPRISE",
FileShares = new Gcp.Filestore.Inputs.InstanceFileSharesArgs
{
CapacityGb = 1024,
Name = "share1",
},
Networks = new[]
{
new Gcp.Filestore.Inputs.InstanceNetworkArgs
{
Network = "default",
Modes = new[]
{
"MODE_IPV4",
},
},
},
KmsKeyName = filestoreKey.Id,
});
});
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()
.name("filestore-keyring")
.location("us-central1")
.build());
var filestoreKey = new CryptoKey("filestoreKey", CryptoKeyArgs.builder()
.name("filestore-key")
.keyRing(filestoreKeyring.id())
.build());
var instance = new Instance("instance", InstanceArgs.builder()
.name("test-instance")
.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());
}
}
resources:
instance:
type: gcp:filestore:Instance
properties:
name: test-instance
location: us-central1
tier: ENTERPRISE
fileShares:
capacityGb: 1024
name: share1
networks:
- network: default
modes:
- MODE_IPV4
kmsKeyName: ${filestoreKey.id}
filestoreKeyring:
type: gcp:kms:KeyRing
name: filestore_keyring
properties:
name: filestore-keyring
location: us-central1
filestoreKey:
type: gcp:kms:CryptoKey
name: filestore_key
properties:
name: filestore-key
keyRing: ${filestoreKeyring.id}
Create Instance Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Instance(name: string, args: InstanceArgs, opts?: CustomResourceOptions);
@overload
def Instance(resource_name: str,
args: InstanceArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Instance(resource_name: str,
opts: Optional[ResourceOptions] = None,
file_shares: Optional[InstanceFileSharesArgs] = None,
tier: Optional[str] = None,
networks: Optional[Sequence[InstanceNetworkArgs]] = None,
location: Optional[str] = None,
kms_key_name: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
deletion_protection_enabled: Optional[bool] = None,
name: Optional[str] = None,
description: Optional[str] = None,
project: Optional[str] = None,
protocol: Optional[str] = None,
deletion_protection_reason: Optional[str] = None,
zone: Optional[str] = None)
func NewInstance(ctx *Context, name string, args InstanceArgs, opts ...ResourceOption) (*Instance, error)
public Instance(string name, InstanceArgs args, CustomResourceOptions? opts = null)
public Instance(String name, InstanceArgs args)
public Instance(String name, InstanceArgs args, CustomResourceOptions options)
type: gcp:filestore:Instance
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var exampleinstanceResourceResourceFromFilestoreinstance = new Gcp.Filestore.Instance("exampleinstanceResourceResourceFromFilestoreinstance", new()
{
FileShares = new Gcp.Filestore.Inputs.InstanceFileSharesArgs
{
CapacityGb = 0,
Name = "string",
NfsExportOptions = new[]
{
new Gcp.Filestore.Inputs.InstanceFileSharesNfsExportOptionArgs
{
AccessMode = "string",
AnonGid = 0,
AnonUid = 0,
IpRanges = new[]
{
"string",
},
SquashMode = "string",
},
},
SourceBackup = "string",
},
Tier = "string",
Networks = new[]
{
new Gcp.Filestore.Inputs.InstanceNetworkArgs
{
Modes = new[]
{
"string",
},
Network = "string",
ConnectMode = "string",
IpAddresses = new[]
{
"string",
},
ReservedIpRange = "string",
},
},
Location = "string",
KmsKeyName = "string",
Labels =
{
{ "string", "string" },
},
DeletionProtectionEnabled = false,
Name = "string",
Description = "string",
Project = "string",
Protocol = "string",
DeletionProtectionReason = "string",
});
example, err := filestore.NewInstance(ctx, "exampleinstanceResourceResourceFromFilestoreinstance", &filestore.InstanceArgs{
FileShares: &filestore.InstanceFileSharesArgs{
CapacityGb: pulumi.Int(0),
Name: pulumi.String("string"),
NfsExportOptions: filestore.InstanceFileSharesNfsExportOptionArray{
&filestore.InstanceFileSharesNfsExportOptionArgs{
AccessMode: pulumi.String("string"),
AnonGid: pulumi.Int(0),
AnonUid: pulumi.Int(0),
IpRanges: pulumi.StringArray{
pulumi.String("string"),
},
SquashMode: pulumi.String("string"),
},
},
SourceBackup: pulumi.String("string"),
},
Tier: pulumi.String("string"),
Networks: filestore.InstanceNetworkArray{
&filestore.InstanceNetworkArgs{
Modes: pulumi.StringArray{
pulumi.String("string"),
},
Network: pulumi.String("string"),
ConnectMode: pulumi.String("string"),
IpAddresses: pulumi.StringArray{
pulumi.String("string"),
},
ReservedIpRange: pulumi.String("string"),
},
},
Location: pulumi.String("string"),
KmsKeyName: pulumi.String("string"),
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
DeletionProtectionEnabled: pulumi.Bool(false),
Name: pulumi.String("string"),
Description: pulumi.String("string"),
Project: pulumi.String("string"),
Protocol: pulumi.String("string"),
DeletionProtectionReason: pulumi.String("string"),
})
var exampleinstanceResourceResourceFromFilestoreinstance = new Instance("exampleinstanceResourceResourceFromFilestoreinstance", InstanceArgs.builder()
.fileShares(InstanceFileSharesArgs.builder()
.capacityGb(0)
.name("string")
.nfsExportOptions(InstanceFileSharesNfsExportOptionArgs.builder()
.accessMode("string")
.anonGid(0)
.anonUid(0)
.ipRanges("string")
.squashMode("string")
.build())
.sourceBackup("string")
.build())
.tier("string")
.networks(InstanceNetworkArgs.builder()
.modes("string")
.network("string")
.connectMode("string")
.ipAddresses("string")
.reservedIpRange("string")
.build())
.location("string")
.kmsKeyName("string")
.labels(Map.of("string", "string"))
.deletionProtectionEnabled(false)
.name("string")
.description("string")
.project("string")
.protocol("string")
.deletionProtectionReason("string")
.build());
exampleinstance_resource_resource_from_filestoreinstance = gcp.filestore.Instance("exampleinstanceResourceResourceFromFilestoreinstance",
file_shares={
"capacity_gb": 0,
"name": "string",
"nfs_export_options": [{
"access_mode": "string",
"anon_gid": 0,
"anon_uid": 0,
"ip_ranges": ["string"],
"squash_mode": "string",
}],
"source_backup": "string",
},
tier="string",
networks=[{
"modes": ["string"],
"network": "string",
"connect_mode": "string",
"ip_addresses": ["string"],
"reserved_ip_range": "string",
}],
location="string",
kms_key_name="string",
labels={
"string": "string",
},
deletion_protection_enabled=False,
name="string",
description="string",
project="string",
protocol="string",
deletion_protection_reason="string")
const exampleinstanceResourceResourceFromFilestoreinstance = new gcp.filestore.Instance("exampleinstanceResourceResourceFromFilestoreinstance", {
fileShares: {
capacityGb: 0,
name: "string",
nfsExportOptions: [{
accessMode: "string",
anonGid: 0,
anonUid: 0,
ipRanges: ["string"],
squashMode: "string",
}],
sourceBackup: "string",
},
tier: "string",
networks: [{
modes: ["string"],
network: "string",
connectMode: "string",
ipAddresses: ["string"],
reservedIpRange: "string",
}],
location: "string",
kmsKeyName: "string",
labels: {
string: "string",
},
deletionProtectionEnabled: false,
name: "string",
description: "string",
project: "string",
protocol: "string",
deletionProtectionReason: "string",
});
type: gcp:filestore:Instance
properties:
deletionProtectionEnabled: false
deletionProtectionReason: string
description: string
fileShares:
capacityGb: 0
name: string
nfsExportOptions:
- accessMode: string
anonGid: 0
anonUid: 0
ipRanges:
- string
squashMode: string
sourceBackup: string
kmsKeyName: string
labels:
string: string
location: string
name: string
networks:
- connectMode: string
ipAddresses:
- string
modes:
- string
network: string
reservedIpRange: string
project: string
protocol: string
tier: string
Instance Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Instance resource accepts the following input properties:
- Instance
File Shares - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- Networks
List<Instance
Network> - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- Tier string
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- Deletion
Protection boolEnabled - Indicates whether the instance is protected against deletion.
- Deletion
Protection stringReason - The reason for enabling deletion protection.
- Description string
- A description of the instance.
- Kms
Key stringName - KMS key name used for data encryption.
- Labels Dictionary<string, string>
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Location string
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- Name string
- The resource name of the instance.
- Project string
- Protocol string
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- Zone string
- The name of the Filestore zone of the instance.
- Instance
File Shares Args - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- Networks
[]Instance
Network Args - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- Tier string
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- Deletion
Protection boolEnabled - Indicates whether the instance is protected against deletion.
- Deletion
Protection stringReason - The reason for enabling deletion protection.
- Description string
- A description of the instance.
- Kms
Key stringName - KMS key name used for data encryption.
- Labels map[string]string
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Location string
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- Name string
- The resource name of the instance.
- Project string
- Protocol string
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- Zone string
- The name of the Filestore zone of the instance.
- Instance
File Shares - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- networks
List<Instance
Network> - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- tier String
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- deletion
Protection BooleanEnabled - Indicates whether the instance is protected against deletion.
- deletion
Protection StringReason - The reason for enabling deletion protection.
- description String
- A description of the instance.
- kms
Key StringName - KMS key name used for data encryption.
- labels Map<String,String>
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location String
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name String
- The resource name of the instance.
- project String
- protocol String
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- zone String
- The name of the Filestore zone of the instance.
- Instance
File Shares - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- networks
Instance
Network[] - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- tier string
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- deletion
Protection booleanEnabled - Indicates whether the instance is protected against deletion.
- deletion
Protection stringReason - The reason for enabling deletion protection.
- description string
- A description of the instance.
- kms
Key stringName - KMS key name used for data encryption.
- labels {[key: string]: string}
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location string
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name string
- The resource name of the instance.
- project string
- protocol string
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- zone string
- The name of the Filestore zone of the instance.
- Instance
File Shares Args - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- networks
Sequence[Instance
Network Args] - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- tier str
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- deletion_
protection_ boolenabled - Indicates whether the instance is protected against deletion.
- deletion_
protection_ strreason - The reason for enabling deletion protection.
- description str
- A description of the instance.
- kms_
key_ strname - KMS key name used for data encryption.
- labels Mapping[str, str]
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location str
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name str
- The resource name of the instance.
- project str
- protocol str
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- zone str
- The name of the Filestore zone of the instance.
- Property Map
- File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- networks List<Property Map>
- VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- tier String
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- deletion
Protection BooleanEnabled - Indicates whether the instance is protected against deletion.
- deletion
Protection StringReason - The reason for enabling deletion protection.
- description String
- A description of the instance.
- kms
Key StringName - KMS key name used for data encryption.
- labels Map<String>
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location String
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name String
- The resource name of the instance.
- project String
- protocol String
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- zone String
- The name of the Filestore zone of the instance.
Outputs
All input properties are implicitly available as output properties. Additionally, the Instance resource produces the following output properties:
- Create
Time string - Creation timestamp in RFC3339 text format.
- Effective
Labels Dictionary<string, string> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Id string
- The provider-assigned unique ID for this managed resource.
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- Create
Time string - Creation timestamp in RFC3339 text format.
- Effective
Labels map[string]string - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Id string
- The provider-assigned unique ID for this managed resource.
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- create
Time String - Creation timestamp in RFC3339 text format.
- effective
Labels Map<String,String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- id String
- The provider-assigned unique ID for this managed resource.
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- create
Time string - Creation timestamp in RFC3339 text format.
- effective
Labels {[key: string]: string} - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag string
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- id string
- The provider-assigned unique ID for this managed resource.
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- create_
time str - Creation timestamp in RFC3339 text format.
- effective_
labels Mapping[str, str] - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag str
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- id str
- The provider-assigned unique ID for this managed resource.
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- create
Time String - Creation timestamp in RFC3339 text format.
- effective
Labels Map<String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- id String
- The provider-assigned unique ID for this managed resource.
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
Look up Existing Instance Resource
Get an existing Instance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: InstanceState, opts?: CustomResourceOptions): Instance
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
create_time: Optional[str] = None,
deletion_protection_enabled: Optional[bool] = None,
deletion_protection_reason: Optional[str] = None,
description: Optional[str] = None,
effective_labels: Optional[Mapping[str, str]] = None,
etag: Optional[str] = None,
file_shares: Optional[InstanceFileSharesArgs] = None,
kms_key_name: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
name: Optional[str] = None,
networks: Optional[Sequence[InstanceNetworkArgs]] = None,
project: Optional[str] = None,
protocol: Optional[str] = None,
pulumi_labels: Optional[Mapping[str, str]] = None,
tier: Optional[str] = None,
zone: Optional[str] = None) -> Instance
func GetInstance(ctx *Context, name string, id IDInput, state *InstanceState, opts ...ResourceOption) (*Instance, error)
public static Instance Get(string name, Input<string> id, InstanceState? state, CustomResourceOptions? opts = null)
public static Instance get(String name, Output<String> id, InstanceState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Create
Time string - Creation timestamp in RFC3339 text format.
- Deletion
Protection boolEnabled - Indicates whether the instance is protected against deletion.
- Deletion
Protection stringReason - The reason for enabling deletion protection.
- Description string
- A description of the instance.
- Effective
Labels Dictionary<string, string> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Instance
File Shares - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- Kms
Key stringName - KMS key name used for data encryption.
- Labels Dictionary<string, string>
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Location string
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- Name string
- The resource name of the instance.
- Networks
List<Instance
Network> - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- Project string
- Protocol string
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- Tier string
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- Zone string
- The name of the Filestore zone of the instance.
- Create
Time string - Creation timestamp in RFC3339 text format.
- Deletion
Protection boolEnabled - Indicates whether the instance is protected against deletion.
- Deletion
Protection stringReason - The reason for enabling deletion protection.
- Description string
- A description of the instance.
- Effective
Labels map[string]string - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Instance
File Shares Args - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- Kms
Key stringName - KMS key name used for data encryption.
- Labels map[string]string
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- Location string
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- Name string
- The resource name of the instance.
- Networks
[]Instance
Network Args - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- Project string
- Protocol string
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- Tier string
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- Zone string
- The name of the Filestore zone of the instance.
- create
Time String - Creation timestamp in RFC3339 text format.
- deletion
Protection BooleanEnabled - Indicates whether the instance is protected against deletion.
- deletion
Protection StringReason - The reason for enabling deletion protection.
- description String
- A description of the instance.
- effective
Labels Map<String,String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Instance
File Shares - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- kms
Key StringName - KMS key name used for data encryption.
- labels Map<String,String>
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location String
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name String
- The resource name of the instance.
- networks
List<Instance
Network> - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- project String
- protocol String
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- tier String
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- zone String
- The name of the Filestore zone of the instance.
- create
Time string - Creation timestamp in RFC3339 text format.
- deletion
Protection booleanEnabled - Indicates whether the instance is protected against deletion.
- deletion
Protection stringReason - The reason for enabling deletion protection.
- description string
- A description of the instance.
- effective
Labels {[key: string]: string} - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag string
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Instance
File Shares - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- kms
Key stringName - KMS key name used for data encryption.
- labels {[key: string]: string}
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location string
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name string
- The resource name of the instance.
- networks
Instance
Network[] - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- project string
- protocol string
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- tier string
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- zone string
- The name of the Filestore zone of the instance.
- create_
time str - Creation timestamp in RFC3339 text format.
- deletion_
protection_ boolenabled - Indicates whether the instance is protected against deletion.
- deletion_
protection_ strreason - The reason for enabling deletion protection.
- description str
- A description of the instance.
- effective_
labels Mapping[str, str] - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag str
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Instance
File Shares Args - File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- kms_
key_ strname - KMS key name used for data encryption.
- labels Mapping[str, str]
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location str
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name str
- The resource name of the instance.
- networks
Sequence[Instance
Network Args] - VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- project str
- protocol str
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- tier str
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- zone str
- The name of the Filestore zone of the instance.
- create
Time String - Creation timestamp in RFC3339 text format.
- deletion
Protection BooleanEnabled - Indicates whether the instance is protected against deletion.
- deletion
Protection StringReason - The reason for enabling deletion protection.
- description String
- A description of the instance.
- effective
Labels Map<String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Server-specified ETag for the instance resource to prevent simultaneous updates from overwriting each other.
- Property Map
- File system shares on the instance. For this version, only a single file share is supported. Structure is documented below.
- kms
Key StringName - KMS key name used for data encryption.
- labels Map<String>
- Resource labels to represent user-provided metadata. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field 'effective_labels' for all of the labels present on the resource.
- location String
- The name of the location of the instance. This can be a region for ENTERPRISE tier instances.
- name String
- The resource name of the instance.
- networks List<Property Map>
- VPC networks to which the instance is connected. For this version, only a single network is supported. Structure is documented below.
- project String
- protocol String
- Either NFSv3, for using NFS version 3 as file sharing protocol, or NFSv4.1, for using NFS version 4.1 as file sharing protocol. NFSv4.1 can be used with HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE. The default is NFSv3. Default value: "NFS_V3" Possible values: ["NFS_V3", "NFS_V4_1"]
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- tier String
- The service tier of the instance. Possible values include: STANDARD, PREMIUM, BASIC_HDD, BASIC_SSD, HIGH_SCALE_SSD, ZONAL, REGIONAL and ENTERPRISE
- zone String
- The name of the Filestore zone of the instance.
Supporting Types
InstanceFileShares, InstanceFileSharesArgs
- Capacity
Gb int - File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier.
- Name string
- The name of the fileshare (16 characters or less)
- Nfs
Export List<InstanceOptions File Shares Nfs Export Option> - Nfs Export Options. There is a limit of 10 export options per file share. Structure is documented below.
- Source
Backup string - The resource name of the backup, in the format projects/{projectId}/locations/{locationId}/backups/{backupId}, that this file share has been restored from.
- Capacity
Gb int - File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier.
- Name string
- The name of the fileshare (16 characters or less)
- Nfs
Export []InstanceOptions File Shares Nfs Export Option - Nfs Export Options. There is a limit of 10 export options per file share. Structure is documented below.
- Source
Backup string - The resource name of the backup, in the format projects/{projectId}/locations/{locationId}/backups/{backupId}, that this file share has been restored from.
- capacity
Gb Integer - File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier.
- name String
- The name of the fileshare (16 characters or less)
- nfs
Export List<InstanceOptions File Shares Nfs Export Option> - Nfs Export Options. There is a limit of 10 export options per file share. Structure is documented below.
- source
Backup String - The resource name of the backup, in the format projects/{projectId}/locations/{locationId}/backups/{backupId}, that this file share has been restored from.
- capacity
Gb number - File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier.
- name string
- The name of the fileshare (16 characters or less)
- nfs
Export InstanceOptions File Shares Nfs Export Option[] - Nfs Export Options. There is a limit of 10 export options per file share. Structure is documented below.
- source
Backup string - The resource name of the backup, in the format projects/{projectId}/locations/{locationId}/backups/{backupId}, that this file share has been restored from.
- capacity_
gb int - File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier.
- name str
- The name of the fileshare (16 characters or less)
- nfs_
export_ Sequence[Instanceoptions File Shares Nfs Export Option] - Nfs Export Options. There is a limit of 10 export options per file share. Structure is documented below.
- source_
backup str - The resource name of the backup, in the format projects/{projectId}/locations/{locationId}/backups/{backupId}, that this file share has been restored from.
- capacity
Gb Number - File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier.
- name String
- The name of the fileshare (16 characters or less)
- nfs
Export List<Property Map>Options - Nfs Export Options. There is a limit of 10 export options per file share. Structure is documented below.
- source
Backup String - The resource name of the backup, in the format projects/{projectId}/locations/{locationId}/backups/{backupId}, that this file share has been restored from.
InstanceFileSharesNfsExportOption, InstanceFileSharesNfsExportOptionArgs
- Access
Mode string - Either READ_ONLY, for allowing only read requests on the exported directory,
or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
Default value is
READ_WRITE
. Possible values are:READ_ONLY
,READ_WRITE
. - Anon
Gid int - An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- Anon
Uid int - An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- Ip
Ranges List<string> - List of either IPv4 addresses, or ranges in CIDR notation which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
- Squash
Mode string - Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH,
for not allowing root access. The default is NO_ROOT_SQUASH.
Default value is
NO_ROOT_SQUASH
. Possible values are:NO_ROOT_SQUASH
,ROOT_SQUASH
.
- Access
Mode string - Either READ_ONLY, for allowing only read requests on the exported directory,
or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
Default value is
READ_WRITE
. Possible values are:READ_ONLY
,READ_WRITE
. - Anon
Gid int - An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- Anon
Uid int - An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- Ip
Ranges []string - List of either IPv4 addresses, or ranges in CIDR notation which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
- Squash
Mode string - Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH,
for not allowing root access. The default is NO_ROOT_SQUASH.
Default value is
NO_ROOT_SQUASH
. Possible values are:NO_ROOT_SQUASH
,ROOT_SQUASH
.
- access
Mode String - Either READ_ONLY, for allowing only read requests on the exported directory,
or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
Default value is
READ_WRITE
. Possible values are:READ_ONLY
,READ_WRITE
. - anon
Gid Integer - An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- anon
Uid Integer - An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- ip
Ranges List<String> - List of either IPv4 addresses, or ranges in CIDR notation which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
- squash
Mode String - Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH,
for not allowing root access. The default is NO_ROOT_SQUASH.
Default value is
NO_ROOT_SQUASH
. Possible values are:NO_ROOT_SQUASH
,ROOT_SQUASH
.
- access
Mode string - Either READ_ONLY, for allowing only read requests on the exported directory,
or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
Default value is
READ_WRITE
. Possible values are:READ_ONLY
,READ_WRITE
. - anon
Gid number - An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- anon
Uid number - An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- ip
Ranges string[] - List of either IPv4 addresses, or ranges in CIDR notation which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
- squash
Mode string - Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH,
for not allowing root access. The default is NO_ROOT_SQUASH.
Default value is
NO_ROOT_SQUASH
. Possible values are:NO_ROOT_SQUASH
,ROOT_SQUASH
.
- access_
mode str - Either READ_ONLY, for allowing only read requests on the exported directory,
or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
Default value is
READ_WRITE
. Possible values are:READ_ONLY
,READ_WRITE
. - anon_
gid int - An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- anon_
uid int - An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- ip_
ranges Sequence[str] - List of either IPv4 addresses, or ranges in CIDR notation which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
- squash_
mode str - Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH,
for not allowing root access. The default is NO_ROOT_SQUASH.
Default value is
NO_ROOT_SQUASH
. Possible values are:NO_ROOT_SQUASH
,ROOT_SQUASH
.
- access
Mode String - Either READ_ONLY, for allowing only read requests on the exported directory,
or READ_WRITE, for allowing both read and write requests. The default is READ_WRITE.
Default value is
READ_WRITE
. Possible values are:READ_ONLY
,READ_WRITE
. - anon
Gid Number - An integer representing the anonymous group id with a default value of 65534. Anon_gid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- anon
Uid Number - An integer representing the anonymous user id with a default value of 65534. Anon_uid may only be set with squashMode of ROOT_SQUASH. An error will be returned if this field is specified for other squashMode settings.
- ip
Ranges List<String> - List of either IPv4 addresses, or ranges in CIDR notation which may mount the file share. Overlapping IP ranges are not allowed, both within and across NfsExportOptions. An error will be returned. The limit is 64 IP ranges/addresses for each FileShareConfig among all NfsExportOptions.
- squash
Mode String - Either NO_ROOT_SQUASH, for allowing root access on the exported directory, or ROOT_SQUASH,
for not allowing root access. The default is NO_ROOT_SQUASH.
Default value is
NO_ROOT_SQUASH
. Possible values are:NO_ROOT_SQUASH
,ROOT_SQUASH
.
InstanceNetwork, InstanceNetworkArgs
- Modes List<string>
- IP versions for which the instance has
IP addresses assigned.
Each value may be one of:
ADDRESS_MODE_UNSPECIFIED
,MODE_IPV4
,MODE_IPV6
. - Network string
- The name of the GCE VPC network to which the instance is connected.
- Connect
Mode string - The network connect mode of the Filestore instance.
If not provided, the connect mode defaults to
DIRECT_PEERING.
Default value is
DIRECT_PEERING
. Possible values are:DIRECT_PEERING
,PRIVATE_SERVICE_ACCESS
. - Ip
Addresses List<string> - (Output) A list of IPv4 or IPv6 addresses.
- Reserved
Ip stringRange - A /29 CIDR block that identifies the range of IP addresses reserved for this instance.
- Modes []string
- IP versions for which the instance has
IP addresses assigned.
Each value may be one of:
ADDRESS_MODE_UNSPECIFIED
,MODE_IPV4
,MODE_IPV6
. - Network string
- The name of the GCE VPC network to which the instance is connected.
- Connect
Mode string - The network connect mode of the Filestore instance.
If not provided, the connect mode defaults to
DIRECT_PEERING.
Default value is
DIRECT_PEERING
. Possible values are:DIRECT_PEERING
,PRIVATE_SERVICE_ACCESS
. - Ip
Addresses []string - (Output) A list of IPv4 or IPv6 addresses.
- Reserved
Ip stringRange - A /29 CIDR block that identifies the range of IP addresses reserved for this instance.
- modes List<String>
- IP versions for which the instance has
IP addresses assigned.
Each value may be one of:
ADDRESS_MODE_UNSPECIFIED
,MODE_IPV4
,MODE_IPV6
. - network String
- The name of the GCE VPC network to which the instance is connected.
- connect
Mode String - The network connect mode of the Filestore instance.
If not provided, the connect mode defaults to
DIRECT_PEERING.
Default value is
DIRECT_PEERING
. Possible values are:DIRECT_PEERING
,PRIVATE_SERVICE_ACCESS
. - ip
Addresses List<String> - (Output) A list of IPv4 or IPv6 addresses.
- reserved
Ip StringRange - A /29 CIDR block that identifies the range of IP addresses reserved for this instance.
- modes string[]
- IP versions for which the instance has
IP addresses assigned.
Each value may be one of:
ADDRESS_MODE_UNSPECIFIED
,MODE_IPV4
,MODE_IPV6
. - network string
- The name of the GCE VPC network to which the instance is connected.
- connect
Mode string - The network connect mode of the Filestore instance.
If not provided, the connect mode defaults to
DIRECT_PEERING.
Default value is
DIRECT_PEERING
. Possible values are:DIRECT_PEERING
,PRIVATE_SERVICE_ACCESS
. - ip
Addresses string[] - (Output) A list of IPv4 or IPv6 addresses.
- reserved
Ip stringRange - A /29 CIDR block that identifies the range of IP addresses reserved for this instance.
- modes Sequence[str]
- IP versions for which the instance has
IP addresses assigned.
Each value may be one of:
ADDRESS_MODE_UNSPECIFIED
,MODE_IPV4
,MODE_IPV6
. - network str
- The name of the GCE VPC network to which the instance is connected.
- connect_
mode str - The network connect mode of the Filestore instance.
If not provided, the connect mode defaults to
DIRECT_PEERING.
Default value is
DIRECT_PEERING
. Possible values are:DIRECT_PEERING
,PRIVATE_SERVICE_ACCESS
. - ip_
addresses Sequence[str] - (Output) A list of IPv4 or IPv6 addresses.
- reserved_
ip_ strrange - A /29 CIDR block that identifies the range of IP addresses reserved for this instance.
- modes List<String>
- IP versions for which the instance has
IP addresses assigned.
Each value may be one of:
ADDRESS_MODE_UNSPECIFIED
,MODE_IPV4
,MODE_IPV6
. - network String
- The name of the GCE VPC network to which the instance is connected.
- connect
Mode String - The network connect mode of the Filestore instance.
If not provided, the connect mode defaults to
DIRECT_PEERING.
Default value is
DIRECT_PEERING
. Possible values are:DIRECT_PEERING
,PRIVATE_SERVICE_ACCESS
. - ip
Addresses List<String> - (Output) A list of IPv4 or IPv6 addresses.
- reserved
Ip StringRange - A /29 CIDR block that identifies the range of IP addresses reserved for this instance.
Import
Instance can be imported using any of these accepted formats:
projects/{{project}}/locations/{{location}}/instances/{{name}}
{{project}}/{{location}}/{{name}}
{{location}}/{{name}}
When using the pulumi import
command, Instance can be imported using one of the formats above. For example:
$ 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}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.