Context/Background:
From Ingolf Kuss in #tc-internal. See full thread here.
Sys Ops SIG wants to reach out formally to the TC because of the topic of direct db upgrade scripts in Poppy migration.
In the Poppy release notes, there are a number of db scripts described which need to be run by the operator after migration of the tenant.
I find the following scripts in the action column of the Release Notes:
- Script 3 of https://wiki.folio.org/display/FOLIOtips/Scripts+for+Inventory%2C+Source+Record+Storage%2C+and+Data+Import+Cleanup
- https://wiki.folio.org/display/FOLIJET/Call-numbers+migration
- https://wiki.folio.org/display/FOLIJET/Authorities+migration
- https://wiki.folio.org/display/FOLIOtips/Migration+scripts+for+OAI-PMH
- https://wiki.folio.org/display/FOLIJET/Scripts+to+populate+marc_indexers+version
- https://wiki.folio.org/display/FOLIJET/Adding+a+new+member+tenant+to+consortium.+mod-entities-links+scope
So far, in earlier releases, those kind of scripts have (in almost all cases) been part of the module, and have been triggered automatically when the new module is first being enabled for the tenant, while the old module is still enabled for the tenant (the old module is then being disabled and removed in the course of the upgrade).
SysOps SIG strongly feels that some of these scripts should be handled in that way: to be part of the module upgrade triggered by enablement for the tenant. FOLIO operators at Index Data find it pretty burdensome to deal with the upgrade scripts with many tenants in a multiple environments. Other members of Sys Ops agree and are confused why those script are not part of the modules's db migration.
If the migration is long-running (e.g. 4-5 hours), it appears reasonable to put it into a separate script. However, Sys Ops think, it should be available by some post-upgrade API, like /inventory-storage/migrations/jobs is for inventory migration.
If a decision has to be made during upgrade, in a ideal world, a tenant admin (not a sysadmin) should get notified (via UI) about that he/she has to make a decision. Until the decision has been made the module may stop to work as usual.
We think the TC could document some standard expectation for the POs.
Also, SysOps should be involved in the release retrospective.
Notes: