diff --git a/README.md b/README.md index 72e35b2f..bc77e361 100644 --- a/README.md +++ b/README.md @@ -156,6 +156,12 @@ part of the process you need to customise: install packages, chain into configuration management tools or do other image specific operations. +* post-install.d: Run code in the chroot. This is a good place to perform + tasks you want to handle after the OS/application install but before the + first boot of the image. Some examples of use would be: Run chkconfig + to disable unneeded services and clean the cache left by the package + manager to reduce the size of the image. + * first-boot.d: Runs inside the image before rc.local. Scripts from here are good for doing per-instance configuration based on cloud metadata. diff --git a/bin/disk-image-create b/bin/disk-image-create index 86ecdf1f..aa1eddb5 100755 --- a/bin/disk-image-create +++ b/bin/disk-image-create @@ -117,6 +117,7 @@ run_d_in_target pre-install do_extra_package_install # Call install scripts to pull in the software users want. run_d_in_target install +run_d_in_target post-install prepare_first_boot finalise_base unmount_image diff --git a/elements/dpkg/post-install.d/99-clean-up-cache b/elements/dpkg/post-install.d/99-clean-up-cache new file mode 100755 index 00000000..2457f78d --- /dev/null +++ b/elements/dpkg/post-install.d/99-clean-up-cache @@ -0,0 +1,6 @@ +#!/bin/bash +# Do an apt-get clean. This will free some space. + +set -e + +apt-get clean