The Install and Upgrade Framework (IUF) provides commands which install,
upgrade, and deploy products on systems managed by CSM with the help of
sat bootprep. Outside of IUF, it is uncommon to use sat bootprep.
For more information on IUF, see the
IUF section of
the Cray System Management Documentation.
For more information on sat bootprep, see SAT Bootprep.
Both IUF and sat bootprep allow variable substitutions into the default HPC
CSM Software Recipe bootprep input files. The default variables of the HPC
CSM Software Recipe are available in a product_vars.yaml file. To override
the default variables, specify any site variables in a site_vars.yaml file.
Variables are sourced from the command line, any variable files directly
provided, and the HPC CSM Software Recipe files used, in that order.
IUF also has special session variables internal to the iuf command that
override any matching entries. Session variables are the set of product and
version combinations being installed by the current IUF activity, and they are
found inside IUF’s internal session_vars.yaml file. For more information on
IUF and variable substitutions, see the
IUF section of
the Cray System Management Documentation.
When using sat bootprep outside of IUF, substituting variables into the
default bootprep input files might cause problems. Complex variables like
"{{ working_branch }}" cannot be completely resolved outside of IUF and
its internal session variables. Thus, the default product_vars.yaml file is
unusable with only the sat bootprep command when variables like
"{{ working_branch }}" are used. To work around this limitation when
substituting complex variables, use the internal IUF session_vars.yaml file
with sat bootprep and the default bootprep input files.
Find the session_vars.yaml file from the most recent IUF activity on the
system.
This process is documented in the upgrade prerequisites procedure of the Cray System Management Documentation. For more information, see steps 1-6 of Stage 0.3 - Option 2.
(ncn-m001#) Use the session_vars.yaml file to substitute variables into the default
bootprep input files.
sat bootprep run --vars-file session_vars.yaml
The sat bootprep run command uses information from the bootprep input files
to create CFS configurations, IMS images, and BOS session templates. To restrict
this creation into separate stages, use the --limit option and list whether
to create configurations, images, session_templates, or some
combination of these. IUF uses the --limit option in this way to install,
upgrade, and deploy products on a system in stages.
(ncn-m001#) For example, to create only CFS configurations, run the following command used
by the IUF update-cfs-config stage:
sat bootprep run --limit configurations example-bootprep-input-file.yaml
Example output:
INFO: Validating given input file example-bootprep-input-file.yaml
INFO: Input file successfully validated against schema
INFO: Creating 3 CFS configurations
...
INFO: Skipping creation of IMS images based on value of --limit option.
INFO: Skipping creation of BOS session templates based on value of --limit option.
(ncn-m001#) To create only IMS images and BOS session templates, run the following command
used by the IUF prepare-images stage:
sat bootprep run --limit images --limit session_templates example-bootprep-input-file.yaml
Example output:
INFO: Validating given input file example-bootprep-input-file.yaml
INFO: Input file successfully validated against schema
INFO: Skipping creation of CFS configurations based on value of --limit option.