Slurm::Share is copyright 2014-2016 by the University of Maryland. Slurm-Sshare version 1.00 ========================= This is a wrapper around the Slurm sshare command. Basically, it provides some methods so that one can call the sshare command from with Perl. It also provides a couple of higher level methods for returning the usage of an Slurm account in a Slurm cluster, or for a specific user in a Slurm account/cluster. A verbose mode is also supported, which will print out the actual sshare commands before executing them. Because the Slurm sshare command only views information and does not change the databases, there is no need for a "dryrun" mode. This package wraps calls to the Slurm sshare command, and does not directly talk to any Slurm databases. This approach has pros and cons, but as the Slurm sshare command seems to have a fairly stable interface, the Perl module should be fairly stable as well. Linking to Slurm libraries directly might have some performance benefits, but this did not seem like code that needs to be highly optimized. Using the wrapper approach also makes for easier correlation between manual procedures, thereby easing the automation of routine procedures. It has been used with Slurm version 2.x to 15.08.2, although not all features are available on all versions. Although the package will install and regression tests may succeed even on systems without Slurm (the tests use canned input), the package is not useful without Slurm. INSTALLATION To install this module, run the following commands: perl Makefile.PL make make test make install The Sshare.pm module defaults to looking for 'sshare' in the PATH of the user running the code, but you can edit the file if you wish a different default 'sshare' to be used (set the value of SSHARE_CMD near the top of the Sshare.pm file; there are comments in the code to guide you). The caller can always specify a path. The sbalance script will also be installed by the above. However, it is recommended that you modify the resulting script (either in the build directory before the make install or in the destination directory afterwards) to customize it for your site. More information is in the bin/README file. DEPENDENCIES This module requires you to have Slurm installed, and in particular the sshare command, in order to be of use. The regression tests use hacked test scripts which mimic sshare output, and so will succeed even without a Slurm installation, but there is no point to installing this module without Slurm. The module has been used/test on Slurm versions from 2.x to 15.08.2, although not all features are available on all slurm versions. The module requires the Class::Accessor module from CPAN. The sbalance script additionally requires Pod::Usage for displaying documentation SUPPORT AND DOCUMENTATION After installing, you can find documentation for this module with the perldoc command. perldoc Slurm::Sshare You can also look for information at: RT, CPAN's request tracker (report bugs here) http://rt.cpan.org/NoAuth/Bugs.html?Dist=Slurm-Sshare AnnoCPAN, Annotated CPAN documentation http://annocpan.org/dist/Slurm-Sshare CPAN Ratings http://cpanratings.perl.org/d/Slurm-Sshare Search CPAN http://search.cpan.org/dist/Slurm-Sshare/ LICENSE AND COPYRIGHT Written by Thomas M. Payerle Copyright (C) 2014-2016 by the University of Maryland This program is free software; you can redistribute it and/or modify it under the terms of the the Artistic License (2.0). You may obtain a copy of the full license at: L Any use, modification, and distribution of the Standard or Modified Versions is governed by this Artistic License. By using, modifying or distributing the Package, you accept this license. Do not use, modify, or distribute the Package, if you do not accept this license. If your Modified Version has been derived from a Modified Version made by someone other than you, you are nevertheless required to ensure that your Modified Version complies with the requirements of this license. This license does not grant you the right to use any trademark, service mark, tradename, or logo of the Copyright Holder. This license includes the non-exclusive, worldwide, free-of-charge patent license to make, have made, use, offer to sell, sell, import and otherwise transfer the Package with respect to any patent claims licensable by the Copyright Holder that are necessarily infringed by the Package. If you institute patent litigation (including a cross-claim or counterclaim) against any party alleging that the Package constitutes direct or contributory patent infringement, then this Artistic License to you shall terminate on the date that such litigation is filed. Disclaimer of Warranty: THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY YOUR LOCAL LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR CONTRIBUTOR WILL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.