1. Packages
  2. Google Cloud (GCP) Classic
  3. API Docs
  4. vmwareengine
  5. Datastore
Viewing docs for Google Cloud v9.15.0
published on Thursday, Mar 12, 2026 by Pulumi
gcp logo
Viewing docs for Google Cloud v9.15.0
published on Thursday, Mar 12, 2026 by Pulumi

    A datastore resource that can be mounted on a privatecloud cluster

    Example Usage

    Vmware Engine Datastore Thirdparty

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    // use existing network with connectivity to the thirdparty datastore
    const _default = gcp.compute.getNetwork({
        name: "default",
    });
    // create a thirdparty datastore
    const exampleThirdparty = new gcp.vmwareengine.Datastore("example_thirdparty", {
        name: "thirdparty-datastore",
        location: "us-west1-a",
        description: "example thirdparty datastore.",
        nfsDatastore: {
            thirdPartyFileService: {
                fileShare: "/share1",
                network: _default.then(_default => _default.id),
                servers: ["10.0.0.4"],
            },
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    # use existing network with connectivity to the thirdparty datastore
    default = gcp.compute.get_network(name="default")
    # create a thirdparty datastore
    example_thirdparty = gcp.vmwareengine.Datastore("example_thirdparty",
        name="thirdparty-datastore",
        location="us-west1-a",
        description="example thirdparty datastore.",
        nfs_datastore={
            "third_party_file_service": {
                "file_share": "/share1",
                "network": default.id,
                "servers": ["10.0.0.4"],
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/compute"
    	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/vmwareengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// use existing network with connectivity to the thirdparty datastore
    		_default, err := compute.LookupNetwork(ctx, &compute.LookupNetworkArgs{
    			Name: "default",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		// create a thirdparty datastore
    		_, err = vmwareengine.NewDatastore(ctx, "example_thirdparty", &vmwareengine.DatastoreArgs{
    			Name:        pulumi.String("thirdparty-datastore"),
    			Location:    pulumi.String("us-west1-a"),
    			Description: pulumi.String("example thirdparty datastore."),
    			NfsDatastore: &vmwareengine.DatastoreNfsDatastoreArgs{
    				ThirdPartyFileService: &vmwareengine.DatastoreNfsDatastoreThirdPartyFileServiceArgs{
    					FileShare: pulumi.String("/share1"),
    					Network:   pulumi.String(_default.Id),
    					Servers: pulumi.StringArray{
    						pulumi.String("10.0.0.4"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Gcp = Pulumi.Gcp;
    
    return await Deployment.RunAsync(() => 
    {
        // use existing network with connectivity to the thirdparty datastore
        var @default = Gcp.Compute.GetNetwork.Invoke(new()
        {
            Name = "default",
        });
    
        // create a thirdparty datastore
        var exampleThirdparty = new Gcp.VMwareEngine.Datastore("example_thirdparty", new()
        {
            Name = "thirdparty-datastore",
            Location = "us-west1-a",
            Description = "example thirdparty datastore.",
            NfsDatastore = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreArgs
            {
                ThirdPartyFileService = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreThirdPartyFileServiceArgs
                {
                    FileShare = "/share1",
                    Network = @default.Apply(@default => @default.Apply(getNetworkResult => getNetworkResult.Id)),
                    Servers = new[]
                    {
                        "10.0.0.4",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.compute.ComputeFunctions;
    import com.pulumi.gcp.compute.inputs.GetNetworkArgs;
    import com.pulumi.gcp.vmwareengine.Datastore;
    import com.pulumi.gcp.vmwareengine.DatastoreArgs;
    import com.pulumi.gcp.vmwareengine.inputs.DatastoreNfsDatastoreArgs;
    import com.pulumi.gcp.vmwareengine.inputs.DatastoreNfsDatastoreThirdPartyFileServiceArgs;
    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) {
            // use existing network with connectivity to the thirdparty datastore
            final var default = ComputeFunctions.getNetwork(GetNetworkArgs.builder()
                .name("default")
                .build());
    
            // create a thirdparty datastore
            var exampleThirdparty = new Datastore("exampleThirdparty", DatastoreArgs.builder()
                .name("thirdparty-datastore")
                .location("us-west1-a")
                .description("example thirdparty datastore.")
                .nfsDatastore(DatastoreNfsDatastoreArgs.builder()
                    .thirdPartyFileService(DatastoreNfsDatastoreThirdPartyFileServiceArgs.builder()
                        .fileShare("/share1")
                        .network(default_.id())
                        .servers("10.0.0.4")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      # create a thirdparty datastore
      exampleThirdparty:
        type: gcp:vmwareengine:Datastore
        name: example_thirdparty
        properties:
          name: thirdparty-datastore
          location: us-west1-a
          description: example thirdparty datastore.
          nfsDatastore:
            thirdPartyFileService:
              fileShare: /share1
              network: ${default.id}
              servers:
                - 10.0.0.4
    variables:
      # use existing network with connectivity to the thirdparty datastore
      default:
        fn::invoke:
          function: gcp:compute:getNetwork
          arguments:
            name: default
    

    Vmware Engine Datastore Filestore

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    // Use existing filestore instance
    const testInstance = gcp.filestore.getInstance({
        name: "fs-instance",
        location: "",
    });
    // Create a VmwareEngine Datastore, referencing the filestore instance
    const exampleFilestore = new gcp.vmwareengine.Datastore("example_filestore", {
        name: "filestore-datastore",
        location: "",
        description: "example google_file_service.filestore datastore.",
        nfsDatastore: {
            googleFileService: {
                filestoreInstance: testInstanceGoogleFilestoreInstance.id,
            },
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    # Use existing filestore instance
    test_instance = gcp.filestore.get_instance(name="fs-instance",
        location="")
    # Create a VmwareEngine Datastore, referencing the filestore instance
    example_filestore = gcp.vmwareengine.Datastore("example_filestore",
        name="filestore-datastore",
        location="",
        description="example google_file_service.filestore datastore.",
        nfs_datastore={
            "google_file_service": {
                "filestore_instance": test_instance_google_filestore_instance["id"],
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/filestore"
    	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/vmwareengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Use existing filestore instance
    		_, err := filestore.LookupInstance(ctx, &filestore.LookupInstanceArgs{
    			Name:     "fs-instance",
    			Location: pulumi.StringRef(""),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		// Create a VmwareEngine Datastore, referencing the filestore instance
    		_, err = vmwareengine.NewDatastore(ctx, "example_filestore", &vmwareengine.DatastoreArgs{
    			Name:        pulumi.String("filestore-datastore"),
    			Location:    pulumi.String(""),
    			Description: pulumi.String("example google_file_service.filestore datastore."),
    			NfsDatastore: &vmwareengine.DatastoreNfsDatastoreArgs{
    				GoogleFileService: &vmwareengine.DatastoreNfsDatastoreGoogleFileServiceArgs{
    					FilestoreInstance: pulumi.Any(testInstanceGoogleFilestoreInstance.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(() => 
    {
        // Use existing filestore instance
        var testInstance = Gcp.Filestore.GetInstance.Invoke(new()
        {
            Name = "fs-instance",
            Location = "",
        });
    
        // Create a VmwareEngine Datastore, referencing the filestore instance
        var exampleFilestore = new Gcp.VMwareEngine.Datastore("example_filestore", new()
        {
            Name = "filestore-datastore",
            Location = "",
            Description = "example google_file_service.filestore datastore.",
            NfsDatastore = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreArgs
            {
                GoogleFileService = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreGoogleFileServiceArgs
                {
                    FilestoreInstance = testInstanceGoogleFilestoreInstance.Id,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.filestore.FilestoreFunctions;
    import com.pulumi.gcp.filestore.inputs.GetInstanceArgs;
    import com.pulumi.gcp.vmwareengine.Datastore;
    import com.pulumi.gcp.vmwareengine.DatastoreArgs;
    import com.pulumi.gcp.vmwareengine.inputs.DatastoreNfsDatastoreArgs;
    import com.pulumi.gcp.vmwareengine.inputs.DatastoreNfsDatastoreGoogleFileServiceArgs;
    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) {
            // Use existing filestore instance
            final var testInstance = FilestoreFunctions.getInstance(GetInstanceArgs.builder()
                .name("fs-instance")
                .location("")
                .build());
    
            // Create a VmwareEngine Datastore, referencing the filestore instance
            var exampleFilestore = new Datastore("exampleFilestore", DatastoreArgs.builder()
                .name("filestore-datastore")
                .location("")
                .description("example google_file_service.filestore datastore.")
                .nfsDatastore(DatastoreNfsDatastoreArgs.builder()
                    .googleFileService(DatastoreNfsDatastoreGoogleFileServiceArgs.builder()
                        .filestoreInstance(testInstanceGoogleFilestoreInstance.id())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Create a VmwareEngine Datastore, referencing the filestore instance
      exampleFilestore:
        type: gcp:vmwareengine:Datastore
        name: example_filestore
        properties:
          name: filestore-datastore
          location: ""
          description: example google_file_service.filestore datastore.
          nfsDatastore:
            googleFileService:
              filestoreInstance: ${testInstanceGoogleFilestoreInstance.id}
    variables:
      # Use existing filestore instance
      testInstance:
        fn::invoke:
          function: gcp:filestore:getInstance
          arguments:
            name: fs-instance
            location: ""
    

    Vmware Engine Datastore Netapp

    import * as pulumi from "@pulumi/pulumi";
    import * as gcp from "@pulumi/gcp";
    
    // Use existing netapp volume
    const testVolume = new gcp.netapp.Volume("test_volume", {
        name: "netapp-volume",
        location: "us-west1",
    });
    // Create a VmwareEngine Datastore, referencing the netapp volume
    const exampleNetapp = new gcp.vmwareengine.Datastore("example_netapp", {
        name: "netapp-datastore",
        location: "us-west1",
        description: "example google_file_service.netapp datastore.",
        nfsDatastore: {
            googleFileService: {
                netappVolume: testVolume.id,
            },
        },
    });
    
    import pulumi
    import pulumi_gcp as gcp
    
    # Use existing netapp volume
    test_volume = gcp.netapp.Volume("test_volume",
        name="netapp-volume",
        location="us-west1")
    # Create a VmwareEngine Datastore, referencing the netapp volume
    example_netapp = gcp.vmwareengine.Datastore("example_netapp",
        name="netapp-datastore",
        location="us-west1",
        description="example google_file_service.netapp datastore.",
        nfs_datastore={
            "google_file_service": {
                "netapp_volume": test_volume.id,
            },
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/netapp"
    	"github.com/pulumi/pulumi-gcp/sdk/v9/go/gcp/vmwareengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Use existing netapp volume
    		testVolume, err := netapp.NewVolume(ctx, "test_volume", &netapp.VolumeArgs{
    			Name:     pulumi.String("netapp-volume"),
    			Location: pulumi.String("us-west1"),
    		})
    		if err != nil {
    			return err
    		}
    		// Create a VmwareEngine Datastore, referencing the netapp volume
    		_, err = vmwareengine.NewDatastore(ctx, "example_netapp", &vmwareengine.DatastoreArgs{
    			Name:        pulumi.String("netapp-datastore"),
    			Location:    pulumi.String("us-west1"),
    			Description: pulumi.String("example google_file_service.netapp datastore."),
    			NfsDatastore: &vmwareengine.DatastoreNfsDatastoreArgs{
    				GoogleFileService: &vmwareengine.DatastoreNfsDatastoreGoogleFileServiceArgs{
    					NetappVolume: testVolume.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(() => 
    {
        // Use existing netapp volume
        var testVolume = new Gcp.Netapp.Volume("test_volume", new()
        {
            Name = "netapp-volume",
            Location = "us-west1",
        });
    
        // Create a VmwareEngine Datastore, referencing the netapp volume
        var exampleNetapp = new Gcp.VMwareEngine.Datastore("example_netapp", new()
        {
            Name = "netapp-datastore",
            Location = "us-west1",
            Description = "example google_file_service.netapp datastore.",
            NfsDatastore = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreArgs
            {
                GoogleFileService = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreGoogleFileServiceArgs
                {
                    NetappVolume = testVolume.Id,
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.gcp.netapp.Volume;
    import com.pulumi.gcp.netapp.VolumeArgs;
    import com.pulumi.gcp.vmwareengine.Datastore;
    import com.pulumi.gcp.vmwareengine.DatastoreArgs;
    import com.pulumi.gcp.vmwareengine.inputs.DatastoreNfsDatastoreArgs;
    import com.pulumi.gcp.vmwareengine.inputs.DatastoreNfsDatastoreGoogleFileServiceArgs;
    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) {
            // Use existing netapp volume
            var testVolume = new Volume("testVolume", VolumeArgs.builder()
                .name("netapp-volume")
                .location("us-west1")
                .build());
    
            // Create a VmwareEngine Datastore, referencing the netapp volume
            var exampleNetapp = new Datastore("exampleNetapp", DatastoreArgs.builder()
                .name("netapp-datastore")
                .location("us-west1")
                .description("example google_file_service.netapp datastore.")
                .nfsDatastore(DatastoreNfsDatastoreArgs.builder()
                    .googleFileService(DatastoreNfsDatastoreGoogleFileServiceArgs.builder()
                        .netappVolume(testVolume.id())
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Use existing netapp volume
      testVolume:
        type: gcp:netapp:Volume
        name: test_volume
        properties:
          name: netapp-volume
          location: us-west1
      # Create a VmwareEngine Datastore, referencing the netapp volume
      exampleNetapp:
        type: gcp:vmwareengine:Datastore
        name: example_netapp
        properties:
          name: netapp-datastore
          location: us-west1
          description: example google_file_service.netapp datastore.
          nfsDatastore:
            googleFileService:
              netappVolume: ${testVolume.id}
    

    Create Datastore Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Datastore(name: string, args: DatastoreArgs, opts?: CustomResourceOptions);
    @overload
    def Datastore(resource_name: str,
                  args: DatastoreArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def Datastore(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  location: Optional[str] = None,
                  nfs_datastore: Optional[DatastoreNfsDatastoreArgs] = None,
                  description: Optional[str] = None,
                  name: Optional[str] = None,
                  project: Optional[str] = None)
    func NewDatastore(ctx *Context, name string, args DatastoreArgs, opts ...ResourceOption) (*Datastore, error)
    public Datastore(string name, DatastoreArgs args, CustomResourceOptions? opts = null)
    public Datastore(String name, DatastoreArgs args)
    public Datastore(String name, DatastoreArgs args, CustomResourceOptions options)
    
    type: gcp:vmwareengine:Datastore
    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 DatastoreArgs
    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 DatastoreArgs
    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 DatastoreArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DatastoreArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DatastoreArgs
    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 datastoreResource = new Gcp.VMwareEngine.Datastore("datastoreResource", new()
    {
        Location = "string",
        NfsDatastore = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreArgs
        {
            GoogleFileService = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreGoogleFileServiceArgs
            {
                FilestoreInstance = "string",
                NetappVolume = "string",
            },
            ThirdPartyFileService = new Gcp.VMwareEngine.Inputs.DatastoreNfsDatastoreThirdPartyFileServiceArgs
            {
                FileShare = "string",
                Network = "string",
                Servers = new[]
                {
                    "string",
                },
            },
        },
        Description = "string",
        Name = "string",
        Project = "string",
    });
    
    example, err := vmwareengine.NewDatastore(ctx, "datastoreResource", &vmwareengine.DatastoreArgs{
    	Location: pulumi.String("string"),
    	NfsDatastore: &vmwareengine.DatastoreNfsDatastoreArgs{
    		GoogleFileService: &vmwareengine.DatastoreNfsDatastoreGoogleFileServiceArgs{
    			FilestoreInstance: pulumi.String("string"),
    			NetappVolume:      pulumi.String("string"),
    		},
    		ThirdPartyFileService: &vmwareengine.DatastoreNfsDatastoreThirdPartyFileServiceArgs{
    			FileShare: pulumi.String("string"),
    			Network:   pulumi.String("string"),
    			Servers: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	Description: pulumi.String("string"),
    	Name:        pulumi.String("string"),
    	Project:     pulumi.String("string"),
    })
    
    var datastoreResource = new Datastore("datastoreResource", DatastoreArgs.builder()
        .location("string")
        .nfsDatastore(DatastoreNfsDatastoreArgs.builder()
            .googleFileService(DatastoreNfsDatastoreGoogleFileServiceArgs.builder()
                .filestoreInstance("string")
                .netappVolume("string")
                .build())
            .thirdPartyFileService(DatastoreNfsDatastoreThirdPartyFileServiceArgs.builder()
                .fileShare("string")
                .network("string")
                .servers("string")
                .build())
            .build())
        .description("string")
        .name("string")
        .project("string")
        .build());
    
    datastore_resource = gcp.vmwareengine.Datastore("datastoreResource",
        location="string",
        nfs_datastore={
            "google_file_service": {
                "filestore_instance": "string",
                "netapp_volume": "string",
            },
            "third_party_file_service": {
                "file_share": "string",
                "network": "string",
                "servers": ["string"],
            },
        },
        description="string",
        name="string",
        project="string")
    
    const datastoreResource = new gcp.vmwareengine.Datastore("datastoreResource", {
        location: "string",
        nfsDatastore: {
            googleFileService: {
                filestoreInstance: "string",
                netappVolume: "string",
            },
            thirdPartyFileService: {
                fileShare: "string",
                network: "string",
                servers: ["string"],
            },
        },
        description: "string",
        name: "string",
        project: "string",
    });
    
    type: gcp:vmwareengine:Datastore
    properties:
        description: string
        location: string
        name: string
        nfsDatastore:
            googleFileService:
                filestoreInstance: string
                netappVolume: string
            thirdPartyFileService:
                fileShare: string
                network: string
                servers:
                    - string
        project: string
    

    Datastore 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 Datastore resource accepts the following input properties:

    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    NfsDatastore DatastoreNfsDatastore
    The NFS datastore configuration. Structure is documented below.
    Description string
    User-provided description for this datastore
    Name string
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    NfsDatastore DatastoreNfsDatastoreArgs
    The NFS datastore configuration. Structure is documented below.
    Description string
    User-provided description for this datastore
    Name string
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    nfsDatastore DatastoreNfsDatastore
    The NFS datastore configuration. Structure is documented below.
    description String
    User-provided description for this datastore
    name String
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    nfsDatastore DatastoreNfsDatastore
    The NFS datastore configuration. Structure is documented below.
    description string
    User-provided description for this datastore
    name string
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    location str
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    nfs_datastore DatastoreNfsDatastoreArgs
    The NFS datastore configuration. Structure is documented below.
    description str
    User-provided description for this datastore
    name str
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    nfsDatastore Property Map
    The NFS datastore configuration. Structure is documented below.
    description String
    User-provided description for this datastore
    name String
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Datastore resource produces the following output properties:

    Clusters List<string>
    Clusters to which the datastore is attached.
    CreateTime string
    Creation time of this resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    State string
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    Uid string
    System-generated unique identifier for the resource.
    UpdateTime string
    Last update time of this resource.
    Clusters []string
    Clusters to which the datastore is attached.
    CreateTime string
    Creation time of this resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    State string
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    Uid string
    System-generated unique identifier for the resource.
    UpdateTime string
    Last update time of this resource.
    clusters List<String>
    Clusters to which the datastore is attached.
    createTime String
    Creation time of this resource.
    id String
    The provider-assigned unique ID for this managed resource.
    state String
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid String
    System-generated unique identifier for the resource.
    updateTime String
    Last update time of this resource.
    clusters string[]
    Clusters to which the datastore is attached.
    createTime string
    Creation time of this resource.
    id string
    The provider-assigned unique ID for this managed resource.
    state string
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid string
    System-generated unique identifier for the resource.
    updateTime string
    Last update time of this resource.
    clusters Sequence[str]
    Clusters to which the datastore is attached.
    create_time str
    Creation time of this resource.
    id str
    The provider-assigned unique ID for this managed resource.
    state str
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid str
    System-generated unique identifier for the resource.
    update_time str
    Last update time of this resource.
    clusters List<String>
    Clusters to which the datastore is attached.
    createTime String
    Creation time of this resource.
    id String
    The provider-assigned unique ID for this managed resource.
    state String
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid String
    System-generated unique identifier for the resource.
    updateTime String
    Last update time of this resource.

    Look up Existing Datastore Resource

    Get an existing Datastore 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?: DatastoreState, opts?: CustomResourceOptions): Datastore
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            clusters: Optional[Sequence[str]] = None,
            create_time: Optional[str] = None,
            description: Optional[str] = None,
            location: Optional[str] = None,
            name: Optional[str] = None,
            nfs_datastore: Optional[DatastoreNfsDatastoreArgs] = None,
            project: Optional[str] = None,
            state: Optional[str] = None,
            uid: Optional[str] = None,
            update_time: Optional[str] = None) -> Datastore
    func GetDatastore(ctx *Context, name string, id IDInput, state *DatastoreState, opts ...ResourceOption) (*Datastore, error)
    public static Datastore Get(string name, Input<string> id, DatastoreState? state, CustomResourceOptions? opts = null)
    public static Datastore get(String name, Output<String> id, DatastoreState state, CustomResourceOptions options)
    resources:  _:    type: gcp:vmwareengine:Datastore    get:      id: ${id}
    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.
    The following state arguments are supported:
    Clusters List<string>
    Clusters to which the datastore is attached.
    CreateTime string
    Creation time of this resource.
    Description string
    User-provided description for this datastore
    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    Name string
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    NfsDatastore DatastoreNfsDatastore
    The NFS datastore configuration. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    State string
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    Uid string
    System-generated unique identifier for the resource.
    UpdateTime string
    Last update time of this resource.
    Clusters []string
    Clusters to which the datastore is attached.
    CreateTime string
    Creation time of this resource.
    Description string
    User-provided description for this datastore
    Location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    Name string
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    NfsDatastore DatastoreNfsDatastoreArgs
    The NFS datastore configuration. Structure is documented below.
    Project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    State string
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    Uid string
    System-generated unique identifier for the resource.
    UpdateTime string
    Last update time of this resource.
    clusters List<String>
    Clusters to which the datastore is attached.
    createTime String
    Creation time of this resource.
    description String
    User-provided description for this datastore
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name String
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    nfsDatastore DatastoreNfsDatastore
    The NFS datastore configuration. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    state String
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid String
    System-generated unique identifier for the resource.
    updateTime String
    Last update time of this resource.
    clusters string[]
    Clusters to which the datastore is attached.
    createTime string
    Creation time of this resource.
    description string
    User-provided description for this datastore
    location string
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name string
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    nfsDatastore DatastoreNfsDatastore
    The NFS datastore configuration. Structure is documented below.
    project string
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    state string
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid string
    System-generated unique identifier for the resource.
    updateTime string
    Last update time of this resource.
    clusters Sequence[str]
    Clusters to which the datastore is attached.
    create_time str
    Creation time of this resource.
    description str
    User-provided description for this datastore
    location str
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name str
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    nfs_datastore DatastoreNfsDatastoreArgs
    The NFS datastore configuration. Structure is documented below.
    project str
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    state str
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid str
    System-generated unique identifier for the resource.
    update_time str
    Last update time of this resource.
    clusters List<String>
    Clusters to which the datastore is attached.
    createTime String
    Creation time of this resource.
    description String
    User-provided description for this datastore
    location String
    Resource ID segment making up resource name. It identifies the resource within its parent collection as described in https://google.aip.dev/122.
    name String
    The user-provided identifier of the datastore to be created. This identifier must be unique among each Datastore within the parent and becomes the final token in the name URI. The identifier must meet the following requirements:

    • Only contains 1-63 alphanumeric characters and hyphens
    • Begins with an alphabetical character
    • Ends with a non-hyphen character
    • Not formatted as a UUID
    • Complies with RFC 1034 (section 3.5)
    nfsDatastore Property Map
    The NFS datastore configuration. Structure is documented below.
    project String
    The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
    state String
    The state of the Datastore. Possible values: CREATING ACTIVE UPDATING DELETING SOFT_DELETING SOFT_DELETED
    uid String
    System-generated unique identifier for the resource.
    updateTime String
    Last update time of this resource.

    Supporting Types

    DatastoreNfsDatastore, DatastoreNfsDatastoreArgs

    GoogleFileService DatastoreNfsDatastoreGoogleFileService
    Google service file service configuration Structure is documented below.
    ThirdPartyFileService DatastoreNfsDatastoreThirdPartyFileService
    Third party file service configuration Structure is documented below.
    GoogleFileService DatastoreNfsDatastoreGoogleFileService
    Google service file service configuration Structure is documented below.
    ThirdPartyFileService DatastoreNfsDatastoreThirdPartyFileService
    Third party file service configuration Structure is documented below.
    googleFileService DatastoreNfsDatastoreGoogleFileService
    Google service file service configuration Structure is documented below.
    thirdPartyFileService DatastoreNfsDatastoreThirdPartyFileService
    Third party file service configuration Structure is documented below.
    googleFileService DatastoreNfsDatastoreGoogleFileService
    Google service file service configuration Structure is documented below.
    thirdPartyFileService DatastoreNfsDatastoreThirdPartyFileService
    Third party file service configuration Structure is documented below.
    google_file_service DatastoreNfsDatastoreGoogleFileService
    Google service file service configuration Structure is documented below.
    third_party_file_service DatastoreNfsDatastoreThirdPartyFileService
    Third party file service configuration Structure is documented below.
    googleFileService Property Map
    Google service file service configuration Structure is documented below.
    thirdPartyFileService Property Map
    Third party file service configuration Structure is documented below.

    DatastoreNfsDatastoreGoogleFileService, DatastoreNfsDatastoreGoogleFileServiceArgs

    FilestoreInstance string
    Google filestore instance resource name e.g. projects/my-project/locations/me-west1-b/instances/my-instance
    NetappVolume string
    Google netapp volume resource name e.g. projects/my-project/locations/me-west1-b/volumes/my-volume
    FilestoreInstance string
    Google filestore instance resource name e.g. projects/my-project/locations/me-west1-b/instances/my-instance
    NetappVolume string
    Google netapp volume resource name e.g. projects/my-project/locations/me-west1-b/volumes/my-volume
    filestoreInstance String
    Google filestore instance resource name e.g. projects/my-project/locations/me-west1-b/instances/my-instance
    netappVolume String
    Google netapp volume resource name e.g. projects/my-project/locations/me-west1-b/volumes/my-volume
    filestoreInstance string
    Google filestore instance resource name e.g. projects/my-project/locations/me-west1-b/instances/my-instance
    netappVolume string
    Google netapp volume resource name e.g. projects/my-project/locations/me-west1-b/volumes/my-volume
    filestore_instance str
    Google filestore instance resource name e.g. projects/my-project/locations/me-west1-b/instances/my-instance
    netapp_volume str
    Google netapp volume resource name e.g. projects/my-project/locations/me-west1-b/volumes/my-volume
    filestoreInstance String
    Google filestore instance resource name e.g. projects/my-project/locations/me-west1-b/instances/my-instance
    netappVolume String
    Google netapp volume resource name e.g. projects/my-project/locations/me-west1-b/volumes/my-volume

    DatastoreNfsDatastoreThirdPartyFileService, DatastoreNfsDatastoreThirdPartyFileServiceArgs

    FileShare string
    Required Mount Folder name
    Network string
    Required to identify vpc peering used for NFS access network name of NFS's vpc e.g. projects/project-id/global/networks/my-network_id
    Servers List<string>
    Server IP addresses of the NFS file service. NFS v3, provide a single IP address or DNS name. Multiple servers can be supported in future when NFS 4.1 protocol support is enabled.
    FileShare string
    Required Mount Folder name
    Network string
    Required to identify vpc peering used for NFS access network name of NFS's vpc e.g. projects/project-id/global/networks/my-network_id
    Servers []string
    Server IP addresses of the NFS file service. NFS v3, provide a single IP address or DNS name. Multiple servers can be supported in future when NFS 4.1 protocol support is enabled.
    fileShare String
    Required Mount Folder name
    network String
    Required to identify vpc peering used for NFS access network name of NFS's vpc e.g. projects/project-id/global/networks/my-network_id
    servers List<String>
    Server IP addresses of the NFS file service. NFS v3, provide a single IP address or DNS name. Multiple servers can be supported in future when NFS 4.1 protocol support is enabled.
    fileShare string
    Required Mount Folder name
    network string
    Required to identify vpc peering used for NFS access network name of NFS's vpc e.g. projects/project-id/global/networks/my-network_id
    servers string[]
    Server IP addresses of the NFS file service. NFS v3, provide a single IP address or DNS name. Multiple servers can be supported in future when NFS 4.1 protocol support is enabled.
    file_share str
    Required Mount Folder name
    network str
    Required to identify vpc peering used for NFS access network name of NFS's vpc e.g. projects/project-id/global/networks/my-network_id
    servers Sequence[str]
    Server IP addresses of the NFS file service. NFS v3, provide a single IP address or DNS name. Multiple servers can be supported in future when NFS 4.1 protocol support is enabled.
    fileShare String
    Required Mount Folder name
    network String
    Required to identify vpc peering used for NFS access network name of NFS's vpc e.g. projects/project-id/global/networks/my-network_id
    servers List<String>
    Server IP addresses of the NFS file service. NFS v3, provide a single IP address or DNS name. Multiple servers can be supported in future when NFS 4.1 protocol support is enabled.

    Import

    Datastore can be imported using any of these accepted formats:

    • projects/{{project}}/locations/{{location}}/datastores/{{name}}
    • {{project}}/{{location}}/{{name}}
    • {{location}}/{{name}}

    When using the pulumi import command, Datastore can be imported using one of the formats above. For example:

    $ pulumi import gcp:vmwareengine/datastore:Datastore default projects/{{project}}/locations/{{location}}/datastores/{{name}}
    $ pulumi import gcp:vmwareengine/datastore:Datastore default {{project}}/{{location}}/{{name}}
    $ pulumi import gcp:vmwareengine/datastore:Datastore 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.
    gcp logo
    Viewing docs for Google Cloud v9.15.0
    published on Thursday, Mar 12, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.