community.general.supervisorctl – Manage the state of a program or group of programs running via supervisord

Note

This plugin is part of the community.general collection (version 4.2.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.supervisorctl.

Synopsis

  • Manage the state of a program or group of programs running via supervisord

Requirements

The below requirements are needed on the host that executes this module.

  • supervisorctl

Parameters

Parameter Choices/Defaults Comments
config
path
The supervisor configuration file path
name
string / required
The name of the supervisord program or group to manage.
The name will be taken as group name when it ends with a colon :
Group support is only available in Ansible version 1.6 or later.
If name=all, all programs and program groups will be managed.
password
string
password to use for authentication
server_url
string
URL on which supervisord server is listening
signal
string
The signal to send to the program/group, when combined with the 'signalled' state. Required when l(state=signalled).
state
string / required
    Choices:
  • present
  • started
  • stopped
  • restarted
  • absent
  • signalled
The desired state of program/group.
supervisorctl_path
path
path to supervisorctl executable
username
string
username to use for authentication

Notes

Note

  • When state = present, the module will call supervisorctl reread then supervisorctl add if the program/group does not exist.

  • When state = restarted, the module will call supervisorctl update then call supervisorctl restart.

  • When state = absent, the module will call supervisorctl reread then supervisorctl remove to remove the target program/group.

Examples

- name: Manage the state of program to be in started state
  community.general.supervisorctl:
    name: my_app
    state: started

- name: Manage the state of program group to be in started state
  community.general.supervisorctl:
    name: 'my_apps:'
    state: started

- name: Restart my_app, reading supervisorctl configuration from a specified file
  community.general.supervisorctl:
    name: my_app
    state: restarted
    config: /var/opt/my_project/supervisord.conf

- name: Restart my_app, connecting to supervisord with credentials and server URL
  community.general.supervisorctl:
    name: my_app
    state: restarted
    username: test
    password: testpass
    server_url: http://localhost:9001

- name: Send a signal to my_app via supervisorctl
  community.general.supervisorctl:
    name: my_app
    state: signalled
    signal: USR1

- name: Restart all programs and program groups
  community.general.supervisorctl:
    name: all
    state: restarted

Authors