1. Packages
  2. Google Cloud Native
  3. API Docs
  4. baremetalsolution
  5. baremetalsolution/v2
  6. NfsShare

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.baremetalsolution/v2.NfsShare

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Create an NFS share.

    Create NfsShare Resource

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

    Constructor syntax

    new NfsShare(name: string, args?: NfsShareArgs, opts?: CustomResourceOptions);
    @overload
    def NfsShare(resource_name: str,
                 args: Optional[NfsShareArgs] = None,
                 opts: Optional[ResourceOptions] = None)
    
    @overload
    def NfsShare(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 allowed_clients: Optional[Sequence[AllowedClientArgs]] = None,
                 labels: Optional[Mapping[str, str]] = None,
                 location: Optional[str] = None,
                 name: Optional[str] = None,
                 pod: Optional[str] = None,
                 project: Optional[str] = None,
                 requested_size_gib: Optional[str] = None,
                 storage_type: Optional[NfsShareStorageType] = None)
    func NewNfsShare(ctx *Context, name string, args *NfsShareArgs, opts ...ResourceOption) (*NfsShare, error)
    public NfsShare(string name, NfsShareArgs? args = null, CustomResourceOptions? opts = null)
    public NfsShare(String name, NfsShareArgs args)
    public NfsShare(String name, NfsShareArgs args, CustomResourceOptions options)
    
    type: google-native:baremetalsolution/v2:NfsShare
    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 NfsShareArgs
    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 NfsShareArgs
    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 NfsShareArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args NfsShareArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args NfsShareArgs
    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 nfsShareResource = new GoogleNative.BareMetalSolution.V2.NfsShare("nfsShareResource", new()
    {
        AllowedClients = new[]
        {
            new GoogleNative.BareMetalSolution.V2.Inputs.AllowedClientArgs
            {
                AllowDev = false,
                AllowSuid = false,
                AllowedClientsCidr = "string",
                MountPermissions = GoogleNative.BareMetalSolution.V2.AllowedClientMountPermissions.MountPermissionsUnspecified,
                Network = "string",
                NoRootSquash = false,
            },
        },
        Labels = 
        {
            { "string", "string" },
        },
        Location = "string",
        Name = "string",
        Pod = "string",
        Project = "string",
        RequestedSizeGib = "string",
        StorageType = GoogleNative.BareMetalSolution.V2.NfsShareStorageType.StorageTypeUnspecified,
    });
    
    example, err := baremetalsolution.NewNfsShare(ctx, "nfsShareResource", &baremetalsolution.NfsShareArgs{
    	AllowedClients: baremetalsolution.AllowedClientArray{
    		&baremetalsolution.AllowedClientArgs{
    			AllowDev:           pulumi.Bool(false),
    			AllowSuid:          pulumi.Bool(false),
    			AllowedClientsCidr: pulumi.String("string"),
    			MountPermissions:   baremetalsolution.AllowedClientMountPermissionsMountPermissionsUnspecified,
    			Network:            pulumi.String("string"),
    			NoRootSquash:       pulumi.Bool(false),
    		},
    	},
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	Location:         pulumi.String("string"),
    	Name:             pulumi.String("string"),
    	Pod:              pulumi.String("string"),
    	Project:          pulumi.String("string"),
    	RequestedSizeGib: pulumi.String("string"),
    	StorageType:      baremetalsolution.NfsShareStorageTypeStorageTypeUnspecified,
    })
    
    var nfsShareResource = new NfsShare("nfsShareResource", NfsShareArgs.builder()
        .allowedClients(AllowedClientArgs.builder()
            .allowDev(false)
            .allowSuid(false)
            .allowedClientsCidr("string")
            .mountPermissions("MOUNT_PERMISSIONS_UNSPECIFIED")
            .network("string")
            .noRootSquash(false)
            .build())
        .labels(Map.of("string", "string"))
        .location("string")
        .name("string")
        .pod("string")
        .project("string")
        .requestedSizeGib("string")
        .storageType("STORAGE_TYPE_UNSPECIFIED")
        .build());
    
    nfs_share_resource = google_native.baremetalsolution.v2.NfsShare("nfsShareResource",
        allowed_clients=[google_native.baremetalsolution.v2.AllowedClientArgs(
            allow_dev=False,
            allow_suid=False,
            allowed_clients_cidr="string",
            mount_permissions=google_native.baremetalsolution.v2.AllowedClientMountPermissions.MOUNT_PERMISSIONS_UNSPECIFIED,
            network="string",
            no_root_squash=False,
        )],
        labels={
            "string": "string",
        },
        location="string",
        name="string",
        pod="string",
        project="string",
        requested_size_gib="string",
        storage_type=google_native.baremetalsolution.v2.NfsShareStorageType.STORAGE_TYPE_UNSPECIFIED)
    
    const nfsShareResource = new google_native.baremetalsolution.v2.NfsShare("nfsShareResource", {
        allowedClients: [{
            allowDev: false,
            allowSuid: false,
            allowedClientsCidr: "string",
            mountPermissions: google_native.baremetalsolution.v2.AllowedClientMountPermissions.MountPermissionsUnspecified,
            network: "string",
            noRootSquash: false,
        }],
        labels: {
            string: "string",
        },
        location: "string",
        name: "string",
        pod: "string",
        project: "string",
        requestedSizeGib: "string",
        storageType: google_native.baremetalsolution.v2.NfsShareStorageType.StorageTypeUnspecified,
    });
    
    type: google-native:baremetalsolution/v2:NfsShare
    properties:
        allowedClients:
            - allowDev: false
              allowSuid: false
              allowedClientsCidr: string
              mountPermissions: MOUNT_PERMISSIONS_UNSPECIFIED
              network: string
              noRootSquash: false
        labels:
            string: string
        location: string
        name: string
        pod: string
        project: string
        requestedSizeGib: string
        storageType: STORAGE_TYPE_UNSPECIFIED
    

    NfsShare Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The NfsShare resource accepts the following input properties:

    AllowedClients List<Pulumi.GoogleNative.BareMetalSolution.V2.Inputs.AllowedClient>
    List of allowed access points.
    Labels Dictionary<string, string>
    Labels as key value pairs.
    Location string
    Name string
    Immutable. The name of the NFS share.
    Pod string
    Immutable. Pod name. Pod is an independent part of infrastructure. NFSShare can only be connected to the assets (networks, instances) allocated in the same pod.
    Project string
    RequestedSizeGib string
    The requested size, in GiB.
    StorageType Pulumi.GoogleNative.BareMetalSolution.V2.NfsShareStorageType
    Immutable. The storage type of the underlying volume.
    AllowedClients []AllowedClientArgs
    List of allowed access points.
    Labels map[string]string
    Labels as key value pairs.
    Location string
    Name string
    Immutable. The name of the NFS share.
    Pod string
    Immutable. Pod name. Pod is an independent part of infrastructure. NFSShare can only be connected to the assets (networks, instances) allocated in the same pod.
    Project string
    RequestedSizeGib string
    The requested size, in GiB.
    StorageType NfsShareStorageType
    Immutable. The storage type of the underlying volume.
    allowedClients List<AllowedClient>
    List of allowed access points.
    labels Map<String,String>
    Labels as key value pairs.
    location String
    name String
    Immutable. The name of the NFS share.
    pod String
    Immutable. Pod name. Pod is an independent part of infrastructure. NFSShare can only be connected to the assets (networks, instances) allocated in the same pod.
    project String
    requestedSizeGib String
    The requested size, in GiB.
    storageType NfsShareStorageType
    Immutable. The storage type of the underlying volume.
    allowedClients AllowedClient[]
    List of allowed access points.
    labels {[key: string]: string}
    Labels as key value pairs.
    location string
    name string
    Immutable. The name of the NFS share.
    pod string
    Immutable. Pod name. Pod is an independent part of infrastructure. NFSShare can only be connected to the assets (networks, instances) allocated in the same pod.
    project string
    requestedSizeGib string
    The requested size, in GiB.
    storageType NfsShareStorageType
    Immutable. The storage type of the underlying volume.
    allowed_clients Sequence[AllowedClientArgs]
    List of allowed access points.
    labels Mapping[str, str]
    Labels as key value pairs.
    location str
    name str
    Immutable. The name of the NFS share.
    pod str
    Immutable. Pod name. Pod is an independent part of infrastructure. NFSShare can only be connected to the assets (networks, instances) allocated in the same pod.
    project str
    requested_size_gib str
    The requested size, in GiB.
    storage_type NfsShareStorageType
    Immutable. The storage type of the underlying volume.
    allowedClients List<Property Map>
    List of allowed access points.
    labels Map<String>
    Labels as key value pairs.
    location String
    name String
    Immutable. The name of the NFS share.
    pod String
    Immutable. Pod name. Pod is an independent part of infrastructure. NFSShare can only be connected to the assets (networks, instances) allocated in the same pod.
    project String
    requestedSizeGib String
    The requested size, in GiB.
    storageType "STORAGE_TYPE_UNSPECIFIED" | "SSD" | "HDD"
    Immutable. The storage type of the underlying volume.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    NfsShareId string
    An identifier for the NFS share, generated by the backend. This field will be deprecated in the future, use id instead.
    State string
    The state of the NFS share.
    Volume string
    The underlying volume of the share. Created automatically during provisioning.
    Id string
    The provider-assigned unique ID for this managed resource.
    NfsShareId string
    An identifier for the NFS share, generated by the backend. This field will be deprecated in the future, use id instead.
    State string
    The state of the NFS share.
    Volume string
    The underlying volume of the share. Created automatically during provisioning.
    id String
    The provider-assigned unique ID for this managed resource.
    nfsShareId String
    An identifier for the NFS share, generated by the backend. This field will be deprecated in the future, use id instead.
    state String
    The state of the NFS share.
    volume String
    The underlying volume of the share. Created automatically during provisioning.
    id string
    The provider-assigned unique ID for this managed resource.
    nfsShareId string
    An identifier for the NFS share, generated by the backend. This field will be deprecated in the future, use id instead.
    state string
    The state of the NFS share.
    volume string
    The underlying volume of the share. Created automatically during provisioning.
    id str
    The provider-assigned unique ID for this managed resource.
    nfs_share_id str
    An identifier for the NFS share, generated by the backend. This field will be deprecated in the future, use id instead.
    state str
    The state of the NFS share.
    volume str
    The underlying volume of the share. Created automatically during provisioning.
    id String
    The provider-assigned unique ID for this managed resource.
    nfsShareId String
    An identifier for the NFS share, generated by the backend. This field will be deprecated in the future, use id instead.
    state String
    The state of the NFS share.
    volume String
    The underlying volume of the share. Created automatically during provisioning.

    Supporting Types

    AllowedClient, AllowedClientArgs

    AllowDev bool
    Allow dev flag. Which controls whether to allow creation of devices.
    AllowSuid bool
    Allow the setuid flag.
    AllowedClientsCidr string
    The subnet of IP addresses permitted to access the share.
    MountPermissions Pulumi.GoogleNative.BareMetalSolution.V2.AllowedClientMountPermissions
    Mount permissions.
    Network string
    The network the access point sits on.
    NoRootSquash bool
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    AllowDev bool
    Allow dev flag. Which controls whether to allow creation of devices.
    AllowSuid bool
    Allow the setuid flag.
    AllowedClientsCidr string
    The subnet of IP addresses permitted to access the share.
    MountPermissions AllowedClientMountPermissions
    Mount permissions.
    Network string
    The network the access point sits on.
    NoRootSquash bool
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    allowDev Boolean
    Allow dev flag. Which controls whether to allow creation of devices.
    allowSuid Boolean
    Allow the setuid flag.
    allowedClientsCidr String
    The subnet of IP addresses permitted to access the share.
    mountPermissions AllowedClientMountPermissions
    Mount permissions.
    network String
    The network the access point sits on.
    noRootSquash Boolean
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    allowDev boolean
    Allow dev flag. Which controls whether to allow creation of devices.
    allowSuid boolean
    Allow the setuid flag.
    allowedClientsCidr string
    The subnet of IP addresses permitted to access the share.
    mountPermissions AllowedClientMountPermissions
    Mount permissions.
    network string
    The network the access point sits on.
    noRootSquash boolean
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    allow_dev bool
    Allow dev flag. Which controls whether to allow creation of devices.
    allow_suid bool
    Allow the setuid flag.
    allowed_clients_cidr str
    The subnet of IP addresses permitted to access the share.
    mount_permissions AllowedClientMountPermissions
    Mount permissions.
    network str
    The network the access point sits on.
    no_root_squash bool
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    allowDev Boolean
    Allow dev flag. Which controls whether to allow creation of devices.
    allowSuid Boolean
    Allow the setuid flag.
    allowedClientsCidr String
    The subnet of IP addresses permitted to access the share.
    mountPermissions "MOUNT_PERMISSIONS_UNSPECIFIED" | "READ" | "READ_WRITE"
    Mount permissions.
    network String
    The network the access point sits on.
    noRootSquash Boolean
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.

    AllowedClientMountPermissions, AllowedClientMountPermissionsArgs

    MountPermissionsUnspecified
    MOUNT_PERMISSIONS_UNSPECIFIEDPermissions were not specified.
    Read
    READNFS share can be mount with read-only permissions.
    ReadWrite
    READ_WRITENFS share can be mount with read-write permissions.
    AllowedClientMountPermissionsMountPermissionsUnspecified
    MOUNT_PERMISSIONS_UNSPECIFIEDPermissions were not specified.
    AllowedClientMountPermissionsRead
    READNFS share can be mount with read-only permissions.
    AllowedClientMountPermissionsReadWrite
    READ_WRITENFS share can be mount with read-write permissions.
    MountPermissionsUnspecified
    MOUNT_PERMISSIONS_UNSPECIFIEDPermissions were not specified.
    Read
    READNFS share can be mount with read-only permissions.
    ReadWrite
    READ_WRITENFS share can be mount with read-write permissions.
    MountPermissionsUnspecified
    MOUNT_PERMISSIONS_UNSPECIFIEDPermissions were not specified.
    Read
    READNFS share can be mount with read-only permissions.
    ReadWrite
    READ_WRITENFS share can be mount with read-write permissions.
    MOUNT_PERMISSIONS_UNSPECIFIED
    MOUNT_PERMISSIONS_UNSPECIFIEDPermissions were not specified.
    READ
    READNFS share can be mount with read-only permissions.
    READ_WRITE
    READ_WRITENFS share can be mount with read-write permissions.
    "MOUNT_PERMISSIONS_UNSPECIFIED"
    MOUNT_PERMISSIONS_UNSPECIFIEDPermissions were not specified.
    "READ"
    READNFS share can be mount with read-only permissions.
    "READ_WRITE"
    READ_WRITENFS share can be mount with read-write permissions.

    AllowedClientResponse, AllowedClientResponseArgs

    AllowDev bool
    Allow dev flag. Which controls whether to allow creation of devices.
    AllowSuid bool
    Allow the setuid flag.
    AllowedClientsCidr string
    The subnet of IP addresses permitted to access the share.
    MountPermissions string
    Mount permissions.
    Network string
    The network the access point sits on.
    NfsPath string
    The path to access NFS, in format shareIP:/InstanceID InstanceID is the generated ID instead of customer provided name. example like "10.0.0.0:/g123456789-nfs001"
    NoRootSquash bool
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    ShareIp string
    The IP address of the share on this network. Assigned automatically during provisioning based on the network's services_cidr.
    AllowDev bool
    Allow dev flag. Which controls whether to allow creation of devices.
    AllowSuid bool
    Allow the setuid flag.
    AllowedClientsCidr string
    The subnet of IP addresses permitted to access the share.
    MountPermissions string
    Mount permissions.
    Network string
    The network the access point sits on.
    NfsPath string
    The path to access NFS, in format shareIP:/InstanceID InstanceID is the generated ID instead of customer provided name. example like "10.0.0.0:/g123456789-nfs001"
    NoRootSquash bool
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    ShareIp string
    The IP address of the share on this network. Assigned automatically during provisioning based on the network's services_cidr.
    allowDev Boolean
    Allow dev flag. Which controls whether to allow creation of devices.
    allowSuid Boolean
    Allow the setuid flag.
    allowedClientsCidr String
    The subnet of IP addresses permitted to access the share.
    mountPermissions String
    Mount permissions.
    network String
    The network the access point sits on.
    nfsPath String
    The path to access NFS, in format shareIP:/InstanceID InstanceID is the generated ID instead of customer provided name. example like "10.0.0.0:/g123456789-nfs001"
    noRootSquash Boolean
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    shareIp String
    The IP address of the share on this network. Assigned automatically during provisioning based on the network's services_cidr.
    allowDev boolean
    Allow dev flag. Which controls whether to allow creation of devices.
    allowSuid boolean
    Allow the setuid flag.
    allowedClientsCidr string
    The subnet of IP addresses permitted to access the share.
    mountPermissions string
    Mount permissions.
    network string
    The network the access point sits on.
    nfsPath string
    The path to access NFS, in format shareIP:/InstanceID InstanceID is the generated ID instead of customer provided name. example like "10.0.0.0:/g123456789-nfs001"
    noRootSquash boolean
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    shareIp string
    The IP address of the share on this network. Assigned automatically during provisioning based on the network's services_cidr.
    allow_dev bool
    Allow dev flag. Which controls whether to allow creation of devices.
    allow_suid bool
    Allow the setuid flag.
    allowed_clients_cidr str
    The subnet of IP addresses permitted to access the share.
    mount_permissions str
    Mount permissions.
    network str
    The network the access point sits on.
    nfs_path str
    The path to access NFS, in format shareIP:/InstanceID InstanceID is the generated ID instead of customer provided name. example like "10.0.0.0:/g123456789-nfs001"
    no_root_squash bool
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    share_ip str
    The IP address of the share on this network. Assigned automatically during provisioning based on the network's services_cidr.
    allowDev Boolean
    Allow dev flag. Which controls whether to allow creation of devices.
    allowSuid Boolean
    Allow the setuid flag.
    allowedClientsCidr String
    The subnet of IP addresses permitted to access the share.
    mountPermissions String
    Mount permissions.
    network String
    The network the access point sits on.
    nfsPath String
    The path to access NFS, in format shareIP:/InstanceID InstanceID is the generated ID instead of customer provided name. example like "10.0.0.0:/g123456789-nfs001"
    noRootSquash Boolean
    Disable root squashing, which is a feature of NFS. Root squash is a special mapping of the remote superuser (root) identity when using identity authentication.
    shareIp String
    The IP address of the share on this network. Assigned automatically during provisioning based on the network's services_cidr.

    NfsShareStorageType, NfsShareStorageTypeArgs

    StorageTypeUnspecified
    STORAGE_TYPE_UNSPECIFIEDThe storage type for this volume is unknown.
    Ssd
    SSDThe storage type for this volume is SSD.
    Hdd
    HDDThis storage type for this volume is HDD.
    NfsShareStorageTypeStorageTypeUnspecified
    STORAGE_TYPE_UNSPECIFIEDThe storage type for this volume is unknown.
    NfsShareStorageTypeSsd
    SSDThe storage type for this volume is SSD.
    NfsShareStorageTypeHdd
    HDDThis storage type for this volume is HDD.
    StorageTypeUnspecified
    STORAGE_TYPE_UNSPECIFIEDThe storage type for this volume is unknown.
    Ssd
    SSDThe storage type for this volume is SSD.
    Hdd
    HDDThis storage type for this volume is HDD.
    StorageTypeUnspecified
    STORAGE_TYPE_UNSPECIFIEDThe storage type for this volume is unknown.
    Ssd
    SSDThe storage type for this volume is SSD.
    Hdd
    HDDThis storage type for this volume is HDD.
    STORAGE_TYPE_UNSPECIFIED
    STORAGE_TYPE_UNSPECIFIEDThe storage type for this volume is unknown.
    SSD
    SSDThe storage type for this volume is SSD.
    HDD
    HDDThis storage type for this volume is HDD.
    "STORAGE_TYPE_UNSPECIFIED"
    STORAGE_TYPE_UNSPECIFIEDThe storage type for this volume is unknown.
    "SSD"
    SSDThe storage type for this volume is SSD.
    "HDD"
    HDDThis storage type for this volume is HDD.

    Package Details

    Repository
    Google Cloud Native pulumi/pulumi-google-native
    License
    Apache-2.0
    google-native logo

    Google Cloud Native is in preview. Google Cloud Classic is fully supported.

    Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi