1. Packages
  2. Ionoscloud
  3. API Docs
  4. nfs
  5. Share
IonosCloud v0.2.3 published on Tuesday, May 13, 2025 by ionos-cloud

ionoscloud.nfs.Share

Explore with Pulumi AI

ionoscloud logo
IonosCloud v0.2.3 published on Tuesday, May 13, 2025 by ionos-cloud

    Creates and manages Network File Storage (NFS) Share objects on IonosCloud.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as ionoscloud from "@ionos-cloud/sdk-pulumi";
    
    // Basic example
    const nfsDc = new ionoscloud.compute.Datacenter("nfs_dc", {
        name: "NFS Datacenter",
        location: "de/txl",
        description: "Datacenter Description",
        secAuthProtection: false,
    });
    const nfsLan = new ionoscloud.compute.Lan("nfs_lan", {
        datacenterId: nfsDc.id,
        "public": false,
        name: "Lan for NFS",
    });
    const example = new ionoscloud.nfs.Cluster("example", {
        name: "test",
        location: "de/txl",
        size: 2,
        nfs: {
            minVersion: "4.2",
        },
        connections: {
            datacenterId: nfsDc.id,
            ipAddress: "192.168.100.10/24",
            lan: nfsLan.id,
        },
    });
    const exampleShare = new ionoscloud.nfs.Share("example", {
        location: "de/txl",
        clusterId: example.id,
        name: "example-share",
        quota: 512,
        gid: 512,
        uid: 512,
        clientGroups: [{
            description: "Client Group 1",
            ipNetworks: ["10.234.50.0/24"],
            hosts: ["10.234.62.123"],
            nfs: {
                squash: "all-anonymous",
            },
        }],
    });
    
    import pulumi
    import pulumi_ionoscloud as ionoscloud
    
    # Basic example
    nfs_dc = ionoscloud.compute.Datacenter("nfs_dc",
        name="NFS Datacenter",
        location="de/txl",
        description="Datacenter Description",
        sec_auth_protection=False)
    nfs_lan = ionoscloud.compute.Lan("nfs_lan",
        datacenter_id=nfs_dc.id,
        public=False,
        name="Lan for NFS")
    example = ionoscloud.nfs.Cluster("example",
        name="test",
        location="de/txl",
        size=2,
        nfs={
            "min_version": "4.2",
        },
        connections={
            "datacenter_id": nfs_dc.id,
            "ip_address": "192.168.100.10/24",
            "lan": nfs_lan.id,
        })
    example_share = ionoscloud.nfs.Share("example",
        location="de/txl",
        cluster_id=example.id,
        name="example-share",
        quota=512,
        gid=512,
        uid=512,
        client_groups=[{
            "description": "Client Group 1",
            "ip_networks": ["10.234.50.0/24"],
            "hosts": ["10.234.62.123"],
            "nfs": {
                "squash": "all-anonymous",
            },
        }])
    
    package main
    
    import (
    	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/compute"
    	"github.com/ionos-cloud/pulumi-ionoscloud/sdk/go/ionoscloud/nfs"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Basic example
    		nfsDc, err := compute.NewDatacenter(ctx, "nfs_dc", &compute.DatacenterArgs{
    			Name:              pulumi.String("NFS Datacenter"),
    			Location:          pulumi.String("de/txl"),
    			Description:       pulumi.String("Datacenter Description"),
    			SecAuthProtection: pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		nfsLan, err := compute.NewLan(ctx, "nfs_lan", &compute.LanArgs{
    			DatacenterId: nfsDc.ID(),
    			Public:       pulumi.Bool(false),
    			Name:         pulumi.String("Lan for NFS"),
    		})
    		if err != nil {
    			return err
    		}
    		example, err := nfs.NewCluster(ctx, "example", &nfs.ClusterArgs{
    			Name:     pulumi.String("test"),
    			Location: pulumi.String("de/txl"),
    			Size:     pulumi.Int(2),
    			Nfs: &nfs.ClusterNfsArgs{
    				MinVersion: pulumi.String("4.2"),
    			},
    			Connections: &nfs.ClusterConnectionsArgs{
    				DatacenterId: nfsDc.ID(),
    				IpAddress:    pulumi.String("192.168.100.10/24"),
    				Lan:          nfsLan.ID(),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = nfs.NewShare(ctx, "example", &nfs.ShareArgs{
    			Location:  pulumi.String("de/txl"),
    			ClusterId: example.ID(),
    			Name:      pulumi.String("example-share"),
    			Quota:     pulumi.Int(512),
    			Gid:       pulumi.Int(512),
    			Uid:       pulumi.Int(512),
    			ClientGroups: nfs.ShareClientGroupArray{
    				&nfs.ShareClientGroupArgs{
    					Description: pulumi.String("Client Group 1"),
    					IpNetworks: pulumi.StringArray{
    						pulumi.String("10.234.50.0/24"),
    					},
    					Hosts: pulumi.StringArray{
    						pulumi.String("10.234.62.123"),
    					},
    					Nfs: &nfs.ShareClientGroupNfsArgs{
    						Squash: pulumi.String("all-anonymous"),
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Ionoscloud = Ionoscloud.Pulumi.Ionoscloud;
    
    return await Deployment.RunAsync(() => 
    {
        // Basic example
        var nfsDc = new Ionoscloud.Compute.Datacenter("nfs_dc", new()
        {
            Name = "NFS Datacenter",
            Location = "de/txl",
            Description = "Datacenter Description",
            SecAuthProtection = false,
        });
    
        var nfsLan = new Ionoscloud.Compute.Lan("nfs_lan", new()
        {
            DatacenterId = nfsDc.Id,
            Public = false,
            Name = "Lan for NFS",
        });
    
        var example = new Ionoscloud.Nfs.Cluster("example", new()
        {
            Name = "test",
            Location = "de/txl",
            Size = 2,
            Nfs = new Ionoscloud.Nfs.Inputs.ClusterNfsArgs
            {
                MinVersion = "4.2",
            },
            Connections = new Ionoscloud.Nfs.Inputs.ClusterConnectionsArgs
            {
                DatacenterId = nfsDc.Id,
                IpAddress = "192.168.100.10/24",
                Lan = nfsLan.Id,
            },
        });
    
        var exampleShare = new Ionoscloud.Nfs.Share("example", new()
        {
            Location = "de/txl",
            ClusterId = example.Id,
            Name = "example-share",
            Quota = 512,
            Gid = 512,
            Uid = 512,
            ClientGroups = new[]
            {
                new Ionoscloud.Nfs.Inputs.ShareClientGroupArgs
                {
                    Description = "Client Group 1",
                    IpNetworks = new[]
                    {
                        "10.234.50.0/24",
                    },
                    Hosts = new[]
                    {
                        "10.234.62.123",
                    },
                    Nfs = new Ionoscloud.Nfs.Inputs.ShareClientGroupNfsArgs
                    {
                        Squash = "all-anonymous",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.ionoscloud.compute.Datacenter;
    import com.pulumi.ionoscloud.compute.DatacenterArgs;
    import com.pulumi.ionoscloud.compute.Lan;
    import com.pulumi.ionoscloud.compute.LanArgs;
    import com.pulumi.ionoscloud.nfs.Cluster;
    import com.pulumi.ionoscloud.nfs.ClusterArgs;
    import com.pulumi.ionoscloud.nfs.inputs.ClusterNfsArgs;
    import com.pulumi.ionoscloud.nfs.inputs.ClusterConnectionsArgs;
    import com.pulumi.ionoscloud.nfs.Share;
    import com.pulumi.ionoscloud.nfs.ShareArgs;
    import com.pulumi.ionoscloud.nfs.inputs.ShareClientGroupArgs;
    import com.pulumi.ionoscloud.nfs.inputs.ShareClientGroupNfsArgs;
    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) {
            // Basic example
            var nfsDc = new Datacenter("nfsDc", DatacenterArgs.builder()
                .name("NFS Datacenter")
                .location("de/txl")
                .description("Datacenter Description")
                .secAuthProtection(false)
                .build());
    
            var nfsLan = new Lan("nfsLan", LanArgs.builder()
                .datacenterId(nfsDc.id())
                .public_(false)
                .name("Lan for NFS")
                .build());
    
            var example = new Cluster("example", ClusterArgs.builder()
                .name("test")
                .location("de/txl")
                .size(2)
                .nfs(ClusterNfsArgs.builder()
                    .minVersion("4.2")
                    .build())
                .connections(ClusterConnectionsArgs.builder()
                    .datacenterId(nfsDc.id())
                    .ipAddress("192.168.100.10/24")
                    .lan(nfsLan.id())
                    .build())
                .build());
    
            var exampleShare = new Share("exampleShare", ShareArgs.builder()
                .location("de/txl")
                .clusterId(example.id())
                .name("example-share")
                .quota(512)
                .gid(512)
                .uid(512)
                .clientGroups(ShareClientGroupArgs.builder()
                    .description("Client Group 1")
                    .ipNetworks("10.234.50.0/24")
                    .hosts("10.234.62.123")
                    .nfs(ShareClientGroupNfsArgs.builder()
                        .squash("all-anonymous")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Basic example
      nfsDc:
        type: ionoscloud:compute:Datacenter
        name: nfs_dc
        properties:
          name: NFS Datacenter
          location: de/txl
          description: Datacenter Description
          secAuthProtection: false
      nfsLan:
        type: ionoscloud:compute:Lan
        name: nfs_lan
        properties:
          datacenterId: ${nfsDc.id}
          public: false
          name: Lan for NFS
      example:
        type: ionoscloud:nfs:Cluster
        properties:
          name: test
          location: de/txl
          size: 2
          nfs:
            minVersion: '4.2'
          connections:
            datacenterId: ${nfsDc.id}
            ipAddress: 192.168.100.10/24
            lan: ${nfsLan.id}
      exampleShare:
        type: ionoscloud:nfs:Share
        name: example
        properties:
          location: de/txl
          clusterId: ${example.id}
          name: example-share
          quota: 512
          gid: 512
          uid: 512
          clientGroups:
            - description: Client Group 1
              ipNetworks:
                - 10.234.50.0/24
              hosts:
                - 10.234.62.123
              nfs:
                squash: all-anonymous
    

    Create Share Resource

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

    Constructor syntax

    new Share(name: string, args: ShareArgs, opts?: CustomResourceOptions);
    @overload
    def Share(resource_name: str,
              args: ShareArgs,
              opts: Optional[ResourceOptions] = None)
    
    @overload
    def Share(resource_name: str,
              opts: Optional[ResourceOptions] = None,
              client_groups: Optional[Sequence[ShareClientGroupArgs]] = None,
              cluster_id: Optional[str] = None,
              gid: Optional[int] = None,
              location: Optional[str] = None,
              name: Optional[str] = None,
              quota: Optional[int] = None,
              uid: Optional[int] = None)
    func NewShare(ctx *Context, name string, args ShareArgs, opts ...ResourceOption) (*Share, error)
    public Share(string name, ShareArgs args, CustomResourceOptions? opts = null)
    public Share(String name, ShareArgs args)
    public Share(String name, ShareArgs args, CustomResourceOptions options)
    
    type: ionoscloud:nfs:Share
    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 ShareArgs
    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 ShareArgs
    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 ShareArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ShareArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ShareArgs
    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 ionoscloudShareResource = new Ionoscloud.Nfs.Share("ionoscloudShareResource", new()
    {
        ClientGroups = new[]
        {
            new Ionoscloud.Nfs.Inputs.ShareClientGroupArgs
            {
                Hosts = new[]
                {
                    "string",
                },
                IpNetworks = new[]
                {
                    "string",
                },
                Description = "string",
                Nfs = new Ionoscloud.Nfs.Inputs.ShareClientGroupNfsArgs
                {
                    Squash = "string",
                },
            },
        },
        ClusterId = "string",
        Gid = 0,
        Location = "string",
        Name = "string",
        Quota = 0,
        Uid = 0,
    });
    
    example, err := nfs.NewShare(ctx, "ionoscloudShareResource", &nfs.ShareArgs{
    	ClientGroups: nfs.ShareClientGroupArray{
    		&nfs.ShareClientGroupArgs{
    			Hosts: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			IpNetworks: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Description: pulumi.String("string"),
    			Nfs: &nfs.ShareClientGroupNfsArgs{
    				Squash: pulumi.String("string"),
    			},
    		},
    	},
    	ClusterId: pulumi.String("string"),
    	Gid:       pulumi.Int(0),
    	Location:  pulumi.String("string"),
    	Name:      pulumi.String("string"),
    	Quota:     pulumi.Int(0),
    	Uid:       pulumi.Int(0),
    })
    
    var ionoscloudShareResource = new com.ionoscloud.pulumi.ionoscloud.nfs.Share("ionoscloudShareResource", com.ionoscloud.pulumi.ionoscloud.nfs.ShareArgs.builder()
        .clientGroups(ShareClientGroupArgs.builder()
            .hosts("string")
            .ipNetworks("string")
            .description("string")
            .nfs(ShareClientGroupNfsArgs.builder()
                .squash("string")
                .build())
            .build())
        .clusterId("string")
        .gid(0)
        .location("string")
        .name("string")
        .quota(0)
        .uid(0)
        .build());
    
    ionoscloud_share_resource = ionoscloud.nfs.Share("ionoscloudShareResource",
        client_groups=[{
            "hosts": ["string"],
            "ip_networks": ["string"],
            "description": "string",
            "nfs": {
                "squash": "string",
            },
        }],
        cluster_id="string",
        gid=0,
        location="string",
        name="string",
        quota=0,
        uid=0)
    
    const ionoscloudShareResource = new ionoscloud.nfs.Share("ionoscloudShareResource", {
        clientGroups: [{
            hosts: ["string"],
            ipNetworks: ["string"],
            description: "string",
            nfs: {
                squash: "string",
            },
        }],
        clusterId: "string",
        gid: 0,
        location: "string",
        name: "string",
        quota: 0,
        uid: 0,
    });
    
    type: ionoscloud:nfs:Share
    properties:
        clientGroups:
            - description: string
              hosts:
                - string
              ipNetworks:
                - string
              nfs:
                squash: string
        clusterId: string
        gid: 0
        location: string
        name: string
        quota: 0
        uid: 0
    

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

    ClientGroups List<Ionoscloud.ShareClientGroup>
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    ClusterId string
    The ID of the Network File Storage Cluster.
    Gid int
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    Location string
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    Name string
    The directory being exported.
    Quota int
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    Uid int
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    ClientGroups []ShareClientGroupArgs
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    ClusterId string
    The ID of the Network File Storage Cluster.
    Gid int
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    Location string
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    Name string
    The directory being exported.
    Quota int
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    Uid int
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    clientGroups List<ShareClientGroup>
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    clusterId String
    The ID of the Network File Storage Cluster.
    gid Integer
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location String
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name String
    The directory being exported.
    quota Integer
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid Integer
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    clientGroups ShareClientGroup[]
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    clusterId string
    The ID of the Network File Storage Cluster.
    gid number
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location string
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name string
    The directory being exported.
    quota number
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid number
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    client_groups Sequence[ShareClientGroupArgs]
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    cluster_id str
    The ID of the Network File Storage Cluster.
    gid int
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location str
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name str
    The directory being exported.
    quota int
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid int
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    clientGroups List<Property Map>
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    clusterId String
    The ID of the Network File Storage Cluster.
    gid Number
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location String
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name String
    The directory being exported.
    quota Number
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid Number
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    NfsPath string
    Path to the NFS export. The NFS path is the path to the directory being exported.
    Id string
    The provider-assigned unique ID for this managed resource.
    NfsPath string
    Path to the NFS export. The NFS path is the path to the directory being exported.
    id String
    The provider-assigned unique ID for this managed resource.
    nfsPath String
    Path to the NFS export. The NFS path is the path to the directory being exported.
    id string
    The provider-assigned unique ID for this managed resource.
    nfsPath string
    Path to the NFS export. The NFS path is the path to the directory being exported.
    id str
    The provider-assigned unique ID for this managed resource.
    nfs_path str
    Path to the NFS export. The NFS path is the path to the directory being exported.
    id String
    The provider-assigned unique ID for this managed resource.
    nfsPath String
    Path to the NFS export. The NFS path is the path to the directory being exported.

    Look up Existing Share Resource

    Get an existing Share 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?: ShareState, opts?: CustomResourceOptions): Share
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            client_groups: Optional[Sequence[ShareClientGroupArgs]] = None,
            cluster_id: Optional[str] = None,
            gid: Optional[int] = None,
            location: Optional[str] = None,
            name: Optional[str] = None,
            nfs_path: Optional[str] = None,
            quota: Optional[int] = None,
            uid: Optional[int] = None) -> Share
    func GetShare(ctx *Context, name string, id IDInput, state *ShareState, opts ...ResourceOption) (*Share, error)
    public static Share Get(string name, Input<string> id, ShareState? state, CustomResourceOptions? opts = null)
    public static Share get(String name, Output<String> id, ShareState state, CustomResourceOptions options)
    resources:  _:    type: ionoscloud:nfs:Share    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:
    ClientGroups List<Ionoscloud.ShareClientGroup>
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    ClusterId string
    The ID of the Network File Storage Cluster.
    Gid int
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    Location string
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    Name string
    The directory being exported.
    NfsPath string
    Path to the NFS export. The NFS path is the path to the directory being exported.
    Quota int
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    Uid int
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    ClientGroups []ShareClientGroupArgs
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    ClusterId string
    The ID of the Network File Storage Cluster.
    Gid int
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    Location string
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    Name string
    The directory being exported.
    NfsPath string
    Path to the NFS export. The NFS path is the path to the directory being exported.
    Quota int
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    Uid int
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    clientGroups List<ShareClientGroup>
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    clusterId String
    The ID of the Network File Storage Cluster.
    gid Integer
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location String
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name String
    The directory being exported.
    nfsPath String
    Path to the NFS export. The NFS path is the path to the directory being exported.
    quota Integer
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid Integer
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    clientGroups ShareClientGroup[]
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    clusterId string
    The ID of the Network File Storage Cluster.
    gid number
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location string
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name string
    The directory being exported.
    nfsPath string
    Path to the NFS export. The NFS path is the path to the directory being exported.
    quota number
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid number
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    client_groups Sequence[ShareClientGroupArgs]
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    cluster_id str
    The ID of the Network File Storage Cluster.
    gid int
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location str
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name str
    The directory being exported.
    nfs_path str
    Path to the NFS export. The NFS path is the path to the directory being exported.
    quota int
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid int
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.
    clientGroups List<Property Map>
    The groups of clients are the systems connecting to the Network File Storage cluster. Each group includes:
    clusterId String
    The ID of the Network File Storage Cluster.
    gid Number
    The group ID that will own the exported directory. If not set, anonymous (512) will be used.
    location String
    The location of the Network File Storage Cluster. If this is not set and if no value is provided for the IONOS_API_URL env var, the default location will be: de/fra.
    name String
    The directory being exported.
    nfsPath String
    Path to the NFS export. The NFS path is the path to the directory being exported.
    quota Number
    The quota in MiB for the export. The quota can restrict the amount of data that can be stored within the export. The quota can be disabled using 0. Default is 0.
    uid Number
    The user ID that will own the exported directory. If not set, anonymous (512) will be used.

    Supporting Types

    ShareClientGroup, ShareClientGroupArgs

    Hosts List<string>
    A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
    IpNetworks List<string>
    The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
    Description string
    Optional description for the clients groups.
    Nfs Ionoscloud.ShareClientGroupNfs
    NFS specific configurations. Each configuration includes:
    Hosts []string
    A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
    IpNetworks []string
    The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
    Description string
    Optional description for the clients groups.
    Nfs ShareClientGroupNfs
    NFS specific configurations. Each configuration includes:
    hosts List<String>
    A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
    ipNetworks List<String>
    The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
    description String
    Optional description for the clients groups.
    nfs ShareClientGroupNfs
    NFS specific configurations. Each configuration includes:
    hosts string[]
    A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
    ipNetworks string[]
    The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
    description string
    Optional description for the clients groups.
    nfs ShareClientGroupNfs
    NFS specific configurations. Each configuration includes:
    hosts Sequence[str]
    A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
    ip_networks Sequence[str]
    The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
    description str
    Optional description for the clients groups.
    nfs ShareClientGroupNfs
    NFS specific configurations. Each configuration includes:
    hosts List<String>
    A singular host allowed to connect to the share. The host can be specified as IP address and can be either IPv4 or IPv6.
    ipNetworks List<String>
    The allowed host or network to which the export is being shared. The IP address can be either IPv4 or IPv6 and has to be given with CIDR notation.
    description String
    Optional description for the clients groups.
    nfs Property Map
    NFS specific configurations. Each configuration includes:

    ShareClientGroupNfs, ShareClientGroupNfsArgs

    Squash string
    The squash mode for the export. The squash mode can be:
    Squash string
    The squash mode for the export. The squash mode can be:
    squash String
    The squash mode for the export. The squash mode can be:
    squash string
    The squash mode for the export. The squash mode can be:
    squash str
    The squash mode for the export. The squash mode can be:
    squash String
    The squash mode for the export. The squash mode can be:

    Import

    A Network File Storage Share resource can be imported using its location, cluster_id and resource id:

    $ pulumi import ionoscloud:nfs/share:Share name location:cluster_id:resource_id
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    ionoscloud ionos-cloud/pulumi-ionoscloud
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the ionoscloud Terraform Provider.
    ionoscloud logo
    IonosCloud v0.2.3 published on Tuesday, May 13, 2025 by ionos-cloud