The image is created using the existing Ansible playbooks, but run in a limited mode (specifically, with only tasks tagged bootstrap.) Aside from Ansible, there are a number of shell scripts that are run. Here’s what they do:
Installs Ansible from EPEL
Downloads the default insecure public key from the Vagrant Github repostory to allow the vagrant user to log in.
Performs cleanup tasks after installation is complete to limit image size when distributed. Specifically:
- Remove Ansible and cached yum information
- Remove persistent network information
- Remove temporary files, including /tmp/* and files under the home directory and log directories.
- Zero out all empty disk space and sync