The Puppet Labs Issue Tracker has Moved: https://tickets.puppetlabs.com

Bug #3350

Could not find a default provider for cron error prevents entire puppetd run

Added by Mr Paxos over 4 years ago. Updated about 4 years ago.

Status:DuplicateStart date:03/08/2010
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:cron
Target version:-
Affected Puppet version:0.25.4 Branch:
Keywords:cron

We've Moved!

Ticket tracking is now hosted in JIRA: https://tickets.puppetlabs.com

This issue is currently not available for export. If you are experiencing the issue described below, please file a new ticket in JIRA. Once a new ticket has been created, please add a link to it that points back to this Redmine ticket.


Description

While running puppetd on a gentoo box without any cron packages installed, puppetd stops with the following error:

debug: Puppet::Type::Cron::ProviderCrontab: file crontab does not exist
err: Could not run Puppet configuration client: Could not find a default provider for cron

However, all cron references in my configs require->Service[“vixie-cron”] which itself has a require->Package[“vixie-cron”]

I would expect the vixie-cron package to be installed, service started and things to move along.

Or, all other puppet types that do not depend on the failed cron to be applied.

However, puppetd stops dead in its tracks on this error.

If I manually install vixie-cron, and run puppetd again, all works according to plan.

History

#1 Updated by James Turnbull over 4 years ago

  • Category set to cron
  • Status changed from Unreviewed to Needs More Information

Can you provide some more information – logs (—trace —debug) and Gentoo version etc please?

#2 Updated by Mr Paxos over 4 years ago

puppetd -v —no-daemonize —trace —debug —onetime

debug: Failed to load library ‘shadow’ for feature ‘libshadow’ debug: Puppet::Type::User::ProviderPw: file pw does not exist debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not exist debug: Failed to load library ‘ldap’ for feature ‘ldap’ debug: Puppet::Type::User::ProviderLdap: feature ldap is missing debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl does not exist debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/ssl/private_keys/host-cdn-05.example.com.pem]: Autorequiring File[/var/lib/puppet/ssl/private_keys] debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/ssl/crl.pem]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/clientbucket]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/classes.txt]: Autorequiring File[/var/lib/puppet] debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/puppet] debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/var/lib/puppet/state] debug: /File[/var/lib/puppet/ssl/public_keys/host-cdn-05.example.com.pem]: Autorequiring File[/var/lib/puppet/ssl/public_keys] debug: /File[/var/lib/puppet/ssl/certs/host-cdn-05.example.com.pem]: Autorequiring File[/var/lib/puppet/ssl/certs] debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/lib/puppet/state] debug: /Filecommit:/var/lib/puppet/ssl/certificate_requests: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/var/lib/puppet/ssl/certs] debug: /File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet] debug: /File[/etc/puppet/namespaceauth.conf]: Autorequiring File[/etc/puppet] debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring File[/var/lib/puppet/ssl] debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet] debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet] debug: Finishing transaction 70246386804860 with 0 changes debug: Using cached certificate for ca, good until Mon Dec 15 22:40:29 UTC 2014 debug: Using cached certificate for host-cdn-05.example.com, good until Fri Mar 06 20:47:24 UTC 2015 notice: Ignoring —listen on onetime run debug: Loaded state in 0.00 seconds debug: Using cached certificate for ca, good until Mon Dec 15 22:40:29 UTC 2014 debug: Using cached certificate for host-cdn-05.example.com, good until Fri Mar 06 20:47:24 UTC 2015 debug: Using cached certificate_revocation_list for ca, good until debug: catalog supports formats: b64_zlib_yaml marshal pson raw yaml; using pson info: Caching catalog for host-cdn-05.example.com debug: Puppet::Type::Package::ProviderUp2date: file /usr/sbin/up2date-nox does not exist debug: Puppet::Type::Package::ProviderPorts: file /usr/local/sbin/portupgrade does not exist debug: Puppet::Type::Package::ProviderAptitude: file /usr/bin/aptitude does not exist debug: Puppet::Type::Package::ProviderSun: file /usr/bin/pkginfo does not exist debug: Puppet::Type::Package::ProviderRug: file /usr/bin/rug does not exist debug: Puppet::Type::Package::ProviderFreebsd: file /usr/sbin/pkg_info does not exist debug: Puppet::Type::Package::ProviderOpenbsd: file pkg_info does not exist debug: Puppet::Type::Package::ProviderFink: file /sw/bin/fink does not exist debug: Puppet::Type::Package::ProviderYum: file yum does not exist debug: Puppet::Type::Package::ProviderGem: file gem does not exist debug: Puppet::Type::Package::ProviderUrpmi: file urpmi does not exist debug: Puppet::Type::Package::ProviderAptrpm: file apt-get does not exist debug: Puppet::Type::Package::ProviderRpm: file rpm does not exist debug: Puppet::Type::Package::ProviderApt: file /usr/bin/apt-get does not exist debug: Puppet::Type::Package::ProviderHpux: file /usr/sbin/swlist does not exist debug: Puppet::Type::Package::ProviderSunfreeware: file pkg-get does not exist debug: Puppet::Type::Package::ProviderDpkg: file /usr/bin/dpkg does not exist debug: Puppet::Type::Service::ProviderRedhat: file /sbin/chkconfig does not exist debug: Puppet::Type::Service::ProviderDebian: file /usr/sbin/update-rc.d does not exist debug: Puppet::Type::Service::ProviderLaunchd: file /bin/launchctl does not exist debug: Puppet::Type::Service::ProviderRunit: file /usr/bin/sv does not exist debug: Puppet::Type::Service::ProviderDaemontools: file /usr/bin/svc does not exist debug: Puppet::Type::Cron::ProviderCrontab: file crontab does not exist /usr/lib64/ruby/site_ruby/1.8/puppet/type.rb:1494:in defaultprovider' /usr/lib64/ruby/site_ruby/1.8/puppet/type.rb:1605:indefault' /usr/lib64/ruby/site_ruby/1.8/puppet/type.rb:575:in set_default' /usr/lib64/ruby/site_ruby/1.8/puppet/type.rb:1914:ininitialize' /usr/lib64/ruby/site_ruby/1.8/puppet/resource.rb:172:in new' /usr/lib64/ruby/site_ruby/1.8/puppet/resource.rb:172:into_ral' /usr/lib64/ruby/site_ruby/1.8/puppet/resource/catalog.rb:576:in send' /usr/lib64/ruby/site_ruby/1.8/puppet/resource/catalog.rb:576:into_catalog' /usr/lib64/ruby/site_ruby/1.8/puppet/resource/catalog.rb:554:in each' /usr/lib64/ruby/site_ruby/1.8/puppet/resource/catalog.rb:554:into_catalog' /usr/lib64/ruby/site_ruby/1.8/puppet/resource/catalog.rb:474:in to_ral' /usr/lib64/ruby/site_ruby/1.8/puppet/configurer.rb:139:inconvert_catalog' /usr/lib64/ruby/site_ruby/1.8/puppet/configurer.rb:134:in retrieve_catalog' /usr/lib64/ruby/site_ruby/1.8/puppet/configurer.rb:162:inrun' /usr/lib64/ruby/site_ruby/1.8/puppet/agent.rb:53:in run' /usr/lib64/ruby/site_ruby/1.8/puppet/agent/locker.rb:21:inlock' /usr/lib64/ruby/site_ruby/1.8/puppet/agent.rb:53:in run' /usr/lib64/ruby/1.8/sync.rb:230:insynchronize' /usr/lib64/ruby/site_ruby/1.8/puppet/agent.rb:53:in run' /usr/lib64/ruby/site_ruby/1.8/puppet/agent.rb:134:inwith_client' /usr/lib64/ruby/site_ruby/1.8/puppet/agent.rb:51:in run' /usr/lib64/ruby/site_ruby/1.8/puppet/application/puppetd.rb:103:inonetime' /usr/lib64/ruby/site_ruby/1.8/puppet/application.rb:226:in send' /usr/lib64/ruby/site_ruby/1.8/puppet/application.rb:226:inrun_command' /usr/lib64/ruby/site_ruby/1.8/puppet/application.rb:217:in run' /usr/lib64/ruby/site_ruby/1.8/puppet/application.rb:306:inexit_on_fail' /usr/lib64/ruby/site_ruby/1.8/puppet/application.rb:217:in `run' /usr/sbin/puppetd:159 err: Could not run Puppet configuration client: Could not find a default provider for cron

/etc/puppet/production/modules/cron/init.pp:
class cron {
     package { "vixie-cron":
          category => "sys-process",
          ensure => present,
     }
     service { "vixie-cron":
          name => "vixie-cron",
          ensure => service_ensure("vixie-cron", "running"),
          enable => service_enable("vixie-cron", "true"),
          hasstatus => true,
          require => Package["vixie-cron"],
     }
     case $virtual {
          vserver: { }
          default: {
               cron { "cron-bkup":
                    command => 'rm /.bkup-*; touch /.bkup-`date +\%s`',
                    minute => '*/15',
                    user => "root",
                    require => Service["vixie-cron"],
               }
          }
     }
}

#3 Updated by seph seph about 4 years ago

  • Status changed from Needs More Information to Duplicate

I think this is a dup of #2475

#4 Updated by Mr Paxos about 4 years ago

Agreed.

Also available in: Atom PDF