scyld-bootctlΒΆ

NAME

scyld-bootctl -- Query and modify boot configurations for the cluster.

USAGE

scyld-bootctl

[-h] [-v] [-q] [[-c | --config] CONFIG] [--base-url URL] [[-u | --user] USER[:PASSWD]] [--human | --json | --csv | --table] [--pretty | --no-pretty] [--show-uids] [-a | -i BOOTGROUPS] {list,ls, create,mk, clone,cp, update,up, replace,re, delete,rm, download, export,import}

OPTIONAL ARGUMENTS

-h, --help

Print usage message and exit. Ignore trailing args, parse and ignore preceding args.

-v, --verbose

Increase verbosity.

-q, --quiet

Decrease verbosity.

-c, --config CONFIG

Specify a client configuration file CONFIG.

--show-uids

Do not try to make the output more human readable.

-a, --all

Interact with all boot configurations (default for list).

-i, --ids BOOTGROUPS

A comma-separated list of boot configurations to query or modify.

ARGUMENTS TO OVERRIDE BASIC CONFIGURATION DETAILS

--base-url URL

Specify the base URL of the ClusterWare REST API.

-u, --user USER[:PASSWD]

Masquerade as user USER with optional colon-separated password PASSWD.

FORMATTING ARGUMENTS

--human

Format the output for readability (default).

--json

Format the output as JSON.

--csv

Format the output as CSV.

--table

Format the output as a table.

--pretty

Indent JSON or XML output, and substitute human readable output for other formats.

--no-pretty

Opposite of --pretty.

ACTIONS ON BOOT CONFIGURATION(S)

list (ls) [--long | --long-long | --raw]

List information about boot configurations.

-l, --long

Show a subset of all optional information for each node.

-L, --long-long

Show all optional information for each node.

--raw

Display the raw JSON content from the database.

create (mk) [--content [ JSON | INI_FILE ]] [ NAME=VALUE ] ...

Add a boot configuration with optional JSON or INI_FILE content or with optional NAME / VALUE pairs.

--content [JSON | INI_FILE]

Load this JSON or INI_FILE content into the database as a boot config.

clone (cp) [--content [ JSON | INI_FILE ]] [ NAME=VALUE ] ...

Copy boot configuration with optional JSON or INI_FILE content or with optional NAME / VALUE identifiers.

--content [ JSON | INI_FILE ]

Overwrite fields in the cloned boot config.

update (up) [--content [ JSON | INI_FILE ]] [ NAME=VALUE ] ...

Modify boot configuration NAME field(s) with new value(s).

--content [ JSON | INI_FILE ]

Overwrite this content into the database for a boot config.

replace (re) [--content [ JSON | INI_FILE ]] [ NAME=VALUE ] ...

Replace all boot configuration fields.

--content [ JSON | INI_FILE ]

Overwrite this content into the database for a boot config.

delete (rm) [-r, --recurse]

Delete boot configuration(s).

-r, --recurse

Optionally also delete the referenced image or iso-based repo.

download [--dest DIR] FILENAME ...

Extract named file(s) (any of "initramfs", "kernel") from boot config and download to current working directory (or to directory DIR).

export [--no-recurse] [PATH]

Export the specified boot configuration NAME to the file NAME.export in the current working directory or in destination PATH.

--no-recurse

Do not recurse through and include dependencies.

import [--no-recurse] [--boot-config NAME_BOOT] [--image NAME_IMG] NAME.export

Import the NAME.export file into a local boot configuration (default embedded in NAME.export, or optionally renamed NAME_BOOT) and associated compute node image (or optionally renamed NAME_IMG).

EXAMPLES

scyld-bootctl create name=Fed29Boot \
              kernel=@/boot/vmlinuz-4.20.6-200.fc29.x86_64 \
              initramfs=@cw-ramfs-4.20.6-200.fc29.x86_64

Create a boot configuration with a premade kernel and initramfs.

scyld-bootctl -iFed29Boot download kernel

Download the kernel previously uploaded to the Fed29Boot configuration.

scyld-bootctl -iFed29Boot update \
              initramfs=@new-ramfs-4.20.6-200.fc29.x86_64 \
              description="Ramfs created Fed24

Replace the initramfs with a new one.

scyld-bootctl -i DefaultBoot ls -l

Display details about the DefaultBoot configuration.

scyld-bootctl -i DefaultBoot update cmdline="enforcing=0 console=ttyS0,115200"

Update the cmdline that is passed to a booting kernel to a new value. Note that update changes the entire cmdline, so to append a new substring to an existing cmdline, first view the full boot config (as noted in the example above), then form a new cmdline string with existing pieces you wish to retain.

scyld-bootctl -i SlurmBoot export
mv SlurmBoot.export ExportSlurmBoot

Export the boot config SlurmBoot and associated image as file SlurmBoot.export, and rename that file to ExportSlurmBoot. Note that the boot config name is embedded in ExportSlurmBoot as "SlurmBoot".

scyld-bootctl import ExportSlurmBoot

Import the ExportSlurmBoot contents to a different cluster as a new SlurmBoot boot config and associated compute node image.

scyld-bootctl import --boot-config Slurm19Boot ExportSlurmBoot

Import the ExportSlurmBoot contents to a different cluster as a new Slurm19Boot boot config and associated compute node image.

scyld-bootctl import --boot-config Slurm19Boot --image Slurm19Image ExportSlurmBoot

Import the ExportSlurmBoot contents to a different cluster as a new Slurm19Boot boot config and associate compute node image with new name Slurm19Image.

scyld-bootctl import --boot-config Slurm19Boot --no-recurse ExportSlurmBoot

Import the ExportSlurmBoot contents to a different cluster as a new Slurm19Boot boot config without including the embedded image.

RETURN VALUES

Upon successful completion, scyld-bootctl returns 0. On failure, an error message is printed to stderr and scyld-bootctl returns 1.