Configure and manage incron jobs with focus on tidiness

Table of Contents

  1. Description

  2. Setup - The basics of getting started with incron

  3. Usage - Configuration options and additional functionality

  4. Reference - An under-the-hood peek at what the module is doing and how

  5. Limitations - OS compatibility, etc.

  6. Development - Guide for contributing to the module

Description

This module is an interface for incron jobs with the main idea to be tidy. That means that any jobs that are not managed should not exist on the host.

Once you include incron, simply removing an incron::job from your manifests is sufficient for it to be cleaned up on your next agent run. No need to ensure => absent anymore. Enjoy!

Setup

Beginning with incron

To start out with incron:

include incron

This will install the required package, enable incron service and start managing /etc/incron.d directory.

Warning: all unmanaged files in /etc/incron.d will be removed at this point. Be careful!

Usage

All interactions with incron jobs should be done using incron::job resource.

It works with at least 3 parameters:

incron::job { 'upload_file':
  path    => '/watched_directory',
  event   => 'IN_CLOSE_WRITE',
  command => '/usr/local/bin/upload_file $#',
}

Reference

Type Aliases

  • Incron::Event - supported inotify events.

Full reference

Check out REFERENCE for up-to-date details.

Limitations

  • Made for and tested only on the following Ubuntu distributions:

    • 14.04

    • 16.04

    • 18.04

Development

I'll be happy to know you're using this for one reason or the other. And if you want to contribute - even better. Feel free to submit an issue / fire up a PR / whatever.