<reponame>rhysmdnz/pulumi-alicloud-rhys-hacks<filename>sdk/dotnet/Ehpc/Inputs/ClusterAdditionalVolumeArgs.cs// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.Ehpc.Inputs
{

    public sealed class ClusterAdditionalVolumeArgs : global::Pulumi.ResourceArgs
    {
        /// <summary>
        /// The queue of the nodes to which the additional file system is attached.
        /// </summary>
        [Input("jobQueue")]
        public Input<string>? JobQueue { get; set; }

        /// <summary>
        /// The local directory on which the additional file system is mounted.
        /// </summary>
        [Input("localDirectory")]
        public Input<string>? LocalDirectory { get; set; }

        /// <summary>
        /// The type of the cluster. Valid value: `PublicCloud`.
        /// </summary>
        [Input("location")]
        public Input<string>? Location { get; set; }

        /// <summary>
        /// The remote directory to which the additional file system is mounted.
        /// </summary>
        [Input("remoteDirectory")]
        public Input<string>? RemoteDirectory { get; set; }

        [Input("roles")]
        private InputList<Inputs.ClusterAdditionalVolumeRoleArgs>? _roles;

        /// <summary>
        /// The roles. See the following `Block roles`.
        /// </summary>
        public InputList<Inputs.ClusterAdditionalVolumeRoleArgs> Roles
        {
            get => _roles ?? (_roles = new InputList<Inputs.ClusterAdditionalVolumeRoleArgs>());
            set => _roles = value;
        }

        /// <summary>
        /// The ID of the additional file system.
        /// </summary>
        [Input("volumeId")]
        public Input<string>? VolumeId { get; set; }

        /// <summary>
        /// The mount options of the file system.
        /// </summary>
        [Input("volumeMountOption")]
        public Input<string>? VolumeMountOption { get; set; }

        /// <summary>
        /// The mount target of the additional file system.
        /// </summary>
        [Input("volumeMountpoint")]
        public Input<string>? VolumeMountpoint { get; set; }

        /// <summary>
        /// The type of the protocol that is used by the additional file system. Valid values: `NFS`, `SMB`. Default value: `NFS`
        /// </summary>
        [Input("volumeProtocol")]
        public Input<string>? VolumeProtocol { get; set; }

        /// <summary>
        /// The type of the additional shared storage. Only NAS file systems are supported.
        /// </summary>
        [Input("volumeType")]
        public Input<string>? VolumeType { get; set; }

        public ClusterAdditionalVolumeArgs()
        {
        }
        public static new ClusterAdditionalVolumeArgs Empty => new ClusterAdditionalVolumeArgs();
    }
}
