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