Using puppet, you can install 'packages' on your system using a variety of 'providers'. There are built in providers for yum, apt, gems, etc.
Is there a 'puppet-module' package provider or similar? In order to re-use puppet modules from http://forge.puppetlabs.com/, I am downloading the release, unzipping it into my own source repository, and adding it to my sources. This isn't ideal - I'd like to be able to re-use a module without copying it.
Is there a better way? I'd like to be able to install and use puppet-modules on the puppetmaster using puppet itself. That would make using/upgrading modules easier, and allow for working at a higher level of abstraction.
I guess there might be a chicken-egg problem - puppet might struggle to validate my manifests if they contain resources it doesn't yet have installed, but maybe this could be worked around using stages?