Affects Version/s: None
Fix Version/s: None
Method Found:Needs Assessment
QA Risk Assessment:Needs Assessment
Puppet Version: 4.10.8
OS Name/Version: RHEL 6.9
The datatypes from indirect dependencies are not loaded. If you do so, this will result an error and the puppet-agent will fail with:
Error: Evaluation Error: Resource type not found: Stdlib::Absolutepath at /etc/puppetlabs/code/environments/production/modules/my_module2/manifests/init.pp:2:3 on node ...
The functions, types, defined types can still be used without any problem.
My expectation is that everything is treated the same way and that I only have to define the needed dependencies
In this case the datatype Stdlib::Absolutepath can not be used by the module my_module, but the function abs can be used
If I want to use the datatype Stdlib::Absolutepath in the module my_module I need also to specify the dependency on stdlib
**Datatypes are also loaded using the dependencies
Datatypes are not loaded using the dependencies
- puppet apply site.pp will succeed because the module my_module has both dependencies on mystdlib and stdlib
- puppet apply site2.pp will fail because the module mo_module has only a dependency on mystdlib because the mystdlib module already has the dependency on stdlib
- puppet apply site3.pp will succeed because there's no datatype of the stdlib module used. Only the abs function is used.