Variables de entorno en Firebase Functions

Si eres de los que utiliza Cloud Functions for Firebase en sus proyectos o hacks de fin de semana, seguramente te has topado con la necesidad de incluir una API Key para así poder comunicar tu aplicación con algún servicio de un tercero (Bitly, Instagram, etc). Y si este no es tu caso, seguramente lo será.

Colocarlas en tu código — “hardcodearlas” — no es buena práctica e incluirlas en tu directorio ignoradas con .gitignore, en mi opinión, no es lo ideal porque si te equivocas podrías subirlas a tu repositorio y, si este es público, tendrías un gran dolor de cabeza. Por fortuna, la gente de Firebase pensó en todo — o casi todo — e incluyó una sencilla solución en su CLI.

Paso 1

Antes de poder utilizar una variable de entorno en tu aplicación, es necesario definirla en Firebase. Para ello, nos ubicamos en el directorio local de nuestra aplicación — donde tenemos nuestro firebase.json — y escribimos el siguiente comando en nuestra terminal:

firebase functions:config:set

Dicho comando lo utilizamos de la siguiente manera:

Paso 2

Una vez definida tu variable, es momento de verificar que todo haya salido como se esperaba, es decir, confirmar que la variable esté en Firebase. Eso lo hacemos con la ayuda del comando:

firebase functions:config:get

Luego de ejecutarlo, deberías tener la siguiente respuesta:

Paso 3

Ya tu variable está lista para ser utilizada en tu aplicación, así que es momento de hacerlo:

¿Y si quiero borrar una variable?

Fácil, sólo ejecutas este comando y listo:

firebase functions:config:unset variable

Si te gustó o resultó útil, no dudes en compartirlo y darle ❤️ para que todos aprendan este truco. Y si odiaste esta publicación, cuéntame para hacerlo mejor la próxima vez.