acabo de ver que tenemos Cloud Functions de segunda generación que se ve muy bien: https://cloud.google.com/functions/docs/2nd-gen/overview
Pero, ¿cómo puedo cambiar mi función de 1.ª generación para que sea de 2.ª generación? Veo que puedo crear una nueva función como segunda generación como esta :
const functions = require('@google-cloud/functions-framework'); functions.http('helloHttp', (req, res) => { res.send(`Hello ${req.query.name || req.body.name || 'World'}!`); });pero ¿qué pasa con las funciones antiguas? ¿Hay alguna manera o tendré que eliminarlos y volver a crearlos uno por uno?
Cloud Function Gen2 solo está disponible para el producto Cloud Functions, no para las funciones de Firebase.
Las funciones de Firebase usan la biblioteca firebase-functions mientras que Cloud Functions usa @google-cloud/functions-framework .
Desde la consola de Google Cloud, ambas funciones aparecerán iguales, pero si intenta implementar una función de nube gen2 sobre una función de nube gen1, recibirá el siguiente error:
Failed to create function, function projects/[PROJECT_NUMBER]/locations/[LOCATION]/functions/[FUNCTION_NAME] already exists under 'Gen 1' environment. Please delete conflicting function first or deploy the function with a different name.
Deberá migrar completamente de las funciones de Firebase a las funciones de Cloud Functions gen2 recién creadas.