Version information
This version is compatible with:
- Puppet Enterprise 2023.8.x, 2023.7.x, 2023.6.x, 2023.5.x, 2023.4.x, 2023.3.x, 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2016.4.x
- Puppet >= 4.10.0 < 9.0.0
- , ,
Start using this module
Add this module to your Puppetfile:
mod 'ULHPC-slurm', '1.5.1'
Learn more about managing modules with a PuppetfileDocumentation
-- mode: markdown; mode: visual-line; --
Slurm Puppet Module
Configure and manage Slurm: A Highly Scalable Resource Manager
Copyright (c) 2017-2021 UL HPC Team <hpc-sysadmins@uni.lu>
. see also http://hpc.uni.lu
Overview
Slurm (aka "Simple Linux Utility for Resource Management") is a free and open-source job scheduler for Linux and Unix-like kernels, used by many of the world's supercomputers and computer clusters (~60% of Top500 rely on it).
Slurm is an open source, fault-tolerant, and highly scalable cluster management and job scheduling system for large and small Linux clusters
It provides three key functions.
- it allocates exclusive and/or non-exclusive access to resources (computer nodes) to users for some duration of time so they can perform work.
- it provides a framework for starting, executing, and monitoring work (typically a parallel job such as MPI) on a set of allocated nodes.
- Finally, it arbitrates contention for resources by managing a queue of pending jobs.
This Puppet module is designed to configure and manage the different daemons and components of a typical Slurm architecture, depicted below:
In particular, this module implements the following elements:
Puppet Class | Description |
---|---|
slurm |
The main slurm class, piloting all aspects of the configuration |
slurm::slurmdbd |
Specialized class for Slurmdbd, the Slurm Database Daemon. |
slurm::slurmctld |
Specialized class for Slurmctld, the central management daemon of Slurm. |
slurm::slurmd |
Specialized class for Slurmd, the compute node daemon for Slurm. |
slurm::login |
Specialized class to configure a Login node (i.e. without any of the slurm daemons) |
slurm::munge |
Manages MUNGE, an authentication service for creating and validating credentials. |
slurm::pam |
Handle PAM aspects for SLURM (Memlock for MPI etc.) |
slurm::params |
Defaults parameters for all the module classes/definition |
slurm::plugins |
Handles all default Slurm plugins -- NOT YET IMPLEMENTED |
slurm::pmix |
Handle PMIx aspects (download, build and installation) to make SLURM build compliant with PMIx, PMI1 and PMI2 |
slurm::repo |
Takes care of the control repository hosting the slurm configuration of the cluster |
Puppet Defines | Description |
---|---|
slurm::acct:mgr |
Generic wrapper for all sacctmgr commands |
slurm::acct::{account,cluster,qos,user} |
adding (or removing) a {account,cluster,qos,user} to the slurm accounting database |
slurm::build |
building Slurm sources into packages (i.e. RPMs for the moment) for a given version passed as resource name |
slurm::download |
takes care of downloading the SLURM sources for a given version passed as resource name |
slurm::firewall |
takes care of firewall aspects for SLURM |
slurm::install::packages |
installs the Slurm packages, typically built from slurm::build , for a given version passed as resource name. |
slurm::pmix::{download,build,install} |
download, build and install PMIx |
slurm::repo::syncto |
synchronizes the content of the slurm control repository (see slurm::repo ) toward a directory (typically a shared mountpoint) |
In addition, this puppet module implements several private classes:
slurm::accounting
: Setup the accounting structureslurm::common[::redhat]
: handles common tasks to all daemonslurm::config[::{cgroup,gres,topology}]
: handles the various aspects of the configuration of SLURM daemons -- see https://slurm.schedmd.com/slurm.conf.html#lbAN, i.e.slurm::install
: wrapper to download, build and install the Slurm packagesslurm::plugins::lua
: takes care of the Job Submit plugin 'lua' i.e. of the filejob_submit.lua
.
Also, a couple of extra definition in used in our infrastructure:
slurm::repo::syncto
: synchronize the control repository of the slurm configuration (which is cloned using the 'slurm::repo
' class) toward a directory (typically a shared GPFS/NFS mountpoint to make it available to all login and compute nodes)
All these components are configured through a set of variables you will find in manifests/params.pp
.
Note: the various operations that can be conducted from this repository are piloted from a Rakefile
and assumes you have a running Ruby installation.
See docs/contributing.md
for more details on the steps you shall follow to have this Rakefile
working properly.
IMPORTANT Until the release of version 1.0 (denoting a usage in production on the UL HPC Platform), this module is still to be considered in alpha state and a work in progress. Use it at your own risks!
Setup Requirements
This module currently only works completely on Redhat / CentOS 7 over Puppet >= 4.x. Over operating systems and support for Puppet 5.x and above seems to work but is not guaranteed. Yet feel free to contribute to this module to help us extending the usage of this module.
By default, some key configuration decisions are configured, namely:
-
MUNGE is used for shared key authentication.
- the shared key is generated by default, but you probably want to provide it to puppet via a URI.
-
None of the daemons are configured by default.
- You have to set the boolean parameter(s)
with_{slurmdbd,slurmctld,slurmd}
totrue
and/or include explicitly theslurm::{slurmdbd,slurmctld,slurmd}
classes
- You have to set the boolean parameter(s)
-
On a production system, you probably wants to follow the following tips:
-
set globally
service_manage
to false - you probably want to control when the daemons are restarted (typically to ensure the slurm config is really in sync across the cluster) -
set global
do_package_install
to false -
maintain a single source of authority for the shared slurm configuration as a Git repository (called here the "slurm control repository")
* your **slurm controller(s) servers** would then rely on the `slurm::repo*` classes/definitions to maintain the consistency between the local config (in `/etc/slurm`, as generated by this module upon puppet runs and its extensive hiera configuration capabilities) and this repository. * your **login and compute nodes**
not correlate the local
/etc/slurm
directory with -
you are advised to set the
service_manage
to false
-
Forge Module Dependencies
See metadata.json
. In particular, this module depends on
- puppetlabs/stdlib
- puppetlabs/mysql
- puppetlabs/inifile
- puppet/archive
- puppet/yum
- puppet/epel
- bodgit/rngd
- ghoneycutt/pam
Overview and Usage
The best way to use this module in a flexible way is to rely on Hiera coupled with a role and profile.
- See the generic manifest
default.pp
- See the
hiera.yaml
and the associatedhieradata/
, aimed at taking advantage of a customrole
facts - sample/simple profiles for each type of deployment can be found in site/profiles/manifests/
profiles::slurm
: Profile (base) class used for slurm general settingsprofiles::slurm::slurmctld
: Profile class used for setting up a Slurm Head node (where the slurmctld daemon runs)profiles::slurm::slurmdbd
: Profile class used for setting up a Slurm DBD (DataBase Daemon) nodeprofiles::slurm::slurmd
: Profile class used for setting up a Slurm Compute nodeprofiles::slurm::login
: Profile class used for setting up a Login node (cluster frontend/access) i.e. without any daemon.
The main classes are now detailed.
Class slurm
This is the main class defined in this module.
It accepts so many parameters that they are not listed here -- see the [puppet strings @param
] comments of manifests/init.pp
Use it as follows:
include ::slurm
In which case you can define the class parameters using Hiera -- see for instance the default hiera configuration (used effectively in the vagrant deployment) in hieradata/default.yaml
.
You can also prefer a profile-based approach -- see profiles::slurm
as a sample profile (base) class used for slurm general settings.
Other usage examples are proposed in tests/init.pp
, a more advanced usage (defining the network topology, the computing nodes and the SLURM partitions) in tests/advanced.pp
.
Class slurm::slurmdbd
This class is responsible for setting up a Slurm Database Daemon, which provides a secure enterprise-wide interface to a database for Slurm. In particular, it can run relatively independently of the other slurm daemon instances and thus is proposed as a separate independent class.
You can simply configure it as follows:
include ::slurm
include ::slurm::slurmdbd
Alternatively, you can use the with_slurdbd
parameter of the ::slurm
class:
class { '::slurm':
with_slurmdbd => true,
}
See also tests/slurmdbd.pp
, the sample profile profiles::slurm::slurmdbd
.
The slurm::slurmdbd
accepts also so many parameters that they are not listed here -- see the [puppet strings @param
] comments of manifests/slurmdbd.pp
for more details.
For a sample Hiera, see hieradata/default.yaml
(effectively used in the vagrant-based deployment).
Class slurm::slurmctld
The main helper class specializing the main slurm class for setting up a Slurm Head node (where the slurmctld daemon runs).
include ::slurm
include ::slurm::slurmctld
Alternatively, you can use the with_slurctld
parameter of the ::slurm
class:
class { '::slurm':
with_slurmctld => true,
}
See also tests/slurmctld.pp
, the sample profile profiles::slurm::slurmctld
.
Class slurm::slurmd
The main helper class specializing the main slurm class for setting up Slurm Compute node i.e. where the slurmd
daemon runs.
include ::slurm
include ::slurm::slurmd
Alternatively, you can use the with_slurmd
parameter of the ::slurm
class:
class { '::slurm':
with_slurmd => true,
}
Class slurm::login
The main helper class specializing the main slurm class for setting up Slurm Login node i.e. where none of the slurm daemon runs (yet the slurm CLI commands are installed via the slurm
package).
include ::slurm
include ::slurm::login
See also tests/login_node.pp
, the sample profile profiles::slurm::login
.
Class slurm::munge
MUNGE (MUNGE Uid 'N' Gid Emporium) is an authentication service for creating and validating credentials. It is designed to be highly scalable for use in an HPC cluster environment. It allows a process to authenticate the UID and GID of another local or remote process within a group of hosts having common users and groups. These hosts form a security realm that is defined by a shared cryptographic key. Clients within this security realm can create and validate credentials without the use of root privileges, reserved ports, or platform-specific methods.
For more information, see https://github.com/dun/munge
The puppet class slurm::munge
is thus responsible for setting up a working Munge environment to
be used by the SLURM daemons -- see also https://slurm.schedmd.com/authplugins.html
Use it as follows:
include ::slurm::munge
Or, if you wish to provide the munge key using puppet URI:
class {'::slurm::munge':
ensure => true,
key_source => "puppet:///modules/${myprofile}/munge.key"
}
If, as in the above example, the key is stored centrally in your control repository, you probably want to store it encrypted using git-crypt for instance.
The slurm::munge
class accepts the following parameters:
ensure
[String] Default: 'present'- Ensure the presence (or absence) of the Munge service
create_key
[Boolean] Default: true- Whether or not to generate a new key if it does not exists
daemon_args
[Array] Default: []- Set the content of the DAEMON_ARGS variable, which permits to set additional command-line options to the daemon. For example, this can be used to override the location of the secret key (
--key-file
) or set the number of worker threads (--num-threads
) See https://github.com/dun/munge/wiki/Installation-Guide#starting-the-daemon.
- Set the content of the DAEMON_ARGS variable, which permits to set additional command-line options to the daemon. For example, this can be used to override the location of the secret key (
gid
[Integer] Default: 992- GID of the munge group
key_content
[String] Default: undef- The desired contents of a file, as a string. This attribute is mutually exclusive with source and target.
key_filename
[String] Default: '/etc/munge/munge.key'- The secret key filename
key_source
[String] Default: undef- A source file, which will be copied into place on the local system. This attribute is mutually exclusive with content. The normal form of a puppet: URI is
puppet:///modules/<MODULE NAME>/<FILE PATH>
- A source file, which will be copied into place on the local system. This attribute is mutually exclusive with content. The normal form of a puppet: URI is
uid
[Integer] Default: 992- UID of the munge user
Note that the slurm
class makes use of this class by default as the parameter manage_munge
is set to true by default.
Definition slurm::download
This definition takes care of downloading the SLURM sources for a given version (passed as name to this resource) and placing them into $target
directory. You can also invoke this definition with the full archive filename i.e. slurm-<version>.tar.bz2
.
ensure
[String] Default:present
- Ensure the presence (or absence) of building
target
[String] Default:/usr/local/src
- Target directory for the downloaded sources
checksum_type
[String] Default:md5
- archive file checksum type (none|md5|sha1|sha2|sh256|sha384| sha512).
checksum_verify
[Boolean] Default: false- whether checksum will be verified (true|false).
checksum
[String] Default: ''- archive file checksum (match checksum_type)
Example: Downloading version 19.05.3-2 (latest at the time of writing) of SLURM
slurm::download { '19.05.3-2':
ensure => 'present',
checksum => '6fe2c6196f089f6210d5ba79e99b0656f5a527b4',
checksum_type => 'sha1',
target => '/usr/local/src/',
}
Definition slurm::build
This definition takes care of building Slurm sources into RPMs using 'rpmbuild'. It expect to get as resource name the SLURM version to build This assumes the sources have been downloaded using slurm::download
ensure
[String] Default:present
- Ensure the presence (or absence) of building
srcdir
[String] Default:/usr/local/src
- Where the [downloaded] Slurm sources are located
dir
[String] Default:/root/rpmbuild
on redhat systems- Top directory of the sources builds (i.e. RPMs, debs...). For instance, built RPMs will be placed under
${dir}/RPMS/${::architecture}
- Top directory of the sources builds (i.e. RPMs, debs...). For instance, built RPMs will be placed under
with
[Array] Default:[ 'lua', ... ]
- List of --with build options to pass to rpmbuild -- see https://github.com/SchedMD/slurm/blob/master/slurm.spec
without
[Array] Default:[]
- List of --without build options to pass to rpmbuild -- see https://github.com/SchedMD/slurm/blob/master/slurm.spec
Example: Building version 17.11.12 (latest at the time of writing) of SLURM
slurm::build { '17.11.12':
ensure => 'present',
srcdir => '/usr/local/src',
dir => '/root/rpmbuild',
with => [ 'lua', 'mysql', 'openssl' ]
}
Definition slurm::install::packages
This definition takes care of installing the Slurm packages, typically built from slurm::build
, for a given version passed as resource name.
Example: installing slurmd packages in version 17.02.7:
slurm::install::packages { '17.11.12':
ensure => 'present',
pkgdir => "/root/rpmbuild/RPMs/${::architecture}",
slurmd => true
}
Librarian-Puppet / R10K Setup
You can of course configure the slurm module in your Puppetfile
to make it available with Librarian puppet or r10k by adding the following entry:
# Modules from the Puppet Forge
mod "ULHPC/slurm"
or, if you prefer to work on the git version:
mod "ULHPC/slurm",
:git => 'https://github.com/ULHPC/puppet-slurm',
:ref => 'production'
Hiera
You can see example of hiera configurations for this module under tests/vagrant/puppet/hieradata
.
Issues / Feature request
You can submit bug / issues / feature request using the slurm Puppet Module Tracker.
Developments / Contributing to the code
If you want to contribute to the code, you shall be aware of the way this module is organized.
These elements are detailed on docs/contributing.md
.
You are more than welcome to contribute to its development by sending a pull request.
Puppet modules tests within a Vagrant box
The best way to test this module in a non-intrusive way is to rely on Vagrant.
The Vagrantfile
at the root of the repository pilot the provisioning of a virtual cluster configuring Slurm from the puppet provisionning capability of Vagrant over this module.
$> vagrant status
Current machine states:
slurm-master not created (virtualbox)
access not created (virtualbox)
node-1 not created (virtualbox)
node-2 not created (virtualbox)
This environment represents multiple VMs. The VMs are all listed
above with their current state. For more information about a specific
VM, run `vagrant status NAME`.
$> vagrant up
[...]
+--------------|--------------------------|---------|----------|------------|-------------------------------|-------------+
| Puppet Testing infrastructure deployed on Vagrant |
+--------------|--------------------------|---------|----------|------------|-------------------------------|-------------+
| Name | Hostname | OS | vCPU/RAM | Role | Description | IP |
+--------------|--------------------------|---------|----------|------------|-------------------------------|-------------+
| slurm-master | slurm-master.vagrant.dev | centos7 | 2/2048 | controller | Slurm Controller #1 (primary) | 10.10.1.11 |
| access | access.vagrant.dev | centos7 | 1/1024 | login | Cluster frontend | 10.10.1.2 |
| node-1 | node-1.vagrant.dev | centos7 | 2/512 | node | Computing Node #1 | 10.10.1.101 |
| node-2 | node-2.vagrant.dev | centos7 | 2/512 | node | Computing Node #2 | 10.10.1.102 |
+--------------|--------------------------|---------|----------|------------|-------------------------------|-------------+
- Virtual Puppet Testing infrastructure deployed deployed!
Note: it takes roughly 38 minutes to deploy the full cluster from scratch. So be patient ;)
You can then test modifications of each configuration in the hiera file tests/vagrant/puppet/custom.yaml
and
see the result by applying for instance:
$> vagrant provision --provision-with puppet slurm-master
See docs/vagrant.md
for more details.
Online Documentation
Read the Docs aka RTFD hosts documentation for the open source community and the slurm puppet module has its documentation (see the docs/
directly) hosted on readthedocs.
See docs/rtfd.md
for more details.
Licence
This project and the sources proposed within this repository are released under the terms of the Apache-2.0 licence.
Changelog
(unreleased)
-
Merge tag 'v1.5.1' into devel. [Hyacinthe Cartiaux]
v1.5.1
v1.5.1 (2024-09-03)
-
Merge branch 'release/1.5.1' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.5.1' [Hyacinthe Cartiaux]
-
Gemfile.lock update. [Hyacinthe Cartiaux]
-
Gemfile.lock update. [Hyacinthe Cartiaux]
-
Merge pull request #77 from jorhett/fix-slurmd-spooldir. [Hyacinthe Cartiaux]
Fix slurmd spooldir to be consistent/default
-
Fix slurmd spooldir to be consistent/default. [Jo Rhett]
-
Falkorlib and facter update. [Hyacinthe Cartiaux]
-
Lint! [Hyacinthe Cartiaux]
-
Syntax clean. [Hyacinthe Cartiaux]
-
PDK and Falkorlib update tentative. [Hyacinthe Cartiaux]
-
Synchronize Changelog with latest commits. [Hyacinthe Cartiaux]
-
Merge tag 'v1.5.0' into devel. [Hyacinthe Cartiaux]
v1.5.0
v1.5.0 (2024-08-23)
-
Merge branch 'release/1.5.0' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.5.0' [Hyacinthe Cartiaux]
-
Bundle update. [Hyacinthe Cartiaux]
-
Munge key content can be either a string or binary object. [Hyacinthe Cartiaux]
-
Merge pull request #71 from jorhett/allow-pure-package-installation. [Hyacinthe Cartiaux]
Apply broken when do_build is false
-
Apply broken when do_build is false. [Jo Rhett]
-
Merge pull request #70 from jorhett/fix-missing-spool-directory. [Hyacinthe Cartiaux]
Fix missing spool directory, pidfile location, obsoleted specplugin
-
Fix missing spool directory, pidfile location, obsoleted specplugin. [Jo Rhett]
-
Merge pull request #72 from jorhett/replace-validate-legacy-with-data- types. [Hyacinthe Cartiaux]
Replace obsolete validate_legacy with data type tests
-
Replace obsolete validate_legacy with data type tests. [Jo Rhett]
-
Merge pull request #73 from jorhett/update-mysql-module. [Hyacinthe Cartiaux]
Update mysql dependency to moodern versions, replace legacy password function
-
Merge branch 'devel' into update-mysql-module. [Hyacinthe Cartiaux]
-
Merge pull request #76 from jorhett/skip-too-long-mysql-hostnames. [Hyacinthe Cartiaux]
Avoid mysql failures with too-long host names
-
Avoid mysql failures with too-long host names. [Jo Rhett]
-
Update mysql dependency to moodern versions, replace legacy password function. [Jo Rhett]
-
Update mkdocs.yml - use nav instead of pages. [Hyacinthe Cartiaux]
-
Gemfile.lock update - fix dependabot alerts. [Hyacinthe Cartiaux]
-
Add missing .readthedocs file. [Hyacinthe Cartiaux]
-
Gemfile.lock - update. [Hyacinthe Cartiaux]
-
Synchronize Changelog with latest commits. [Hyacinthe Cartiaux]
-
Merge tag 'v1.4.10' into devel. [Hyacinthe Cartiaux]
v1.4.10
v1.4.10 (2024-06-20)
-
Merge branch 'release/1.4.10' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.4.10' [Hyacinthe Cartiaux]
-
Lint! Fixed legacy facts. [Hyacinthe Cartiaux]
-
Synchronize Changelog with latest commits. [Teddy Rodrigues Valette]
-
Merge tag 'v1.4.9' into devel. [Teddy Rodrigues Valette]
v1.4.9
v1.4.9 (2024-03-13)
-
Merge branch 'release/1.4.9' into production. [Teddy Rodrigues Valette]
-
Bump to version '1.4.9' [Teddy Rodrigues Valette]
-
Merge pull request #69 from ULHPC/23-11_cgroup_changes. [Teddy Rodrigues Valette]
cgroup.conf - adapt template for v23.11
-
Cgroup.conf - adapt template for v23.11 - Removed deprecated parameters AllowedKmemSpace, ConstrainKmemSpace, MaxKmemPercent, MinKmemSpace for >= 23.11. - Remove CgroupAutomount= option from cgroup.conf for >= 23.11. - Add "SignalChildrenProcesses=<yes|no>" option to cgroup.conf for >= 23.11. - See https://github.com/SchedMD/slurm/blob/slurm-23.11/RELEASE_NOTES. [Teddy Rodrigues Valette]
-
Metadata.json - update tested dependencies. [Hyacinthe Cartiaux]
-
Slurmdbd.conf - fix typo in ArchiveResvs parameter. [Teddy Rodrigues Valette]
-
Slurm.conf - typo in commented definition of SuspendRate. [Teddy Rodrigues Valette]
-
Synchronize Changelog with latest commits. [Teddy Valette]
-
Merge tag 'v1.4.8' into devel. [Teddy Valette]
v1.4.8
v1.4.8 (2024-01-10)
-
Merge branch 'release/1.4.8' into production. [Teddy Valette]
-
Bump to version '1.4.8' [Teddy Valette]
-
Merge pull request #68 from ULHPC/feature/powersaving. [Teddy Rodrigues Valette]
slurm.conf - add a few parameters for power saving
-
Slurm.conf - add a few parameters for power saving - ReconfigFlags
- SuspendRate - SuspendExcStates - SuspendExcParts. [Teddy Valette]
-
Merge pull request #66 from uvNikita/slurmdbd/auth-alt-params. [Teddy Rodrigues Valette]
[slurm::slurmdbd] set AuthAltTypes and AuthAltParameters
-
[slurm::slurmdbd] set AuthAltTypes and AuthAltParameters. [Nikita Uvarov]
-
Synchronize Changelog with latest commits. [Teddy Valette]
-
Merge tag 'v1.4.7' into devel. [Teddy Valette]
v1.4.7
v1.4.7 (2023-05-22)
-
Merge branch 'release/1.4.7' into production. [Teddy Valette]
-
Bump to version '1.4.7' [Teddy Valette]
-
[slurm::params] add rocky support for munge dependencies. [Teddy Valette]
-
Synchronize Changelog with latest commits. [Hyacinthe Cartiaux]
-
Merge tag 'v1.4.6' into devel. [Hyacinthe Cartiaux]
v1.4.6
v1.4.6 (2023-02-27)
-
Merge branch 'release/1.4.6' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.4.6' [Hyacinthe Cartiaux]
-
Cgroup.conf template - make TaskAffinity optional (removed in 21.08.2 and default is no) [Hyacinthe Cartiaux]
-
Synchronize Changelog with latest commits. [Hyacinthe Cartiaux]
-
Merge tag 'v1.4.5' into devel. [Hyacinthe Cartiaux]
v1.4.5
v1.4.5 (2023-02-07)
-
Merge branch 'release/1.4.5' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.4.5' [Hyacinthe Cartiaux]
-
Install python3-devel to build pmix. [Hyacinthe Cartiaux]
-
Bundle update. [Hyacinthe Cartiaux]
-
Merge pull request #63 from uvNikita/accounting-store-flags. [Sebastien Varrette]
Add AccountingStoreFlags, remove AccountingStoreJobComment
-
Remove AccountingStoreJobComment. [Nikita Uvarov]
Option was removed in 21.08
-
Add AccountingStoreFlags. [Nikita Uvarov]
-
Revert "New parameter slurm::build_pmix_install_path" [Sebastien Varrette]
This reverts commit 9a74180471f109c907e997829029ea0721784eaa.
-
Merge pull request #62 from uvNikita/patch-6. [Sebastien Varrette]
Allow slurmdport and slurmctldport to be Strings
-
Allow slurmdport and slurmctldport to be Strings. [Nikita Uvarov]
As per https://slurm.schedmd.com/slurm.conf.html, port parameters can be port ranges.
-
Merge branch 'feature/pdk-update' into devel. [Sebastien Varrette]
-
Pdk validate. [Sebastien Varrette]
-
Devecontainer. [Sebastien Varrette]
-
PDK update. [Sebastien Varrette]
-
Update rubocop. [Sebastien Varrette]
-
[Gemfile] metadata-json-lint. [Sebastien Varrette]
-
[Gemfile] restore puppetlabs_spec_helper. [Sebastien Varrette]
-
Update gemspec. [Sebastien Varrette]
-
Merge tag 'v1.4.4' into devel. [Hyacinthe Cartiaux]
v1.4.4
v1.4.4 (2022-06-20)
-
Merge branch 'release/1.4.4' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.4.4' [Hyacinthe Cartiaux]
-
New parameter slurm::build_pmix_install_path. [Hyacinthe Cartiaux]
-
Merge pull request #61 from uvNikita/auth-alt. [Sebastien Varrette]
Add AuthAltTypes and AuthAltParameters
-
Add AuthAltTypes and AuthAltParameters. [Nikita Uvarov]
These two parameters can be used in the new slurmrestd service.
-
Puppet update. [Sebastien Varrette]
-
Merge pull request #59 from uvNikita/patch-5. [Sebastien Varrette]
Uncomment JobContainerType in slurm.conf.erb
-
Uncomment JobContainerType in slurm.conf.erb. [Nikita Uvarov]
-
Merge pull request #58 from uvNikita/patch-5. [Sebastien Varrette]
Remove redundant checkif from acct::mgr
-
Remove redundant checkif from acct::mgr. [Nikita Uvarov]
unless
parameter should be enough -
Merge pull request #57 from uvNikita/patch-5. [Sebastien Varrette]
Fix typo in slurm.conf template Thanks!
-
Fix typo in slurm.conf template. [Nikita Uvarov]
slurmdparameters -> slurmctldparameters
-
[pmix::build] pmix-devel package mandatory. [Sebastien Varrette]
-
[slurm::params] enable slurmrestd build by default. [Sebastien Varrette]
-
[slurm::params] pre-requisite packages to build slurmrestd. [Sebastien Varrette]
-
[slurm::pmix::install] pmix-devel. [Sebastien Varrette]
-
Disable cray_shasta. [Sebastien Varrette]
-
[slurm::pmix::install] install pmix-devel. [Sebastien Varrette]
-
Synchronize Changelog with latest commits. [Sebastien Varrette]
-
Merge tag 'v1.4.3' into devel. [Sebastien Varrette]
Support for new slurm.conf parameters introduced in 20.x
v1.4.3 (2021-03-31)
-
Merge branch 'release/1.4.3' into production. [Sebastien Varrette]
-
Bump to version '1.4.3' [Sebastien Varrette]
-
Support for new configuration parameter AccountingStorageExternalHost. [Sebastien Varrette]
-
Syntax fix. [Sebastien Varrette]
-
Support for new configuration parameter DependencyParameters. [Sebastien Varrette]
-
[rake] bump dependencies enhancement. [Sebastien Varrette]
-
Synchronize Changelog with latest commits. [Sebastien Varrette]
-
[rake] gitchanelog and pdk:validate tasks. [Sebastien Varrette]
-
Merge tag 'v1.4.2' into devel. [Sebastien Varrette]
Meaningful Changelog with gitchangelog
v1.4.2 (2021-03-30)
-
Merge branch 'release/1.4.2' into production. [Sebastien Varrette]
-
Bump to version '1.4.2' [Sebastien Varrette]
-
Updated Changelog. [Sebastien Varrette]
-
Merge tag 'v1.4.1' into devel. [Sebastien Varrette]
PDK validate
v1.4.1 (2021-03-30)
-
Merge branch 'release/1.4.1' into production. [Sebastien Varrette]
-
Bump to version '1.4.1' [Sebastien Varrette]
-
[slurm::slurm{d,ctld,dbd}] type casting to string for firewall ports. [Sebastien Varrette]
-
[slurm::firewall] support for integer port parameter. [Sebastien Varrette]
-
Fix for pdk validate. [Sebastien Varrette]
-
Merge tag 'v1.4.0' into devel. [Sebastien Varrette]
Slurm 20.11.3 as default
v1.4.0 (2021-03-30)
-
Merge branch 'release/1.4.0' into production. [Sebastien Varrette]
-
Bump to version '1.4.0' [Sebastien Varrette]
-
Merge branch 'feature/slurm-20.11.3' into devel. [Sebastien Varrette]
-
Copyright date. [Sebastien Varrette]
-
Erb bugfix. [Sebastien Varrette]
-
Fix #48: now rely on saz/limits instead of svarrette/ulimits. [Sebastien Varrette]
-
[slurm::pmix] optionnal build and install processes. [Sebastien Varrette]
-
[slurm] New recommanded settings for TaskPlugin and TaskPluginParams. [Sebastien Varrette]
-
[ERB] slurm.conf: deprecated AccountingStorageLoc. [Sebastien Varrette]
-
[slurm] deprecated FastSchedule parameter. [Sebastien Varrette]
-
[slurm::params] upgrade to 20.11.3 as default. [Sebastien Varrette]
-
[bugfix] slurm{ctld,dbd} string port range. [Sebastien Varrette]
-
[bugfix] slurmd string port range. [Sebastien Varrette]
-
Revert "test" [Sebastien Varrette]
This reverts commit 29c6ea26f12f712d7d14d5ba4e93f2242eed3321.
-
Test. [Sebastien Varrette]
-
[docs] overview. [Sebastien Varrette]
-
Symlink removal. [Sebastien Varrette]
-
Merge tag 'v1.3.0' into devel. [Sebastien Varrette]
Bugfix, support for PDK and updated Vagrant config
v1.3.0 (2020-10-21)
-
Merge branch 'release/1.3.0' into production. [Sebastien Varrette]
-
Update 2020. [Sebastien Varrette]
-
Bump to version '1.3.0' [Sebastien Varrette]
-
[vagrant] Update puppet bootstrap. [Sebastien Varrette]
-
Merge pull request #44 from Zicrom08/windows_plugin. [Sebastien Varrette]
Adding the necessary plugins for Windows users
-
Adding the necessary plugins for Windows users. [Zicrom]
-
Merge pull request #54 from ULHPC/dependabot/bundler/json-2.3.0. [Sebastien Varrette]
Bump json from 2.1.0 to 2.3.0
-
Bump json from 2.1.0 to 2.3.0. [dependabot[bot]]
Bumps json from 2.1.0 to 2.3.0.
-
Merge branch 'feature/pdk' into devel. [Sebastien Varrette]
-
Merge branch 'devel' into feature/pdk. [Sebastien Varrette]
-
Fix do_build behavior. [Hyacinthe Cartiaux]
-
Merge pull request #53 from uvNikita/fix-install-deps. [Hyacinthe Cartiaux]
Specify slurm::common -> slurm::install dependency
-
Specify slurm::common -> slurm::install dependency. [Nikita Uvarov]
Otherwise, packages from common class are installed after (failed) build sometimes.
-
Merge pull request #47 from danifr/patch-3. [Hyacinthe Cartiaux]
Replace stahnma/epel by puppet-epel
-
Add puppet-epel as a dependency. [Daniel Fernández]
-
Replace stahnma/epel by puppet/epel. [Daniel Fernández]
-
PDK compliance. [Sebastien Varrette]
-
[pmix::install] prepare for yum install instead of rpm. [Sebastien Varrette]
-
Update gemfile/rakefile. [Sebastien Varrette]
-
Bootstrap pdk. [Sebastien Varrette]
-
Security fix. [Sebastien Varrette]
-
Revert "Fix a strange bug with concat and empty arrays" [Hyacinthe Cartiaux]
This reverts commit 55c60dd3e16c5418f1d448925027a698a9576b0f.
-
Fix a strange bug with concat and empty arrays. [Hyacinthe Cartiaux]
-
Merge pull request #38 from runejuhl/fix-circular-dependency. [Sebastien Varrette]
Optionally install build dependencies and MySQL (previously #20), fix circular dependency
-
Fix circular dependency introduced in e37dec3 and 2fd2e6d. [Rune Juhl Jacobsen]
Commit e37dec3 and 2fd2e6d uses the variable
$::slurm::do_build
in::slurm::params
to set the variables$::slurm::params::pre_requisite_packages
and$::slurm::params::munge_extra_packages
. Because$::slurm::do_build
is defined in::slurm
this introduces a circular dependency.If running Puppetserver with the setting
strict_variables = true
this results in a failure:Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: Evaluation Error: Unknown variable: 'slurm::do_build'. at /etc/puppetlabs/code/environments/production/modules/slurm/manifests/params.pp:29:6 on node whata.name
-
Instal Development tools only if building slurm. [gustavo panizzo]
-
Install $munge_extra_packages only if we are building slurm. [gustavo panizzo]
-
Install build dependencies only if building slurm on the node. [gustavo panizzo]
-
Make MySQL bootstrapping optional. [gustavo panizzo]
-
Merge pull request #46 from danifr/patch-2. [Sebastien Varrette]
Fix typo
-
Fix typo. [Daniel Fernández]
-
Merge pull request #45 from danifr/patch-1. [Sebastien Varrette]
Only set :is_vagrant if :is_virtual is present
-
Only set :is_vagrant if :is_virtual is present. [Daniel Fernández]
-
Merge branch 'feature/slurm-19.05.3-2' into devel. [Sebastien Varrette]
-
[slurm::install] scope on defined(Class[...]) [Sebastien Varrette]
-
SPANK interface doc. [Sebastien Varrette]
-
Install ruby 2.3 in the CentOS 7 vagrant box. [Sebastien Varrette]
-
Target cannot be an empty string. [Trent Anderson]
-
Recent example. [Sebastien Varrette]
-
[travis] upgrade tested ruby version. [Sebastien Varrette]
-
Notice. [Sebastien Varrette]
-
Privatedata. [Sebastien Varrette]
-
[slurm::slurmdbd] privatedata default comment. [Sebastien Varrette]
-
[slurm::config::plugstack][Sebastien Varrette]
-
[slurm::config] bugfix seltype. [Sebastien Varrette]
-
[slurm::config] seltype. [Sebastien Varrette]
-
[slurm::config] takes care of $slurm::plugins. [Sebastien Varrette]
-
Update README. [Sebastien Varrette]
-
[metadata] tag pmix. [Sebastien Varrette]
-
[slurm::config] new bahavior for slurm::pluginsdir_target. [Sebastien Varrette]
-
Cosmetics in header. [Sebastien Varrette]
-
Hotfix 'if' statement has no effect. [Sebastien Varrette]
-
Cgroup_allowed_devices_file.conf is no longer required. [Sebastien Varrette]
-
[hiera][slurm] ResumeFailProgram. [Sebastien Varrette]
-
[slurm] support for X11Parameters. [Sebastien Varrette]
-
[slurm] support for LaunchParameters. [Sebastien Varrette]
-
Slurm[ctl]ddebugsyslog -> slurm[ctl]dsyslogdebug and new slurm[ctl]dparameters. [Sebastien Varrette]
-
[slurm] consistent variable names acct* [Sebastien Varrette]
-
[slurm::slurmdbd] create $slurm::jobcomploc if needed. [Sebastien Varrette]
-
[slurm] slurmctld{host,addr} instead of deprecated control{machine,addr} and backup{controller,addr} [Sebastien Varrette]
-
[slurm::build] verbose less. [Sebastien Varrette]
-
Update CheckpointType. [Sebastien Varrette]
-
Cryptotype -> credtype. [Sebastien Varrette]
-
Simplify acct_gather_profile parameter. [Sebastien Varrette]
-
[slurm::slurmdbd] reenable innodb_log_file_size. [Sebastien Varrette]
-
Simplify class to slurm::pmix class. [Sebastien Varrette]
-
[ERB] slurm.conf: sanitize useless newline. [Sebastien Varrette]
-
[slurm::slurmdbd] check for innodb_* settings. [Sebastien Varrette]
-
[slurm::params] reindent. [Sebastien Varrette]
-
[slurm::build] abstract pmix install path. [Sebastien Varrette]
-
Lint checks. [Sebastien Varrette]
-
Cosmetics. [Sebastien Varrette]
-
Merge branch 'devel' into feature/slurm-19.05.3-2. [Sebastien Varrette]
-
Merge pull request #23 from gfa/PR-4. [Sebastien Varrette]
Add support for acct gather profiles
-
Add support for acct gather profiles. [gustavo panizzo]
-
Merge pull request #32 from Rovanion/deploy-config-for-other-modules- too. [Sebastien Varrette]
Removed if-statement hindering slurm.conf being deployed when needed
-
Removed if-statement hindering slurm.conf being deployed when needed. [Rovanion Luckey]
It was needed by acct::mgr to manage accounting and is reasonably needed by other operations too. Every module which requires config should now get it.
-
Merge pull request #15 from uvNikita/add-params. [Sebastien Varrette]
Add MaxArraySize and MaxJobCount params
-
Add MaxArraySize and MaxJobCount params. [Nikita Uvarov]
-
Merge branch 'devel' into feature/slurm-19.05.3-2. [Sebastien Varrette]
-
Merge pull request #30 from Rovanion/slurmctl-require-config. [Sebastien Varrette]
Make the slurmctl class require that the config is present
-
Make the slurmctl class require that the config is present. [Rovanion Luckey]
-
Merge pull request #31 from Rovanion/accounting-require-config. [Sebastien Varrette]
Make the accounting tasks require that the config is present
-
Make the accounting tasks require that the config is present. [Rovanion Luckey]
-
Merge pull request #33 from Rovanion/no-default-partition-job_submit- fix. [Sebastien Varrette]
Ensure that the partition given over to slurm is a string and not something else
-
Ensure that the partition given over to slurm is a string and not something else. [Rovanion Luckey]
If it was something else, for example nil, slurm will crash with a unknown error. If we instead force the value into its string representation slurm can give the error 'Partition nil does not exist.' which is understandable to the user.
-
Add support for (separated) PMIx upon slurm build. [Sebastien Varrette]
-
[tests] --modulepath info within vagrant. [Sebastien Varrette]
-
[slurm::pmix*] consistent parameter prefix for checksum -> src_checksum [Sebastien Varrette]
-
Fix #26. [Sebastien Varrette]
-
[slurm::pmix] simple wrapper for slurm::pmix::{download,build,install} [Sebastien Varrette]
-
[slurm::pmix::install][Sebastien Varrette]
-
Cosmetics. [Sebastien Varrette]
-
[slurm::pmix::build] allow for extra --define options to rpmbuild. [Sebastien Varrette]
-
[slurm::pmix::build][Sebastien Varrette]
-
[slurm::pmix::download] consider extraction of the archive for .spec access. [Sebastien Varrette]
-
Slurm::pmix::download. [Sebastien Varrette]
-
Merge branch 'feature/security-alert' into devel. [Sebastien Varrette]
-
Security Alerts - CVE-2019-5477 - "nokogiri", ">= 1.10.4" [Sebastien Varrette]
-
Update to ruby 2.6. [Sebastien Varrette]
-
Merge pull request #24 from gfa/PR-5. [Sebastien Varrette]
Add support to define (Max|Default)Time on a partition
-
Add support to define DefaultTime on a partition. [gustavo panizzo]
-
Add support to define MaxTime on a partition. [gustavo panizzo]
-
Potential security vulnerability for yard. [Sebastien Varrette]
-
Merge pull request #34 from Rovanion/remove-archived. [Sebastien Varrette]
Correct base download URL to download.schedmd.com
-
Correct base download URL to download.schedmd.com. [Rovanion Luckey]
The two different archives of
latest
andarchived
no longer exist on schedmd.com. Now they only have what was previously called latest. This commit removes the argument "archived" from the public interface of the module and correctl the base url to reflect this change. -
Merge pull request #36 from runejuhl/el6. [Sebastien Varrette]
Add el6 support
-
Add CentOS6 and RedHat6 to metadata.json. [Rune Juhl Jacobsen]
-
Set
USER
for munged to avoid failing on el6. [Rune Juhl Jacobsen]The init script provided with munge-0.5.10-1.el6 sets the
USER=daemon
environment variable and subsequently loads the variables in sysconfig so we can use this to userride the default value. -
Change default cgroup path for el6. [Rune Juhl Jacobsen]
-
Merge pull request #25 from gfa/PR-6. [Sebastien Varrette]
Add support to configure UnkillableStepTimeout in slurm.conf
-
Add support to configure UnkillableStepTimeout in slurm.conf. [gustavo panizzo]
-
Merge pull request #28 from Rovanion/readme-url-fix. [Sebastien Varrette]
Fixed a simple one letter misspelling in README.md
-
Fixed a simple one letter misspelling in README.md. [Rovanion Luckey]
-
Merge pull request #22 from gfa/PR-3. [Sebastien Varrette]
Enable support for power management
-
Enable support for power management. [gustavo panizzo]
-
Merge pull request #21 from gfa/PR-2. [Sebastien Varrette]
Optionally send slurmd, slurmctld and slurmdbd logs to syslog
-
Optionally send slurmd, slurmctld and slurmdbd logs to syslog. [gustavo panizzo]
-
Ignore vagrant setup from the puppet built package. [Sebastien Varrette]
-
Merge tag 'v1.2.0' into devel. [Sebastien Varrette]
TRES, scheduler parameters and custom content management
- Bugfix #2: slurmdbd on separate host bug
- Bugfix #7: slurm-login nodes without daemons
- Bugfix #12: slurm-17.11.3 install fails bug
- Bugfix #13: Add SchedulerParameters to slurm.conf.erb template
- Bugfix #14: Prevent improper use of SchedMD resources
- Bugfix #16: Allow for TRESBillingWeights enhancement
- Bugfix #17: Consolidate vagrant setup for module validation on a virtual cluster enhancement
- Bugfix #18: Allow for custom content enhancement
v1.2.0 (2019-02-03)
-
Merge branch 'release/1.2.0' into production. [Sebastien Varrette]
-
Bump to version '1.2.0' [Sebastien Varrette]
-
Bugfix #14 add new general parameter src_checksum_type to slurm class. [Sebastien Varrette]
-
Bugfix #14 Prevent improper use of SchedMD resources. [Sebastien Varrette]
-
Cosmetics. [Sebastien Varrette]
-
Lint compliance++ [Sebastien Varrette]
-
Lint compliance: {accountingstorage,priorityweight}TRES -> {accountingstorage,priorityweight}tres. [Sebastien Varrette]
-
Update rubocop settings. [Sebastien Varrette]
-
Travis ruby update. [Sebastien Varrette]
-
Rework mkdocs/readthedocs settings. [Sebastien Varrette]
-
Allow for SchedulerParameters directives. [Sebastien Varrette]
- Bugfix #13
-
Allow for custom content. [Sebastien Varrette]
- Bugfix #18
-
Allow for TRESBillingWeights. [Sebastien Varrette]
- See Issue #16
-
Remove automatic addition of 127.0.1.1 in /etc/hosts. [Sebastien Varrette]
- conflicts with 'sacctmgr show cluster' reported adress
-
Install ifconfig. [Sebastien Varrette]
-
Update logger / falkorlib. [Sebastien Varrette]
-
Security fix CVE-2018-14404. [Sebastien Varrette]
-
Add stress by default. [Sebastien Varrette]
-
Fix. [Sebastien Varrette]
-
Complete README with profile info. [Sebastien Varrette]
-
Possibility to set AccountingStorageHost. [Sebastien Varrette]
- Bugfix #2
-
Rework Vagrant setup to allow for flexible cluster deployment. [Sebastien Varrette]
- Bugfix #17
- config.yaml can overwrite default settings
- role-based deployment
- By default, deployment of:
- 1 Slurm controller (including the Slurm accounting DB)
- 1 login node (no daemon -- see #7)
- 2 compute nodes
-
Merge branch 'feature/17.11.12' into devel. [Sebastien Varrette]
-
Ensure slurm package are properly install in slurm::login. [Sebastien Varrette]
- Bugfix #7
-
Attempt to detect slurm login node configurayion in slurm::config. [Sebastien Varrette]
-
New 'slurm::login' helper class for setting up a Login node. [Sebastien Varrette]
- Bugfix #7
- Sample/simple profile::slurm::login used on vagrant deployment
-
Sample (and simple) profile::slurm[::slurm{d,ctld,dbd}][Sebastien Varrette]
-
Prepare hiera layout for flexible profile-based setup. [Sebastien Varrette]
-
Prepare script for vagrant shell provisioning. [Sebastien Varrette]
-
Rework vagrant puppet provisionning structure. [Sebastien Varrette]
-
Verbose. [Sebastien Varrette]
-
Increase allowed timeout upon rpmbuild. [Sebastien Varrette]
-
Complete default package installed upon shell provisionning. [Sebastien Varrette]
-
Review package list per installation type. [Sebastien Varrette]
-
Separate list of officials RPMs requested depending on daemons. [Sebastien Varrette]
-
Rework individual tests for each daemon. [Sebastien Varrette]
-
Fix screen title in vagrant bootstrap. [Sebastien Varrette]
-
Template slurm.conf with Trackable RESources (TRES) policies. [Sebastien Varrette]
-
$TRESbillingweights -> $tresbillingweights to conform to naming rules. [Sebastien Varrette]
-
Trackable RESources (TRES) parameters. [Sebastien Varrette]
-
Update default slurm version to 17.11.12. [Sebastien Varrette]
-
[vagrant] remove config.trigger. [Sebastien Varrette]
-
Upgrade modele deps. [Sebastien Varrette]
-
Update slurm version to 17.11.9-2. [Sebastien Varrette]
-
Merge branch 'devel' into feature/17.11.7. [Sebastien Varrette]
-
Bundle update. [Sebastien Varrette]
-
Update default version to 17.11.7. [Sebastien Varrette]
-
Merge tag 'v1.1.4' into devel. [Sebastien Varrette]
Completion file update
v1.1.4 (2018-04-23)
-
Merge branch 'release/1.1.4' into production. [Sebastien Varrette]
-
Bump to version '1.1.4' [Sebastien Varrette]
-
Merge branch 'devel' of github.com:ULHPC/puppet-slurm into devel. [Sebastien Varrette]
-
Update SLURM to latest stable 17.11.5, solves our https://bugs.schedmd.com/show_bug.cgi?id=4769. [Valentin Plugaru]
-
Update bash completion file from 17.11.5. [Sebastien Varrette]
-
Attempt to resolve issues #10 and #11. [Sebastien Varrette]
-
Merge tag 'v1.1.3' into devel. [Sebastien Varrette]
Jobrequeue
v1.1.3 (2018-02-15)
-
Merge branch 'release/1.1.3' into production. [Sebastien Varrette]
-
Bump to version '1.1.3' [Sebastien Varrette]
-
Jobrequeue. [Sebastien Varrette]
-
Merge tag 'v1.1.2' into devel. [Sebastien Varrette]
missing deps packages
v1.1.2 (2018-02-12)
-
Merge branch 'release/1.1.2' into production. [Sebastien Varrette]
-
Bump to version '1.1.2' [Sebastien Varrette]
-
Complete required packages. [Sebastien Varrette]
-
Merge tag 'v1.1.1' into devel. [Sebastien Varrette]
deps update
v1.1.1 (2018-02-08)
-
Merge branch 'release/1.1.1' into production. [Sebastien Varrette]
-
Bump to version '1.1.1' [Sebastien Varrette]
-
Remove useless dependency. [Sebastien Varrette]
-
Merge tag 'v1.1.0' into devel. [Sebastien Varrette]
17.11 release
v1.1.0 (2018-02-08)
-
Merge branch 'release/1.1.0' into production. [Sebastien Varrette]
-
Bump to version '1.1.0' [Sebastien Varrette]
-
Merge branch 'devel' of github.com:ULHPC/puppet-slurm into devel. [Sebastien Varrette]
-
Metadata.json: remove the unused inifile dependency. [Hyacinthe Cartiaux]
-
Yard 0.9.12 in Gemfile.lock. [Valentin Plugaru]
-
Merge tag 'v1.0.4' into devel. [Valentin Plugaru]
v1.0.4
-
Update. [Sebastien Varrette]
-
Update version. [Sebastien Varrette]
v1.0.4 (2018-01-22)
-
Merge branch 'release/1.0.4' into production. [Valentin Plugaru]
-
Bump to version '1.0.4' [Valentin Plugaru]
-
Lint. [Valentin Plugaru]
-
Use mysql override settings instead of ini_setting for bind address. [Valentin Plugaru]
-
Travis badge. [Sebastien Varrette]
-
'rake validate' fail on travis. [Sebastien Varrette]
-
Symplify matrix. [Sebastien Varrette]
-
Complete travis checks. [Sebastien Varrette]
-
Support for travis. [Sebastien Varrette]
-
Support for rubocop. [Sebastien Varrette]
-
Merge pull request #6 from uvNikita/patch-5. [Sebastien Varrette]
Add memory per node limits to slurm.conf
-
Add memory per node limits to slurm.conf. [Nikita Uvarov]
Previously
defmempernode
andmaxmempernode
parameters were ignored by the module. -
Upgrade Rubocop deps as low severity security vulnerability in version range < 0.48.1. [Sebastien Varrette]
-
Merge pull request #3 from uvNikita/patch-2. [Sebastien Varrette]
Fix typos in readme documentation for slurmd
-
Fix typos in readme documentation for slurmd. [Nikita Uvarov]
-
Merge pull request #5 from uvNikita/patch-4. [Sebastien Varrette]
Fix startup error when acct enforce list is empty
-
Fix startup error when acct enforce list is empty. [Nikita Uvarov]
An empty value in AccountingStorageEnforce parameter causes slurm daemon to fail on start. If no enforcement is desired, this parameter should be commented out.
-
Merge pull request #1 from uvNikita/patch-1. [Sebastien Varrette]
Include firewalld only if manage_firewall is true
-
Include firewalld only if manage_firewall is true. [Nikita Uvarov]
-
Merge tag 'v1.0.3' into devel. [Sebastien Varrette]
syntax correction
v1.0.3 (2017-10-20)
-
Merge branch 'release/1.0.3' into production. [Sebastien Varrette]
-
Rake up. [Sebastien Varrette]
-
Bump to version '1.0.3' [Sebastien Varrette]
-
Minor correction. [Sebastien Varrette]
-
Merge tag 'v1.0.2' into devel. [Hyacinthe Cartiaux]
v1.0.2
v1.0.2 (2017-10-16)
-
Merge branch 'release/1.0.2' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.0.2' [Hyacinthe Cartiaux]
-
Unlint... (integer to string conversion required) [Hyacinthe Cartiaux]
-
Merge tag 'v1.0.1' into devel. [Hyacinthe Cartiaux]
v1.0.1
v1.0.1 (2017-10-16)
-
Merge branch 'release/1.0.1' into production. [Hyacinthe Cartiaux]
-
Bump to version '1.0.1' [Hyacinthe Cartiaux]
-
Lint ! [Hyacinthe Cartiaux]
-
Add slurm::priorityflags as configurable parameter. [Valentin Plugaru]
-
Fail... [Sebastien Varrette]
-
Syntax correction. [Sebastien Varrette]
-
Attempt to correct mysql ini. [Sebastien Varrette]
-
Merge tag 'v1.0.0' into devel. [Sebastien Varrette]
Module used in Production on iris cluster
(part of UL HPC facility)
v1.0.0 (2017-10-05)
-
Merge branch 'release/1.0.0' into production. [Sebastien Varrette]
-
Bump to version '1.0.0' [Sebastien Varrette]
-
Firewall circumvent. [Sebastien Varrette]
-
Lint. [Sebastien Varrette]
-
No more need for ghoneycutt-pam. [Sebastien Varrette]
-
Correct slurm::pam to use svarrette/ulimit module. [Sebastien Varrette]
-
Slurm::slurmdbd correct qos normal creation. [Sebastien Varrette]
-
Correct slurm::firewall. [Sebastien Varrette]
-
Correction on slurm::firewall. [Sebastien Varrette]
-
Firewall management. [Sebastien Varrette]
-
Slurm::firewall. [Sebastien Varrette]
-
Pam correction. [Sebastien Varrette]
-
Complete selinux and firewalld deps. [Sebastien Varrette]
-
Bugfix statesavelocation. [Sebastien Varrette]
-
Handle savestateloc. [Sebastien Varrette]
-
Up timeout. [Sebastien Varrette]
-
Bash completion. [Sebastien Varrette]
-
Doc. [Sebastien Varrette]
-
Bash completion file. [Sebastien Varrette]
-
Support for deported plugstack.conf.d files. [Sebastien Varrette]
-
Correct. [Sebastien Varrette]
-
Git config set fro slurm user on slurm::repo. [Sebastien Varrette]
-
Lint + slurm::repo::syncto. [Sebastien Varrette]
-
Resumetimeout. [Sebastien Varrette]
-
Correct cwddir. [Sebastien Varrette]
-
Slurm::install::package with pkgdir. [Sebastien Varrette]
-
[slurm::repo] ensure creation parent directory for slurm rights. [Sebastien Varrette]
-
Slurm::repo force. [Sebastien Varrette]
-
Bugfix ensure==latest. [Sebastien Varrette]
-
Bugfix support ensure = latest. [Sebastien Varrette]
-
Support for link_subdir in slurm::repo. [Sebastien Varrette]
-
Separate management of services. [Sebastien Varrette]
-
Correct slurm::acct::{mgr,qos} to support string/array/hash. [Sebastien Varrette]
-
Rework accounting classes. [Sebastien Varrette]
-
Slurm::acct::{mgr,qos,cluster} [Sebastien Varrette]
-
Bugfix erb. [Sebastien Varrette]
-
Bugfix erb. [Sebastien Varrette]
-
Up slurm.conf.erb. [Sebastien Varrette]
-
Test slurmctld class without service management. [Sebastien Varrette]
-
Update slurm.conf. [Sebastien Varrette]
-
Mode flexible partition generation in slurm.conf from hiera. [Sebastien Varrette]
-
Prepare qos. [Sebastien Varrette]
-
Allow link dir within slurm::repo. [Sebastien Varrette]
-
Better absent on slurm::repo. [Sebastien Varrette]
-
Safeguard on file creation. [Sebastien Varrette]
-
Chown check. [Sebastien Varrette]
-
Slurm::repo. [Sebastien Varrette]
-
Slurm::repo class. [Sebastien Varrette]
-
Install munge extra packages even if manage_munge is false. [Sebastien Varrette]
-
Bugfix service_manage. [Sebastien Varrette]
-
Bugfix package deps. [Sebastien Varrette]
-
Service_manage. [Sebastien Varrette]
-
Merge tag 'v0.4.0' into devel. [Sebastien Varrette]
tests consolidation + slurm::acct::cluster
v0.4.0 (2017-09-04)
-
Merge branch 'release/0.4.0' into production. [Sebastien Varrette]
-
Update urls for readthedocs and forge readme rendering. [Sebastien Varrette]
-
Bump to version '0.4.0' [Sebastien Varrette]
-
Lint. [Sebastien Varrette]
-
Slurm::acct::cluster. [Sebastien Varrette]
-
Update README warning. [Sebastien Varrette]
-
Check order for ensure==absent. [Sebastien Varrette]
-
Merge tag 'v0.3.0' into devel. [Sebastien Varrette]
readthedocs integration
v0.3.0 (2017-09-01)
-
Merge branch 'release/0.3.0' into production. [Sebastien Varrette]
-
Bump to version '0.3.0' [Sebastien Varrette]
-
Update README. [Sebastien Varrette]
-
Merge tag 'v0.2.0' into devel. [Sebastien Varrette]
Succesful tests for all daemons within vagrant
v0.2.0 (2017-09-01)
-
Merge branch 'release/0.2.0' into production. [Sebastien Varrette]
-
Bump to version '0.2.0' [Sebastien Varrette]
-
Update main doc. [Sebastien Varrette]
-
Advanced tests. [Sebastien Varrette]
-
Correct behaviour upon ensure == 'absent' [Sebastien Varrette]
-
Add manage_* parameters. [Sebastien Varrette]
-
Complete basic tests for puppet apply. [Sebastien Varrette]
-
Cleanup and correct code in case of regular includes. [Sebastien Varrette]
-
Slurm::slurmdbd operational. [Sebastien Varrette]
-
Slurdbd. [Sebastien Varrette]
-
Slurm::slurmdbd. [Sebastien Varrette]
-
Start slurm::slurmdbd. [Sebastien Varrette]
-
Rework code organization. [Sebastien Varrette]
-
Modular install. [Sebastien Varrette]
-
Specialized classes slurm::slurm[ctl]d. [Sebastien Varrette]
-
Correct daemon service. [Sebastien Varrette]
-
Lint + alignment. [Sebastien Varrette]
-
Slurm.conf generation from ERB. [Sebastien Varrette]
-
End doc init.pp with all slurm config options. [Sebastien Varrette]
-
Params. [Sebastien Varrette]
-
Complete default params for slurm.conf (ouf!) [Sebastien Varrette]
-
Params slurm.conf. [Sebastien Varrette]
-
Slurm::config::gres. [Sebastien Varrette]
-
Slurm::config::cgroup. [Sebastien Varrette]
-
Slurm::config[::topology][Sebastien Varrette]
-
Lint. [Sebastien Varrette]
-
Simplify code for slurm::common::debian. [Sebastien Varrette]
-
Slurm::install. [Sebastien Varrette]
-
No slurm::install. [Sebastien Varrette]
-
Support ensure=absent in slurm::build. [Sebastien Varrette]
-
Cosmetic. [Sebastien Varrette]
-
Clean slurm::build. [Sebastien Varrette]
-
Update Rakefile. [Sebastien Varrette]
-
Upgrade FalkorLib to the latest version. [Sebastien Varrette]
-
Cosmetic. [Sebastien Varrette]
-
Install slurm builds. [Sebastien Varrette]
-
Transform slurm::build into a definition. [Sebastien Varrette]
-
Doc slurm::build. [Sebastien Varrette]
-
Slurm::build. [Sebastien Varrette]
-
Add testing manifest for slurm::download. [Sebastien Varrette]
-
Document slurm::download. [Sebastien Varrette]
-
Lint pass. [Sebastien Varrette]
-
Add slurm::download definition. [Sebastien Varrette]
-
Complete params for slurm::{pam,munge} [Sebastien Varrette]
-
Yaml custom config doc. [Sebastien Varrette]
-
Yaml custom config doc. [Sebastien Varrette]
-
Update vagrant doc. [Sebastien Varrette]
-
Merge tag 'v0.1.0' into devel. [Sebastien Varrette]
Bootstrap slurm module repository
v0.1.0 (2017-08-21)
- Merge branch 'release/0.1.0' into production. [Sebastien Varrette]
- Bump to version '0.1.0' [Sebastien Varrette]
- Rake git tasks. [Sebastien Varrette]
- Support for Munge daemon_args. [Sebastien Varrette]
- Lint. [Sebastien Varrette]
- Bundle lock. [Sebastien Varrette]
- Slurm::munge. [Sebastien Varrette]
- Bootstrap slurm::munge. [Sebastien Varrette]
- Bootstrap main class. [Sebastien Varrette]
- Lint slurm::pam. [Sebastien Varrette]
- Correct Vagrant env. [Sebastien Varrette]
- Slurm::pam. [Sebastien Varrette]
- Rework vagrant provisionning layout. [Sebastien Varrette]
- Merge branch 'feature/bootstrapping' into devel. [Sebastien Varrette]
- Slurm::pam. [Sebastien Varrette]
- Update & review Vagrant infra. [Sebastien Varrette]
- Review basic README and metadata. [Sebastien Varrette]
- Add 'Vagrantfile' [Sebastien Varrette]
- Add 'Rakefile' [Sebastien Varrette]
- Add '.vagrant_init.rb' [Sebastien Varrette]
- Add 'Gemfile' [Sebastien Varrette]
- Add '.ruby-gemset' [Sebastien Varrette]
- Add '.ruby-version' [Sebastien Varrette]
- Add '.pmtignore' [Sebastien Varrette]
- Add '.gitignore' [Sebastien Varrette]
- Add 'LICENSE' [Sebastien Varrette]
- Add 'mkdocs.yml' [Sebastien Varrette]
- Add 'docs' [Sebastien Varrette]
- Add 'metadata.json' [Sebastien Varrette]
- Initiate the repository with a 'README.md' file. [Sebastien Varrette]
Dependencies
- puppetlabs-stdlib (>=4.2.2 <10.0.0)
- puppetlabs-mysql (>=10.0.0 <16.0.0)
- puppetlabs-vcsrepo (>=2.0.0 <6.0.0)
- puppetlabs-firewall (>=1.9.0 <9.0.0)
- puppet-archive (>=3.0.0 <7.2.0)
- puppet-yum (>=2.0.0 <6.3.0)
- puppet-selinux (>=1.3.0 <3.5.0)
- puppet-epel (>=1.2.2 <6.0.0)
- saz-limits (>=3.0.4 <4.0.0)
- crayfishx-firewalld (>=3.4.0 <4.0.0)
- bodgit-rngd (>=2.0.0 <4.0.0)
Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright 2017 UL, HPC, Team Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.