Skip to content

Supervisor: Updating Managevisor services

This page is for updating the application files in attracs-linux-playbooks/supervisord/run/<application-name>.conf.j2 which contains package version, launch parameters etc. For application configs, see: Managevisor: Application configs (https://app.clickup.com/2496230/docs/2c5q6-69975/2c5q6-68204)

When you have communicated a possible downtime with PMs, update configs to backends:

./scripts/supervisord-update-server-process-configs.sh

Danger: Your local attracs-linux-playbooks repository must be up-to-date with main/master or else you risk downgrading existing services! Running this script also has a possibility of causing a downtime, as it updates all supervisor services!

Sometimes services do not reload themselves automatically, in that case you can click on a backend's Actions button to show changed supervisor configs that can be manually reloaded: (using these buttons is the same as running the command supervisorctl reload <service-name.attracs.com>) List of reloadable Supervisor configurations per application

Warning: When reloading supervisor configs, think what you are doing. This will restart the service, causing it to become unavailable for a few minutes. Highly-available services are built to tolerate one node disappearing but restarting nodes has to be spaced out over multiple minutes in order to avoid a service downtime! Green light does not equal everything is running correctly it just means that the service started without issues.

To do ideas

Instead of trusting local git repository to be up-to-date why not use github.com instead? Counter-argument from Koste was that this may be a good thing, since sometimes we may want to run changes that differ from main. How do we communicate this though, since one update-all from main branch will change that back.