3.2. Creating an Image Builder blueprint with command-line interface
This procedure describes how to create a new Image Builder blueprint using the command-line interface.
Procedure
1. Create a plain text file with the following contents:
name = "BLUEPRINT-NAME" description = "LONGER BLUEPRINT DESCRIPTION TEXT" version = "0.0.1"
Replace
BLUEPRINT-NAME
and LONGER BLUEPRINT DESCRIPTION
with a name and description for your blueprint.
Replace
0.0.1
with a version number according to the Semantic Versioning scheme.
2. For every package that you want to be included in the blueprint, add the following lines to the file:
[[packages]]
name = "package-name
"
version = "package-version"
Replace
package-name
with name of the package, such as httpd, gdb-doc, or coreutils.
Replace
package-version
with a version to use. This field supports dnf
version specifications:
- For a specific version, use the exact version number such as
7.30
- For latest available version, use the asterisk
*
- For a latest minor version, use format such as
7.*
.
3. Blueprints can be customized in a number of ways. For example, Simultaneous Multi-Threading (SMT) can be disabled by performing the steps below. For additional customizations available, please see the Section 3.7, “ Supported Image Customizations ” section.
[customizations.kernel] append = "nosmt=force"
4. Save the file as
BLUEPRINT-NAME.toml
and close the text editor.
5. Push (import) the blueprint:
# composer-cli blueprints push BLUEPRINT-NAME.toml
Replace BLUEPRINT-NAME with the value you used in previous steps.
6. To verify that the blueprint has been pushed and exists, list the existing blueprints:
# composer-cli blueprints list
7. Check whether the components and versions listed in the blueprint and their dependencies are valid:
# composer-cli blueprints depsolve BLUEPRINT-NAME