Create a _base-module component for installing a puppet module from the forge (or maybe artifactory or git?) during puppet-agent build. The component should install the module into the /opt/puppetlabs/puppet/vendor_modules directory, at the same level as the global modules directory /opt/puppetlabs/puppet/modules.
We also need to make sure dependencies of the module are installed correctly. For example, zone depends on zfs/zpool. I'm not sure if we should do any dependency resolution like puppet module install does, or just require the component to list dependencies explicitly?
We can then use that template to install some of the modules we're extracting.