diskimage-builder/elements/package-installs
Gregory Haynes e5b8656141 Add new package-installs system
We currently support package-installs definitions which has some
limitations and oddities. This new format requires only one definition
which does not reside in our run-parts directories and follows a
consistent naming scheme (package-installs.yaml).

Change-Id: Ie51a7c4fdc15634ae8e069728e5e07cc1dc36095
2014-12-01 21:29:47 -08:00
..
bin Add new package-installs system 2014-12-01 21:29:47 -08:00
extra-data.d Add new package-installs system 2014-12-01 21:29:47 -08:00
install.d Add new package-installs system 2014-12-01 21:29:47 -08:00
post-install.d Add new package-installs system 2014-12-01 21:29:47 -08:00
pre-install.d Add new package-installs system 2014-12-01 21:29:47 -08:00
element-deps package-installs for pre-install.d/post-install.d 2014-08-14 21:18:19 -04:00
README.rst Add new package-installs system 2014-12-01 21:29:47 -08:00

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

example package-installs.json:
{
  "libxml2": null,
  "grub2": {"phase": "pre-install.d"},
  "networkmanager": {"uninstall": true}
}


Setting phase or uninstall properties for a package overrides the following
default values:

phase: install.d
uninstall: False


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.