Re: cron(8) improvement

From: Allan Jude <freebsd_at_allanjude.com>
Date: Wed, 06 Nov 2013 22:53:46 -0500
On 2013-11-06 22:49, Kimmo Paasiala wrote:
> On Thu, Nov 7, 2013 at 4:27 AM, Allan Jude <freebsd_at_allanjude.com> wrote:
>> On 2013-11-06 20:49, Mark Felder wrote:
>>> On Wed, Nov 6, 2013, at 18:21, Tim Kientzle wrote:
>>>> On Nov 5, 2013, at 9:31 AM, Allan Jude <freebsd_at_allanjude.com> wrote:
>>>>
>>>>> This came up in discussion on IRC and I thought I should throw it at the
>>>>> list so I don't forget.
>>>>>
>>>>> A user was asking how to do what linux cron does, where there is a
>>>>> directory /etc/cron.d/ that packages and add files to to create crontabs.
>>>>>
>>>>> Making FreeBSD's cron (Vixie Cron) include /etc/cron.d/ and
>>>>> /usr/local/etc/cron.d/ in the /etc/crontab format seems like a very
>>>>> useful feature, especially for pkg(8) as it makes it easy and safe to
>>>>> programatically add and remove crontabs as part of a package.
>>>> This is a good idea.  We should do it.
>>>>
>>>> How and if this facility gets used is a separate question.
>>>>
>>>> "Tools, not policy."
>>>>
>>>> Support for a cron.d directory is a tool that can be
>>>> used in many ways.  The policy of how it should be
>>>> used is a separate discussion.  (For example, whether
>>>> or not ports or packages should install crontab files into
>>>> /usr/local/etc/cron.d/ can be richly debated after that
>>>> directory exists.)
>>>>
>>> Ok, so we create that directory. Now nobody can use it in a port until
>>> FreeBSD 8.4 is EoL -- approximately June 30, 2015.
>>>
>>> We should be using the existing cron tabs directory *now*. We can't
>>> easily force older versions of FreeBSD to update their cron software or
>>> configuration to support that new directory.
>>>
>>> I'm not saying we shouldn't create it, just that we can't effectively
>>> use it for 2 years.
>>> _______________________________________________
>>> freebsd-current_at_freebsd.org mailing list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-current
>>> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"
>> My use case is less about packages, and more about puppet, ansible etc.
>> Puppet relies on these hideously large markers in the crontab files to
>> programmatically add/remove crons, whereas a cron.d directory could be
>> done nice and clean
>>
>> And in that case, the fact that it is not supported on 8.x does not
>> bother me.
>>
>> --
>> Allan Jude
>>
>>
> What's wrong with using the existing tools for achieving the same
> effect? Periodic can be adapted to do exactly what you're describing
> as noted above by adding an hourly (even minutely? :D ) periodic run.
> Also periodic already has support for ports installing their own jobs
> under /usr/local/etc/periodic.d that can be enabled/disabled in
> periodic.conf.
>
> -Kimmo
Programmatically installing a cron that runs at odd intervals (our use
case, on minutes 9,24,39,54 of each hour, manually staggered across
groups of hosts). To enable a new periodic run, you have to edit the
/etc/crontab file. I could add my cronjobs there directly, or via the
crontab command (how puppet does it now), but i'd rather drop files in a
directory, so they can be more easily removed or updated.

From a management perspective, when dealing with 100s of machines, it is
just a much nicer way to do it.

-- 
Allan Jude



Received on Thu Nov 07 2013 - 02:53:48 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:44 UTC