...
This decision was made by the Tech Leads group prior to the adoption of current decision making processes within the FOLIO project.
Background/Context
The trend across FOLIO is that teams are adopting testcontainers (https://www.testcontainers.org/) for build-time test infrastructure. For example, RMB, OKAPI, and at least one other module have replaced embedded postgresql with testcontainers, Also, we're starting to see modules which are adopting this for other pieces of infrastructure, e.g. kafka, elasticsearch(?), etc. Given this trend, does FOLIO as a project want to embrace this and encourage teams to follow this approach? For all build-time test infrastructure? Only for specific pieces of infrastructure? What about for UI modules?
Assumptions
List all assumptions that were made when making the decision
Constraints
- It's apparently not possible to run docker simultaneously with vagrant (virtualization issue?)
- One of the drivers for this is that postgres-embedded lacks support for several prominent architectures in version >= postgres 11
- RMB now allows disabling test containers by specifying and external DB for running tests: RMB-826 - Only use postgresTester (testContainers) on "empty" db configuration CLOSED
Rationale
Document the thought process, list reasons that lead to the final decision
...