Самый простой способ - изменить конечную точку призмы, чтобы она указала на другой сервер призмы, прежде чем запускать prisma deploy
. На момент написания, prisma
было переименовано с prisma
на prisma1
. Вы можете найти более подробную информацию здесь , поэтому убедитесь, что у вас установлена prisma1
как devDependency
.
Prisma объясняет, как добиться того же в своих документах здесь .
Выполните следующие шаги:
- Установите
prisma1
как devDependency yarn add prisma1 -D
, - Создайте клиент Prisma и укажите файл конфигурации для использования
npx prisma1 generate -p path/to/prisma.test.yml
- Запустите свои тесты
В своих конфигурационных файлах укажите разные конечные точки, указывающие на разные серверы призмы, вам может понадобиться одна для тестирования, а другая для производства.
Содержимое для различных файлов конфигурации может выглядеть следующим образом:
prisma.test.yml (для запуска локальных тестов)
endpoint: http://127.0.0.1:4466
datamodel: datamodel.prisma
databaseType: document
secret: u4r4secret
generate:
- generator: javascript-client
output: ./generated/prisma-client/
prisma.yml (для производственного использования)
endpoint: http://prod-server-ip:4466
datamodel: datamodel.prisma
databaseType: document
secret: u4r4secret
generate:
- generator: javascript-client
output: ./generated/prisma-client/
Также важно, не забудьте перегенерировать клиент prisma перед отправкой кода в производство. Быстрый и простой способ - использовать git крючки.
Предложение:
Используйте husky
и добавьте pre-commit
крючок, который будет работать до git commit
, чтобы всегда гарантировать Ваш клиент Prisma всегда будет иметь конечную точку производства до того, как вы отправите sh в производство. Добавьте следующий раздел к package.json
.
"husky": {
"hooks": {
"pre-commit": "yarn prisma:generate -p path/to/prisma.yml"
}
}