Я использую цели развертывания в Firebase, и все работает нормально, кроме моих облачных функций.
- Переменная
process.env.FIREBASE_CONFIG
env не имеет правильных значений.Свойства «databaseURL» и «storageBucket» - это не то, что я настроил для целевого использования - . Когда я использую
admin.database()
, он не использует правильный RTDB, который я создал, и который я хочуuse functions.storage.object().onFinalize()
не "смотрит" правильное ведро
Мой .firebaserc
файл
{
"projects": {
"default": "hatch-rpg",
"dev": "hatch-rpg"
},
"targets": {
"hatch-rpg": {
"hosting": {
"shadra": [
"shadra"
]
},
"database": {
"shadra": [
"hatch-shadra-dev"
]
},
"storage": {
"shadra": [
"hatch-shadra-dev"
]
}
}
}
}
Мой firebase.json
файл
{
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
},
"database": [
{ "target": "shadra", "rules": "database.rules.json" }
],
"functions": {
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
],
"source": "functions"
},
"hosting": [
{
"target": "shadra",
"public": "dist/shadra",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
}
],
"storage": [
{ "target": "shadra", "rules": "storage.rules" }
]
}
Я инициализирую Firebase следующим образом
admin.initializeApp(functions.config().firebase);
Чего мне не хватает?
Большое спасибо
РЕДАКТИРОВАТЬ: я пытался переопределить FIREBASE_CONFIGсделав firebase functions:config:set firebase.databaseURL="hatch-shadra-dev.firebaseio.com" firebase.storageBucket="hatch-shadra-dev"
, но это не сработало, потому что Invalid config name firebase.databaseURL, cannot use upper case.
затем попытался без прописных букв и получил Cannot set to reserved namespace firebase
Как я могу переопределить этот FIREBASE_CONFIG?или я просто не должен использовать его для инициализации firebase вручную?