This package is abandoned and no longer maintained. The author suggests using the supervisorphp/configuration package instead.

Manage Supervisor configuration in PHP

v0.1.0 2015-01-04 00:34 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:43:05 UTC



This package has been moved under SupervisorPHP.

For details see

Indigo Supervisor Configuration

Latest Version Software License Build Status Code Coverage Quality Score HHVM Status Total Downloads Dependency Status

Manage Supervisor configuration in PHP.


Via Composer

$ composer require indigophp/supervisor-configuration


Create a configuration using the builder.

use Indigo\Supervisor\Configuration;
use Indigo\Supervisor\Configuration\Section\Supervisord;
use Indigo\Supervisor\Configuration\Section\Program;
use Indigo\Supervisor\Configuration\Renderer;

$config = new Configuration;
$renderer = new Renderer;

$section = new Supervisord(['identifier' => 'supervisor']);

$section = new Program('test', ['command' => 'cat']);

echo $renderer->render($config);

The following sections are available in this pacakge:

  • Supervisord
  • Supervisorctl
  • UnixHttpServer
  • InetHttpServer
  • Includes**
  • Group*
  • Program*
  • EventListener*
  • FcgiProgram*

*Note: These sections has to be instantiated with a name and optionally a properties array:

$section = new Program('test', ['command' => 'cat']);

**Note: The keyword include is reserved in PHP, so the class name is Includes, but the section name is still include.

Existing configuration

You can parse your existing configuration, and use it as a Configuration object.

use Indigo\Supervisor\Configuration;
use Indigo\Supervisor\Configuration\Parser\File;

$parser = new File('/etc/supervisor/supervisord.conf');

$configuration = new Configuration;

// argument is optional, returns a new Configuration object if not passed

Available parsers:

Writting configuration

You can use Writers to write configuration to various destinations.

use Indigo\Supervisor\Configuration;
use Indigo\Supervisor\Configuration\Writer\File;

// As a second parameter you can optionally pass an instance of Indigo\Supervisor\Configuration\Renderer
$writer = new File('/etc/supervisor/supervisord.conf');

$configuration = new Configuration;


Available writers:

You can find detailed info about properties for each section here:


$ phpspec run


Please see CONTRIBUTING for details.



The MIT License (MIT). Please see License File for more information.