in azure-slurm-install/install.py [0:0]
def main() -> None:
# needed to set slurmctld only
if os.path.exists("install_logging.conf"):
logging.config.fileConfig("install_logging.conf")
parser = argparse.ArgumentParser()
parser.add_argument(
"--platform", default="rhel", choices=["rhel", "ubuntu", "suse", "debian"]
)
parser.add_argument(
"--mode", default="scheduler", choices=["scheduler", "execute", "login"]
)
parser.add_argument("--bootstrap-config", default="jetpack")
args = parser.parse_args()
if args.platform == "debian":
args.platform = "ubuntu"
config = _load_config(args.bootstrap_config)
settings = InstallSettings(config, args.platform, args.mode)
#create config dir
setup_config_dir(settings)
# create the users
setup_users(settings)
# create the munge key and/or copy it to /etc/munge/
munge_key(settings)
# runs either rhel.sh or ubuntu.sh to install the packages
run_installer(settings, os.path.abspath(f"{args.platform}.sh"), args.mode)
# various permissions fixes
fix_permissions(settings)
complete_install(settings)
if settings.mode == "scheduler":
accounting(settings)
# TODO create a rotate log
ilib.cron(
"return_to_idle",
minute="*/5",
command=f"{settings.autoscale_dir}/return_to_idle.sh 1>&2 >> {settings.autoscale_dir}/logs/return_to_idle.log",
)
set_hostname(settings)
if settings.mode == "execute":
setup_slurmd(settings)