I have a puppet module that uses gini-archive . Recently, I am changing my module to a dependency on biemond-wildfly , which is dependent on nanliu -archive .
However, I cannot install nanliu-archive because both of these archive modules are installed in a directory called archive . This, I believe, violates the requirements of the puppet module, as they must be installed in directories called <username>-archive .
However, even if I put them in different directories, I still have a problem. Both classes are called archive (actually one of them is a class and one is a definition, but I donβt think it is too important now), so when my module says include archive , the puppet will not know which one I want .
Note. I have a java background where each class is in the package hierarchy, which prevents similar problems, but I do not see the equivalent for the puppet one.
I know that I can have a whole load of various module directories ( /etc/puppet/modules , /etc/puppet/modules2 , etc.), but the puppet still seems to be viewing them in order, that is, it always will load the archive class from the first module directory in the list.
Is there a way to solve this or have I reached the limit of what a puppet can do? I would prefer not to fork each module and change the names of the classes that seem to defeat the forge point.
Thanks.
source share