So you're pretty close. Just missing a thing. Each puppet run will have exactly one environment, and no environment merging behavior has yet been proposed. What is merged is the modulepath.
So you want to put the global modules into /etc/puppet/modules/global then the local(call it usEast) environment modules into /etc/puppet/environments/usEast/local. Then the environment path would be set to /etc/puppet/environments, the environment would be usEast, the environment.conf would be at /etc/puppet/environments/usEast/environment.conf and the modulepath being set in environment.conf would be modulepath=local:/etc/puppet/modules/global The first path there is relative and the second path is absolute, and you can totally put the global modules into the environment directory if you wish. Hope this helps, Spencer On Mon, Nov 24, 2014 at 5:07 AM, Ger Apeldoorn <i...@gerapeldoorn.nl> wrote: > Hi, > > I have been implementing Puppet in a large company, with locations (and > teams) in several countries. > > The idea is to create a layered approach, i.e. 1 global repository with > standard modules and 1 local repository with custom modules (and roles & > profiles). All locations & Global have the same environments. > > Both environmentpath locations are configured: > > environmentpath=/etc/puppet/env-local:/etc/puppet/env-global > Both locations have integration, testing etc. > > I expected that if a module was not found in the environment in > /etc/puppet/env-local, it would load the right environment in > /etc/puppet/env-global and get it from there. > > However, if it finds the environment present in /etc/puppet/env-local, it > does not look further if the class is not found in that environmennt. I > would expect it to load the environment in /etc/puppet/env-global, and load > the class from there. The same for pluginsync and defined types. > > Is this by-design? Any smart way to still get the desired behaviour? > > Thanks, > Ger Apeldoorn > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to puppet-users+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/puppet-users/63093324-c2ce-409b-bdaf-8ac0f551790e%40googlegroups.com > <https://groups.google.com/d/msgid/puppet-users/63093324-c2ce-409b-bdaf-8ac0f551790e%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- Spencer Krum (619)-980-7820 -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/CADt6FWMS%3DOA%3DGTrig21Q78oVtMKQRyPcEpTjewG%3DJoZWSH%2BGXg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.