I'm running Puppet 3.2.4 with Foreman 1.2.1. I have environments set up like so:
modulepath = /etc/puppet/environments/eng/modules:/etc/puppet/environments/common:/usr/share/puppet/modules
modulepath = /home/jms1/puppet:/etc/puppet/environments/common:/usr/share/puppet/modules
All of the modules are normally stored under /etc/puppet/environments/common. I'm trying to test some changes to one of the modules. I did this by copying the existing module into my work directory...
$ cp -a /etc/puppet/environments/common/user /home/jms1/puppet/
... and making my changes there. Then, in Foreman I moved my test machine from the "eng" environment to the "jms1" environment, and when I run "puppet agent -t" I get the following error:
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Definition 'user::virtual::voalte_user' is already defined at /etc/puppet/environments/common/user/manifests/virtual.pp:22; cannot be redefined at /home/jms1/puppet/user/manifests/virtual.pp:22 on node xxx
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
To me this says that the puppet server is seeing modules called "user" in two different directories in the modulepath.
Is there a way to tell the puppet server that if it sees modules with the same name, it should only use the one listed first in the modulepath? I would like to avoid making the environments totally separate and having to full copy of one environment in order to use my test environment (although if that's the only way to do it, I'm not totally against doing it.)
John Simpson <email@example.com>
Unix System/VM Developer and Engineering Operations, Voalte
+1 (941) 312-2830 x148
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 firstname.lastname@example.org.
To post to this group, send email to email@example.com.
Visit this group at http://groups.google.com/group/puppet-users.
For more options, visit https://groups.google.com/groups/opt_out.