voxpupuli / puppet-zabbix

Puppet module for creating and maintaining zabbix components with puppet.
https://forge.puppet.com/puppet/zabbix
Apache License 2.0
80 stars 227 forks source link

Puppet logging errors for failed dependencies #543

Open maxfactor1 opened 6 years ago

maxfactor1 commented 6 years ago

I have the following in my logs on puppet runs when using the puppet-zabbix forge module.

Warning: Module 'puppetlabs-apache' (v3.2.0) fails to meet some dependencies:
  'puppet-zabbix' (v6.3.2) requires 'puppetlabs-apache' (>= 1.6.0 < 3.0.0)
Warning: Missing dependency 'camptocamp-systemd':
  'puppet-zabbix' (v6.3.2) requires 'camptocamp-systemd' (>= 0.4.0 < 3.0.0)
Warning: Missing dependency 'puppet-selinux':
  'puppet-zabbix' (v6.3.2) requires 'puppet-selinux' (>= 1.1.0 < 2.0.0)
Warning: Missing dependency 'puppetlabs-mysql':
  'puppet-zabbix' (v6.3.2) requires 'puppetlabs-mysql' (>= 3.5.0 < 6.0.0)
Warning: Missing dependency 'puppetlabs-pe_gem':
  'puppet-zabbix' (v6.3.2) requires 'puppetlabs-pe_gem' (>= 0.2.0 < 2.0.0)
Warning: Missing dependency 'puppetlabs-ruby':
  'puppet-zabbix' (v6.3.2) requires 'puppetlabs-ruby' (>= 0.6.0 < 2.0.0)

I will address line by line. I have to say that my Zabbix/Puppet forge module is working well without any issues, I just see it complaining in the puppet server logs about the above dependencies.

I am using the forge module apache v3.2.0 without issues. I am not using camptocamp-systemd at all. I am not using selinux at all. I am not using mysql at all (we use postgres) We use our own puppet methods for managing gem/ruby.

It seems that maybe some determination could be done by the forge module before throwing errors about dependencies not being met, or at least setting some of this to default = disabled unless otherwise requested?

Sorry if this is very incomplete, I am happy to provide any more info if requested.

bastelfreak commented 6 years ago

Hi @maxfactor1, dependency management in puppet is complicated. There are certain modules that are a dependency, but only if you are on a certain platform or use a certain feature of the zabbix module. The metadata.json file has no option to set a condition to a dependency. I'm afraid you will have to accept the warnings or you will have to install the other modules.