Bug #3350
Could not find a default provider for cron error prevents entire puppetd run
| Status: | Duplicate | Start date: | 03/08/2010 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | - | % Done: | 0% | |
| Category: | cron | |||
| Target version: | - | |||
| Affected Puppet version: | 0.25.4 | Branch: | ||
| Keywords: | cron | |||
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 3 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 about 3 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 3 years ago
- Status changed from Needs More Information to Duplicate
I think this is a dup of #2475
#4
Updated by Mr Paxos about 3 years ago
Agreed.