Jak wdrożyć niektóre funkcje w Cloud Functions for Firebase bez wpływania na inne funkcje?

112

Kiedy biegnę

firebase deploy --only functions

czyta index.jsplik i aktualizuje wszystkie funkcje wyeksportowane z tego pliku. Jeśli w poprzednim wdrożeniu była funkcja o nazwie a, aw bieżącym wdrożeniu nie ma takiej funkcji, azostanie usunięta.

Innymi słowy, efekt jest taki sam, jakby wszystkie istniejące funkcje zostały usunięte, a następnie index.jsdodano wszystkie funkcje z bieżącego pliku.

Czy można dodawać / aktualizować / usuwać poszczególne funkcje?

Randy Sugianto „Yuku”
źródło

Odpowiedzi:

234

Narzędzia Firebase CLI 3.8.0 dodały możliwość wdrażania określonych funkcji.

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)"
Randy Sugianto „Yuku”
źródło
Czy to nadal działa? Pojawia się błąd, kiedy próbuję to teraz, ale kiedyś działało
Marcos Pereira,
3
Uwaga: nie umieszczaj spacji po przecinku wdrażanie bazy ogniowej - tylko funkcje: func1, functions: func2
The Black Horse
5
Na razie wygląda na to, że powinno to być wdrażanie firebase - tylko "funkcje: func1, functions: func2"
Sergey Mell
A co z aktualizacją wewnętrznej funkcji pomocniczej lub zmiennej?
Wydaje
Poświęciłem godzinę, aby rozpoznać, dlaczego wielokrotne wdrażanie przestało działać. dziękuję @SergeyMell za wspomnianą ucieczkę cytatu.
Oleg Bondarenko
53

Poniższy sposób zadziałał w przypadku mnie, aby wdrożyć określoną funkcję bez wpływu na moje inne funkcje, gdzie „specificFunctionName” to funkcja, którą chciałem wdrożyć

firebase deploy --only functions:specificFunctionName
Arjun
źródło
7

firebaser tutaj

Obecnie nie ma możliwości wdrożenia pojedynczej funkcji za pomocą interfejsu wiersza polecenia Firebase. Uruchomienie firebase deployspowoduje wdrożenie wszystkich funkcji.

Niedawno omawialiśmy wdrażanie podzbiorów funkcji, ale obecnie nie jest to dostępne - nie możemy też dać poglądu, czy / kiedy to może być.

Aktualizacja Od czasu wydania interfejsu wiersza polecenia Firebase możliwość wdrażania pojedynczych funkcji jest dostępna. Zobacz odpowiedź Yuku .

Frank van Puffelen
źródło
Hej ! Jest już dostępny: D
Dam
To rzeczywiście jest Dam. Dlatego odpowiedź yuku jest bardziej przychylna i akceptowana. :-)
Frank van Puffelen
1
Ten świat jest tak niesamowity 😊
Dam,