lib/storage.cf
See the storage promises
 documentation for a
comprehensive reference on the body types and attributes used here.
volume bodies
min_free_space
Prototype: min_free_space(free)
Description: Warn if the storage doesn’t have at least free free space.
A warnings is also generated if the storage is smaller than 10K or as less than 2 file entries.
Arguments:
free: Absolute or percentage minimum disk space that should be available before warning
Implementation:
body volume min_free_space(free)
{
      check_foreign  => "false";
      freespace      => "$(free)";
      sensible_size  => "10000";
      sensible_count => "2";
}mount bodies
nfs
Prototype: nfs(server, source)
Description: Mounts the storage at source
 on server
 via nfs protocol.
Also modifies the file system table.
Arguments:
server: Hostname or IP of remote serversource: Path of remote file system to mount
Implementation:
body mount nfs(server,source)
{
      mount_type => "nfs";
      mount_source => "$(source)";
      mount_server => "$(server)";
      edit_fstab => "true";
}nfs_p
Prototype: nfs_p(server, source, perm)
Description: Mounts the storage via nfs, with perm passed as options to mount.
Also modifies the file system table.
Arguments:
server: Hostname or IP of remote serversource: Path of remote file system to mountperm: A list of options that’s passed to the mount command
See also: nfs, unmount()
Implementation:
body mount nfs_p(server,source,perm)
{
      mount_type => "nfs";
      mount_source => "$(source)";
      mount_server => "$(server)";
      mount_options => {"$(perm)"};
      edit_fstab => "true";
}unmount
Prototype: unmount
Description: Unmounts the nfs storage.
Also modifies the file system table.
Implementation:
body mount unmount
{
      mount_type => "nfs";
      edit_fstab => "true";
      unmount => "true";
}