ome / prod-playbooks

Playbooks used by the OME team for deploying production services including OMERO
https://www.openmicroscopy.org/omero
BSD 2-Clause "Simplified" License
4 stars 18 forks source link

OMERO.web app configuration style unification and fixes #333

Open sbesson opened 2 years ago

sbesson commented 2 years ago

While reviewed the configuration changes in https://github.com/ome/prod-playbooks/pull/332, we realised that our Ansible playbooks use very different styles for setting the OMERO.web app configuration:

For comparison, the IDR deployment playbooks use a style most closest to nightshade-webclients i.e. the built-in omero_web_apps* variables supplemented by omero_web_apps_config_append and omero_web_apps_config_set -see https://github.com/IDR/deployment/blob/77b759ce21f2a165903aa5cbea7fcb673fcf55a8/ansible/group_vars/omero-hosts.yml#L162-L604

The mixture of styles is particularly confusing. Deciding on the preferred style(s) and applying them systematically would certainly reduce maintenance.

A related issue highlighted by the progression https://github.com/ome/prod-playbooks/pull/332 is that extreme care should be put in the usage of the _append variables. The configuration files stored under /opt/omero/web/config are loaded as part of the omero-web service lifecycle. Internally omero config append includes some logic avoiding the duplication of a value in a configuration list. However, removing a value from a list e.g. unregistering a web app requires more thoughts