I have two firebase projects, one for development (project-dev) and one for production (project-prod).
I initialized firebase CLI for writing and deploying cloud functions linked to project-prod. Then I ran firebase use --add and added project-dev so that I can deploy the same function to both projects; I don't want to rewrite the same function twice.
At this point, I faced the problem. Into the function, I have to write something to the realtime database, but when I deploy the function to project-dev it writes to project-prod's database.
What I want to achieve is that the function has to refer to the database of the project that it is deployed to. So that I have one function and when it is deployed to project-dev it writes to project-dev's database and when it is deployed to project-prod it writes to project-prod's database.
Is it possible to achieve that? If not, what's the way to go?
EDIT
Function code:
exports.AddOrders= functions.https.onRequest(async (req, res) => {
async function addOrder(key, value) {
var ref = app.database().ref("/orders");
return ref.child(key).set(value);
}
var orders = req.body['orders'];
var promises = [];
for (var key in orders) {
promises.push(addOrder(key, orders[key]));
}
Promise.all(promises).then(
_ => {
res.sendStatus(200);
return null;
}
).catch(err => {
res.send(err);
})
});
(This function works fine, the problem is that it writes on the wrong database)