puppetlabs/Razor-Microkernel — pull request #16 by tjmcs (2012-11-14 01:19:11+00:00)
Title: Adds support to the Microkernel for use of an (internal and external) gem mirror

For full support (including support for an external gem mirror) changes must be made to the Razor server (see pull request [#240](https://github.com/puppetlabs/Razor/pull/240) in the Razor project) or to the razor_server.conf file on the Razor server (to add in the new parameters needed to point the Microkernel instances at an external gem mirror). With these changes in place, a list of gems to install is obtained from a gem list (assumed to be accessible via the URI given by the 'mk_gemlist_uri' configuration parameter), and then the versions of the gems listed there that are accessible from the gem mirror that will be used by the Microkernel (assumed to be defined by the 'mk_gem_mirror_uri' configuration parameter) are compared with the versions of those same gems that are installed locally. This comparison is made whenever the Microkernel Controller is restarted (or during the Microkernel Controller initialization process that occurs when the Microkernel first boots). If the stated gems are not available locally, or if the latest version available from the gem mirror is not installed locally, then the stated version of those missing/out of date gems version will be installed from the gem mirror...