On Thu, May 18, 2017 at 02:56:31AM -0700, Rodney W. Grimes wrote:
> > Author: ngie
> > Date: Thu May 18 06:25:39 2017
> > New Revision: 318441
> > URL: https://svnweb.freebsd.org/changeset/base/318441
> > 
> > Log:
> >   Handle the cron.d entry for MK_AT in cron conditionally
> >   
> >   Install /etc/cron.d/at if MK_AT != no, always using it, which tries
> >   to run a non-existent program via cron(8) every 5 minutes with the
> >   default /etc/crontab, prior to this commit.
> >   
> >   SHELL and PATH are duplicated between /etc/crontab and /etc/cron.d/at
> >   because atrun(8) executes programs, which may rely on environment
> >   currently set via /etc/crontab.
> >   
> >   Noted by: bdrewery (in an internal review)
> >   MFC after:        2 months
> >   Relnotes: yes (may need to add environmental modifications to
> >                  /etc/cron.d/at)
> >   Sponsored by:     Dell EMC Isilon
> > 
> > Added:
> >   head/etc/cron.d/
> >   head/etc/cron.d/Makefile   (contents, props changed)
> >   head/etc/cron.d/at   (contents, props changed)
> > Modified:
> >   head/etc/Makefile
> >   head/etc/crontab
> > 
> > Modified: head/etc/Makefile
> > ==============================================================================
> > --- head/etc/Makefile       Thu May 18 06:15:42 2017        (r318440)
> > +++ head/etc/Makefile       Thu May 18 06:25:39 2017        (r318441)
> > @@ -8,6 +8,7 @@ FILESGROUPS=        FILES
> >  # No need as it is empty and just causes rebuilds since this file does so 
> > much.
> >  UPDATE_DEPENDFILE= no
> >  SUBDIR=    \
> > +   cron.d \
> >     newsyslog.conf.d \
> >     syslog.d
> 
> The thread on the newsyslog clearly shows that this is a contriversial change.
> 
> I strongly object to further splitting of /etc/FOO into /etc/foo.d/FOO files
> to suite Dell/EMC/Isilon's needs.  It is in conflict with the needs and
> desires of others.

Has multiple people has stated, on the newsyslog thread. this is not a
DELL/EMC/Isilon need, this is also a requirement for plenty of use cases
1. Consistency
  as a project we do support building WITHOUT_FOO there is no reason to install
  syslog, cron configuration for FOO if the system was built without foo

2. Packaging base
  if one does not install at there is no need for the at crontab to be installed
  (same reason as 1.)

3. Large deployment of freebsd farms
  Being able to administrate thousands of FreeBSD machines, one often ends up
  using tools like puppet, chef, ansible, cfengine. When programmatically
  handling configuration management it is way easier and safer to simple
  add/removes files in a directory rather than mangling^Winplace editing files.

4. Ports/packages
  On can provide easily sample configuration for cron, syslog (not only) and the
  admin can decide to use it or not easily (ususally this is done by making
  symlinks from the said file which would live in share/* into the .d directory.

This is not a new trend in FreeBSD: newsyslog, rc.conf, libmap and more.

Best regards,
Bapt

Attachment: signature.asc
Description: PGP signature

Reply via email to