简体   繁体   中英

Typeorm + Firebase functions: “No connection options were found in any orm configuration files” after deployed

Env:nodejs12

Folder structure:

#root
/functions
  /src
    ...
    /models
    /resolvers
    index.ts
  ormconfig.json
  package.json
  tsconfig.json
  ...
.firebaserc
firebase.json

Everything worked when developing in local environment. After deployed to firebase functions, No connection options were found in any orm configuration files shows up.

What might be the cause?

I'll update with more information if needed.

=========================================

update

Below is the folder structure of deployed codes. (Cloud functions can't show more than 50 files so I downloaded the source code from GCP)

文件夹结构

云函数源选项卡

As you can see the ormconfig.json does exist in the root, but somehow it cannot be located. I have to create connection manually with typeorm.createConnection({type: "postgres",...}) to make the code work.

This is likely being caused by a known bug with app-root-path (which TypeORM uses for config file resolution ) when used in conjunction with Google Cloud Functions.

The workaround / fix that worked for me was to set the environment variable APP_ROOT_PATH to /workspace when I deployed my Google Cloud Function (app-root-path will short-circuit when it sees that variable).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM