Package: cloud-maker
Linux Cloud bootstrap scripts (Python 2/3 version)A successor tofedora-pack, in a language that isn’t so dead.The main attraction ismake_provisioner, which creates an image
bootstrapping script: given a directory and a script within, it generates a
single-file, self-extracting archive that unpacks the directory on the guest
and runs the configured script.It’s designed for convenient use as a Packer shell provisioner, or a layer in
a Dockerfile.There’s another script,fedora2ova, which converts a (possibly
xz-compressed) Fedora Cloud raw disk image into a VirtualBox OVA using the
VBoxManage tool.DependenciesThe host requiresPython 2.7 or Python 3.3.4and runs on any OS.Note that Python 2 support has been added to the original project, so that OS
X and some Linux users won’t have to install Python 3 to get things running.make_provisionerhas no further dependencies.fedora2ovarequires the Fedora Cloud raw image,xorriso, and
VirtualBox management tools (VBoxManage).  It must run on a host that
supports running Fedora as a VirtualBox guest in order for the guest’s
cloud-config to perform the configuration.On OS X,xorrisois available viahomebrew, and the VirtualBox
management tools are usually installed with VirtualBox itself.Guest OS SupportThe launch script generated bymake_provisioneris intended to run onanyLinux or BSD distro, and any other guest with a POSIX/bin/sh.
Please open anissueon github if it does not.Quick Start GuideThis repo is installable through the standardsetup.py(or wheel) method,
or it can be run in-place usingpython-mfrom the root of the project.For instance, to run aninstalledmake_provisioner:$ make_provisioner --helpTo run the same command from the directory containing this README file:$ python -m make_provisioner --helpThe help documents and the bundledprovisioner.iniare most likely to be the
authoritative, up-to-date documentation.Official Distributionssapphirecat’s githubpypi pageLicenseMIT.Changes from Fedora-Pack 0.7As noted in the description, this version usesPython 2.7 or Python 3.3.4+instead of Perl to do all the work.Distros and Versions are goneMuch of what the provisioner used to do has beenremovedin this version.
We do not pre-install any dependencies; since the script can be
system-specific, it can installits owndependencies and launch a stage 3
script if it wants.  And now,make_provisionerworks as-is on many more
systems and versions, since it knowsvery littleabout them.Cautionary note for Windows hostsYour stage2 script may fail to start with ‘no such file or directory’ or
possibly ‘bad interpreter’ if you accidentally save it with CRLF line-endings.
In vim, be sure to use:set ff=unixto change thefileformat.Byzantine command-line replaced with config filecloud-maker’smake_provisioneruses a configuration file instead of
specifying everything on the command-line.  It’s in the DOS/INI format that
Python’s configparser reads.  So you’ll write a config likeprovisioner.ini, defining at least onesystem(one machine or machine
image) as a section, then use that section name to launch the command:python-mmake_provisionermain-debianYou can specify your own config file instead of using the default:python-mmake_provisioner-cmyconfig.ini webtier