146 votes

Comment déployer certaines fonctions vers Cloud Functions for Firebase sans affecter d'autres fonctions ?

Quand je cours

firebase deploy --only functions

il lit le index.js et met à jour toutes les fonctions exportées depuis ce fichier. Si, lors du déploiement précédent, il existait une fonction nommée a et dans le déploiement actuel, cette fonction n'existe pas, a sera supprimé.

En d'autres termes, l'effet est le même que si toutes les fonctions existantes étaient supprimées et qu'ensuite toutes les fonctions de l'interface courante de l'entreprise étaient supprimées. index.js ont été ajoutés.

Est-il possible d'ajouter/mettre à jour/supprimer des fonctions individuelles ?

307voto

yuku Points 15705

Les outils Firebase CLI 3.8.0 ont ajouté la possibilité de déployer des fonctions spécifiques.

firebase deploy --only functions:func1,functions:func2

--only <targets>     
only deploy to specified, comma-separated targets (e.g. "hosting,storage"). For functions, 
can specify filters with colons to scope function deploys to only those functions (e.g. "--only functions:func1,functions:func2"). 
When filtering based on export groups (the exported module object keys), use dots to specify group names 
(e.g. "--only functions:group1.subgroup1,functions:group2)"

0 votes

Est-ce que ça marche encore ? J'obtiens une erreur quand j'essaie maintenant, mais ça marchait avant.

4 votes

Veuillez noter : ne pas mettre d'espace après une virgule firebase deploy --only functions:func1,functions:func2

10 votes

Pour l'instant, il semble que cela devrait être firebase deploy --only "functions:func1,functions:func2"

72voto

Arjun Points 93

La méthode suivante a fonctionné pour moi afin de déployer une fonction particulière sans affecter mes autres fonctions, où "specificFunctionName" est la fonction que je voulais déployer

firebase deploy --only functions:specificFunctionName

8voto

Frank van Puffelen Points 16029

firebaser ici

Il n'y a actuellement aucun moyen de déployer une fonction unique avec le CLI de Firebase. L'exécution de `firebase deploy` déploiera toutes les fonctions.

Nous avons récemment discuté du déploiement de sous-ensembles de fonctions, mais il n'est pas disponible pour le moment - et nous ne pouvons pas non plus donner une estimation de la date à laquelle il pourrait l'être.

Mise à jour Depuis la version CLI de Firebase, la possibilité de déployer des fonctions uniques est disponible. Voir La réponse de yuku .

0 votes

Hé ! C'est disponible maintenant :D

0 votes

C'est en effet Dam. C'est pourquoi la réponse de yuku est la plus votée et acceptée :-)

2 votes

Ce monde est tellement génial de cette façon

3voto

David Points 11
firebase deploy --only "functions:<fileName>.<functionName>"

exemple de structure de dossier :

functions 
  node_modules
  index.js
  smsNotification.js
  ...

Vous pouvez redéployer juste une fonction dans un fichier avec

firebase deploy --only "functions:smsNotification.sendChatNotif"

Vous pouvez redéployer toutes les fonctions dans un fichier avec

firebase deploy --only "functions:smsNotification"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X