Skip to content

Commit

Permalink
improve prisma path resolution
Browse files Browse the repository at this point in the history
  • Loading branch information
timsuchanek committed Feb 21, 2020
1 parent 7eb643c commit 4786752
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions cli/sdk/src/engineCommands.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,23 +31,29 @@ async function getPrismaPath(): Promise<string> {
const dir = eval('__dirname')
const platform = await getPlatform()
const extension = platform === 'windows' ? '.exe' : ''
const relative = `query-engine-${platform}${extension}`
let prismaPath = path.join(dir, '..', relative)
const binaryName = `query-engine-${platform}${extension}`
let prismaPath = path.join(dir, '..', binaryName)
if (fs.existsSync(prismaPath)) {
return prismaPath
}
// for pkg
prismaPath = path.join(dir, '../..', relative)
prismaPath = path.join(dir, '../..', binaryName)
if (fs.existsSync(prismaPath)) {
return prismaPath
}

prismaPath = path.join(__dirname, '..', relative)
prismaPath = path.join(__dirname, '..', binaryName)
if (fs.existsSync(prismaPath)) {
return prismaPath
}

prismaPath = path.join(__dirname, '../..', relative)
prismaPath = path.join(__dirname, '../..', binaryName)
if (fs.existsSync(prismaPath)) {
return prismaPath
}

// needed to come from @prisma/client/generator-build to @prisma/client/runtime
prismaPath = path.join(__dirname, '../runtime', binaryName)
if (fs.existsSync(prismaPath)) {
return prismaPath
}
Expand All @@ -56,8 +62,8 @@ async function getPrismaPath(): Promise<string> {
`Could not find query-engine binary. Searched in ${path.join(
dir,
'..',
relative,
)} and ${path.join(dir, '../..', relative)}`,
binaryName,
)} and ${path.join(dir, '../..', binaryName)}`,
)
}

Expand Down

0 comments on commit 4786752

Please sign in to comment.