(Serverless initiative): test Prisma error messages in unsupported systems
Prisma may throw a number of different error messages when loading the Prisma Engines fails. Although we already attempt to provide meaningful user-facing explanations of what went wrong, we should strive to be more precise.
We should thus add some ecosystem-tests that try to install and run Prisma on scenarios where we know it would fail.
Relevant unsupported systems we should test the new conditional error messages on:
- [x] Linux Alpine on
arm64arch (onlyx86_64is supported for Linux Alpine, see https://github.com/prisma/prisma/issues/8478) - [x] Distroless without
libz.so.1(see this comment) - [x] Debian Buster without any
libsslversion installed (see this comment) - [x] Linux Alpine 3.17 on
x86_64arch withbinaryTargets: ["linux-musl"](it shipsopenssl-3.0.x, but will try to dynamically loadopenssl-1.1.x, see https://github.com/prisma/prisma/issues/16553) - [ ] ~~Assert failures causes by Prisma not being able to load its engines~~.
This is probably not something that should be run with every version. But it totally makes sense as a manual thing we can run.
Folks, can we fix the milestone on this issue please. 4.9.0 has already sailed.
Note: we tried assertions in https://github.com/prisma/prisma/pull/17762, but they didn't make it to the release due to bundling issues with jest.spyOn. We did manual testing using the setup from ecosystem-tests / docker on an integration release for the time being.