Provided by: clustershell_1.6-4_all bug


       groups.conf - Configuration file for ClusterShell external node groups


       The  ClusterShell  library  obtains node groups configuration options from the system-wide
       configuration file /etc/clustershell/groups.conf.  Additional configuration files are also
       read  from  the  directories  set  by the groupsdir option, if present.  See the groupsdir
       option below for further details.

       Configuration files have a format in the style of RFC 822 potentially composed of  several
       sections  which  may  be  present  in any order. There are two types of sections: Main and
       Group source:

       Main   Global configuration options. There should be only one Main section.


              The Group_source section(s) define the configuration for each node group source (or
              namespace).  This configuration consists in external commands definition (map, all,
              list and reverse).

       Only Group_source section(s) are allowed in additional configuration files.

   [Main] OPTIONS
       Configuration parameters of the Main section are described below.

              Specify the default group source (group namespace) used by the NodeSet parser  when
              the user does not explicitly specify the group source (eg. "@io").

              Optional  list  of directories where the ClusterShell library should look for .conf
              files which define group sources to use. Each file in these  directories  with  the
              .conf  suffix  should  contain  one  or more Group_source sections as documented in
              [Group_source] options below. These will be merged with the group  sources  defined
              in  /etc/clustershell/groups.conf  to  form  the complete set of group sources that
              ClusterShell will use. Duplicate Group_source  sections  are  not  allowed.   Note:
              .conf files that are not readable by the current user are ignored.

   [Group_source] OPTIONS
       Configuration parameters of each group source section are described below.

       map    Specify  the  external  shell  command used to resolve a group name into a nodeset,
              list of nodes or list of nodeset (separated by  space  characters  or  by  carriage
              returns). The variable $GROUP is replaced before executing the command.

       all    Optional external shell command that should return a nodeset, list of nodes or list
              of nodeset of all nodes for this group source. If not specified, the  library  will
              try  to  resolve  all  nodes  by  using the list external command in the same group
              source followed by map for each group.

       list   Optional external shell command that should return the list of all groups for  this
              group source (separated by space characters or by carriage returns).

              Optional  external  shell  command  used to find the group(s) of a single node. The
              variable $NODE is previously replaced. If this upcall is not specified, the reverse
              operation  is  computed  in  memory  by  the library from the list and map external
              calls. Also, if the number of nodes to  reverse  is  greater  than  the  number  of
              available groups, the reverse external command is avoided automatically.

       When  the  library  executes  a  group  source external shell command, the current working
       directory is previously set to  the  corresponding  groupsdir.  This  allows  the  use  of
       relative paths for third party files in the command.

       Each  external  command  might  return  a  non-zero  return code when the operation is not
       doable. But if the call return zero, for instance, for a non-existing group, the user will
       not receive any error when trying to resolve such unknown group.  The desired behaviour is
       up to the system administrator.


       All external command results are cached in memory to avoid multiple calls.


       Simple configuration file for local groups and slurm partitions binding.

       default: local
       #groupsdir: /etc/clustershell/groups.conf.d/

       map: sed -n 's/^$GROUP:(.*)/1/p' /etc/clustershell/groups
       list: sed -n 's/^\([0-9A-Za-z_-]*\):.*/\1/p' /etc/clustershell/groups

       map: sinfo -h -o "%N" -p $GROUP
       all: sinfo -h -o "%N"
       list: sinfo -h -o "%P"
       reverse: sinfo -h -N -o "%P" -n $NODE



              System-wide external node groups configuration file.


              Recommended directory for additional configuration files.


       clush(1), clubak(1), nodeset(1)


       Stephane Thiell, CEA DAM  <>


       CeCILL-C V1