Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ CycleCloud Slurm Clusters in Azure
This project sets up an auto-scaling Slurm cluster
Slurm is a highly configurable open source workload manager. See the [Slurm project site](https://www.schedmd.com/) for an overview.
# Table of Contents:
1. [Managing Slurm Clusters in 4.0.5](#managing-slurm-clusters)
1. [Managing Slurm Clusters in 4.0.6](#managing-slurm-clusters)
1. [Making Cluster Changes](#making-cluster-changes)
2. [No longer pre-creating execute nodes](#no-longer-pre-creating-execute-nodes)
3. [Creating additional partitions](#creating-additional-partitions)
Expand Down Expand Up @@ -36,7 +36,7 @@ Slurm is a highly configurable open source workload manager. See the [Slurm proj
8. [Capturing logs and configuration for troubleshooting](#capturing-logs-and-configuration-data-for-troubleshooting)
6. [Contributing](#contributing)
---
## Managing Slurm Clusters in 4.0.5
## Managing Slurm Clusters in 4.0.6

### Making Cluster Changes
In CycleCloud, cluster changes can be made using the "Edit" dialog from the cluster page in the GUI or from the CycleCloud CLI. Cluster topology changes, such as new partitions, generally require editing and re-importing the cluster template. This can be applied to live, running clusters as well as terminated clusters. It is also possible to import changes as a new Template for future cluster creation via the GUI.
Expand Down
2 changes: 1 addition & 1 deletion azure-slurm-install/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from setuptools.command.test import Command
from setuptools.command.test import test as TestCommand # noqa: N812

__version__ = "4.0.5"
__version__ = "4.0.6"
CWD = os.path.dirname(os.path.abspath(__file__))


Expand Down
5 changes: 5 additions & 0 deletions azure-slurm-install/start-services.sh
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,11 @@ ensure_enroot_dir() {
#
CONF=/etc/enroot/enroot.conf

# no-op if enroot.conf does not exist
if [ ! -f "$CONF" ]; then
return 0
fi

# extract ENROOT_TEMP_PATH value
ENROOT_TEMP_PATH=$(awk '$1=="ENROOT_TEMP_PATH"{print $2}' "$CONF")

Expand Down
4 changes: 3 additions & 1 deletion azure-slurm-install/templates/enroot.conf.template
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,6 @@ ENROOT_SQUASH_OPTIONS -noI -noD -noF -noX -no-duplicates
ENROOT_MOUNT_HOME y
ENROOT_RESTRICT_DEV y
ENROOT_ROOTFS_WRITABLE y
MELLANOX_VISIBLE_DEVICES all
MELLANOX_VISIBLE_DEVICES all
# Trailing comment - this file requires at least one trailing newline after the above

2 changes: 1 addition & 1 deletion azure-slurm/setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from setuptools.command.test import Command
from setuptools.command.test import test as TestCommand # noqa: N812

__version__ = "4.0.5"
__version__ = "4.0.6"
CWD = os.path.dirname(os.path.abspath(__file__))


Expand Down
2 changes: 1 addition & 1 deletion azure-slurm/slurmcc/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
from . import topology


VERSION = "4.0.5"
VERSION = "4.0.6"


def csv_list(x: str) -> List[str]:
Expand Down
4 changes: 2 additions & 2 deletions project.ini
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
[project]
name = slurm
label = Slurm
version = 4.0.5
version = 4.0.6
type = scheduler

[blobs]
Files = azure-slurm-pkg-4.0.5.tar.gz, azure-slurm-install-pkg-4.0.5.tar.gz
Files = azure-slurm-pkg-4.0.6.tar.gz, azure-slurm-install-pkg-4.0.6.tar.gz

[spec scheduler]
run_list = role[slurm_scheduler_role]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
default[:slurm][:autoscale_version] = "4.0.5"
default[:slurm][:autoscale_version] = "4.0.6"
default[:slurm][:version] = "23.11.9-1"
default[:slurm][:user][:name] = 'slurm'
default[:slurm][:cyclecloud_api] = "cyclecloud_api-8.4.1-py2.py3-none-any.whl"
Expand Down
2 changes: 1 addition & 1 deletion specs/default/chef/site-cookbooks/slurm/metadata.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
license 'All Rights Reserved'
description 'Installs/Configures slurm'
long_description 'Installs/Configures slurm'
version '4.0.5'
version '4.0.6'
chef_version '>= 12.1' if respond_to?(:chef_version)

%w{ cuser cshared }.each {|c| depends c}
Expand Down
16 changes: 12 additions & 4 deletions specs/scheduler/cluster-init/scripts/00-install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,20 @@ find_python3() {
return 0
fi
for version in $( seq 11 20 ); do
which python3.$version
which python3.$version > /dev/null 2>/dev/null
if [ $? == 0 ]; then
return 0
python3.$version -m "import yaml, venv"
if [ $? == 0 ]; then
# write to stdout the validated path
which python3.$version
return 0
else
echo Warning: Found python3.$version but venv and/or yaml are not installed. 1>&2
fi
fi
done
echo Could not find python3 version 3.11 >&2
return 1
# Quietly return nothing
return 0
}

install_python3() {
Expand All @@ -29,6 +36,7 @@ install_python3() {
export PYTHON_BIN
return 0
fi
echo "No suitable python3 installation found, beginning installation." >&2
# NOTE: based off of healthagent 00-install.sh, but we have different needs - we don't need the devel/systemd paths.
# most likely if healthagent is already installed, this won't be an issue.
if [ -f /etc/os-release ]; then
Expand Down
Loading