diskimage-builder/elements/package-installs
James Slagle 92b0125da1 Use sudo -E when squashing package installs files
Since the package-installs-squash script  relies on the defined
environment variables for figuring out what the values are for an
element's install type and the default install types, sudo -E must be
used to preserve the environment.

Change-Id: Ice5cf0bca65d8078f84daedbef123fc73d5a7b63
2015-02-04 13:25:48 -05:00
..
bin Add installtype support to package-installs 2015-01-28 20:11:51 -08:00
extra-data.d Use sudo -E when squashing package installs files 2015-02-04 13:25:48 -05:00
install.d Rework package-installs to collapse on build host 2014-12-11 00:05:32 -08:00
post-install.d Rework package-installs to collapse on build host 2014-12-11 00:05:32 -08:00
pre-install.d Rework package-installs to collapse on build host 2014-12-11 00:05:32 -08:00
element-deps package-installs for pre-install.d/post-install.d 2014-08-14 21:18:19 -04:00
README.rst Add installtype support to package-installs 2015-01-28 20:11:51 -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
 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.