initscript

generic init script

jordi prats

eyp

15,867 downloads

2,971 latest version

5.0 quality score

Version information

  • 0.1.11 (latest)
  • 0.1.10
  • 0.1.9
  • 0.1.4
released Jun 27th 2019
This version is compatible with:
  • Puppet Enterprise 2021.0.x, 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 3.8.0
  • RedHat, CentOS, Scientific, OEL, OracleLinux, Debian, Ubuntu, SLES

Start using this module

Documentation

eyp/initscript — version 0.1.11 Jun 27th 2019

initscript

Table of Contents

  1. Overview
  2. Module Description
  3. Setup
  4. Usage
  5. Reference
  6. Limitations
  7. Development

Overview

Creates a generic sysV initscript given a command to run.

Module Description

Manages a sysV compatible init script to be able to start arbitrary services

Setup

What initscript affects

Creates a $name script file on /etc/init.d to start and stop a service

Setup Requirements

None

Beginning with initscript

basic example from eyp-kibana:

initscript::service { 'kibana':
  cmd => "${basedir}/${productname}/bin/kibana",
  require   => [ Class['initscript'], File["${basedir}/${productname}/config/kibana.yml"] ],
  before => Service['kibana'],
}

Usage

  • Start a given service using a start command that runs in the foregroundA
initscript::service { 'demo1':
  cmd   => 'sleep 1337m',
}
  • Start a given service using a start command that runs in the foreground using a specific user
initscript::service { 'demo2':
  cmd      => 'sleep 666m',
  run_user => 'evil',
}

estil

  • Start a given service using a command to start it and another command to stop it. Start command have to start the service in the background
initscript::service { 'demo3':
  cmd_start => 'nohup sleep 31173m &',
  cmd_stop  => 'pkill sleep',
}

Reference

defines

initscript::service

  • initscript: script name (default: resource's name)
  • description: script description (default: "default script for ${name}")
  • cmd: command to start a foreground service (default: undef)
  • cmd_start: command to start a servie in background mode (default: undef)
  • cmd_stop: command to stop a service in background mode (default: undef)
  • run_user: start daemon using a specific user (default: root)
  • option_scripts: load script before running start/stop commands (default: [])
  • tcp_listen_check: use a specific TCP port to check if the daemon is running (default: undef)
  • pid_file: set PID file for the service - only used in cmd mode (default: /var/run/generic.init.${name}.pid)
  • debug: set a debug log file (default: undef)

Limitations

Should work anywhere

Development

We are pushing to have acceptance testing in place, so any new feature should have some test to check both presence and absence of any feature