On Saturday, November 30, 2013 2:32:22 PM UTC-6, Felix Frank wrote: > > On 11/25/2013 05:29 PM, John Bollinger wrote: > > > > Do all relevant cron implementations support cron.d? Solaris? BSD / > > OSX? All Linux distros that matter? Etc? I don't know, but I am > > doubtful. > > That's a good point in favor of the continued fixing of crontab provider > bugs. > >
Here's another that I just discovered: crontab is specified by POSIX, but the mechanism by which crontabbed commands are executed (traditionally the cron daemon) is not. Compliant implementations are required to provide a mechanism to execute commands from crontab entries as scheduled, but details not inherent in the crontab specifications are unspecified. /etc/cron.d falls into that "unspecified" area, but more to the point, 'crontab' is the standard interface for scheduling periodic jobs. > > What about systems that use other user databases, either instead of or > > > in addition to /etc/password? For example, LDAP or NIS or even > winbind? > ... > > 2. Add logic to enumerate actual crontabs. This would be somewhat ugly, > > because it's quite different from the current paradigm of "work with > > usernames only and access the crontab files through the crontab > interface". > > I've put some more thought into this and I think this general approach > should be pursued after all. > > My initial sketch is flawed in two ways: > 1. As John pointed out, Etc.passwd cannot reliably expected to yield all > applicable users. > 2. Blindly adding targets to a Parsedfile provider feels like a dirty > hack. > > Instead, I will go ahead and try to allow the crontab provider to > facilitate the generation of additional cron resources by scanning the > file system. This will require some platform specific code for detecting > crontab files depending on the environment. I feel that this would be an > acceptable thing to do, because a similar logic already selects the > correct crontab (1) interface to use. > I think that is consistent with Puppet's general approach. For what it's worth, POSIX specifies that crontabs are stored in /var/spool, though it does not appear to specify exactly where therein, or what file names are used. John -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/8ca96e89-5a95-402e-8580-776e3b9acfa5%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.
