diskimage-builder/elements/dpkg
Gonéri Le Bouder eca59b2e97 dpkg: local cache for .deb files
With this patch, /var/cache/apt/archives directory content is preserved.
The directory is actually a bind mount of the
~/.cache/image-create/apt/$DISTRO_NAME directory, much like what we do
for ccache.
You can use DIB_APT_LOCAL_CACHE=0 to disable this behavior.

This trivial change improve performance A LOT (>30%), even if a local
HTTP proxy because:
 - there is no need to copy again and again the same files
 - we avoid network latency

The patch has been tested with Debian and Ubuntu with every elements
from the tripleo-image-elements repository, the final size of the cache
directory is about 700MB per distribution subdirectory.

Change-Id: I4fab499493f734c7c546d4d23b1a98f0e7523a39
2014-06-10 17:20:37 +02:00
..
bin 4 spaces indent 2014-05-10 11:17:29 +02:00
cleanup.d set -u and -o pipefail everywhere 2014-05-06 15:51:07 -05:00
extra-data.d Remove All Rights Reserved 2014-04-25 11:25:10 -07:00
post-install.d dpkg: local cache for .deb files 2014-06-10 17:20:37 +02:00
pre-install.d set -u and -o pipefail everywhere 2014-05-06 15:51:07 -05:00
root.d dpkg: local cache for .deb files 2014-06-10 17:20:37 +02:00
element-deps Standardise manifest creation and retrieval 2014-04-10 12:25:13 +01:00
README.md dpkg: local cache for .deb files 2014-06-10 17:20:37 +02:00

Provide dpkg specific image building glue.

The ubuntu element needs customisations at the start and end of the image build process that do not apply to RPM distributions, such as using the host machine HTTP proxy when installing packages. These customisations live here, where they can be used by any dpkg based element.

The dpkg specific version of install-packages is also kept here.

Environment Variables

  • DIB_ADD_APT_KEYS: If an extra or updated apt key is needed then define DIB_ADD_APT_KEYS with the path to a folder. Any key files inside will be added to the key ring before any apt-get commands take place.
  • DIB_APT_LOCAL_CACHE: You can use this variable to disable the internal cache of the /var/cache/apt/archives directory by setting it to 0. The default is to bind mount the ~/.cache/image-create/apt/$DISTRO_NAME directory in /var/cache/apt/archives, this to cache the .deb files downloaded during the image creation.