208da5f605
Turns out that updating packages last causes some pretty non-intuitive behaviour if you are trying to pin a package to a specific version. Lets just update the base RPMs first... subsequent installations should install the most updated version anyways (unless they are pinned). Also moves the package-installs script from the 00 step to 01 so we can do the update first. Co-Authored-By: Ben Nemec <bnemec@redhat.com> Change-Id: I962046cc6048e852e6582fbc579f88bb73e23fdd |
||
---|---|---|
.. | ||
bin | ||
extra-data.d | ||
install.d | ||
post-install.d | ||
pre-install.d | ||
element-deps | ||
README.rst |
package-installs
The package-installs element allows for a declarative method of installing and uninstalling packages for an image build. This is done by creating a package-installs.yaml or package-installs.json file in the element directory.
example package-installs.yaml:
libxml2:
grub2:
phase: pre-install.d
networkmanager:
uninstall: True
os-collect-config:
installtype: source
example package-installs.json:
{
"libxml2": null,
"grub2": {"phase": "pre-install.d"},
"networkmanager": {"uninstall": true}
"os-collect-config": {"installtype": "source"}
}
Setting phase, uninstall, or installtype properties for a package overrides the following default values:
phase: install.d
uninstall: False
installtype: * (Install package for all installtypes)
Setting the installtype property causes the package only to be installed if the specified installtype would be used for the element. See the diskimage-builder docs for more information on installtypes.
DEPRECATED: Adding a file under your elements pre-install.d, install.d, or post-install.d directories called package-installs-<element-name> will cause the list of packages in that file to be installed at the beginning of the respective phase. If the package name in the file starts with a "-", then that package will be removed at the end of the install.d phase.