2017-10-11 2 views
1

Ich verwende Travis, um meine von Firebase gehosteten Website- und Cloud-Funktionen automatisch zu implementieren, wenn ich nach GitHub drücke, wie ausführlich beschrieben here. Aber selbst für meine kleine Website mit einer begrenzten Anzahl von Cloud-Funktionen dauert die Bereitstellung aller Funktionen ziemlich lange. Würde ich manuell bereitstellen, könnte ich --only verwenden, um genau die Funktionen zu spezifizieren, die ich tatsächlich geändert habe. Gibt es eine Möglichkeit, diese Informationen Travis zur Verfügung zu stellen, damit nur die notwendigen Funktionen neu aufgebaut werden?Travis und Firebase: Nur geänderte Funktionen bereitstellen

Antwort

2

Leider wird dies nicht einfach sein - das Firebase CLI nutzt alle Ihre Funktionen, da es nahezu unmöglich ist, den Code zu analysieren und herauszufinden, welche Funktionen betroffen sind (da Sie andere benötigen können) Dateien, möglicherweise wurden Abhängigkeiten aktualisiert, aber keine Dateien geändert usw.).

Eine Sache, die ich denken könnte, wäre ein Hack wäre, Zweige für Funktionen oder Gruppen von Funktionen benannt zu haben. Dann könnten Sie git push an den Zweig der spezifischen Funktion, die Sie bereitstellen möchten, und ein Skript, das den Zweigname als Signal verwendet, um den --only functions:<fnName> an den firebase deploy Befehl übergeben. Das ist nicht die glamouröseste Lösung, aber je nachdem, wie sehr es Sie nervt, könnte es helfen.

+0

Konnte der Entwickler die geänderten Funktionen im Commit-Kommentar nicht identifizieren? Sie könnten die gleiche Bereitstellung dann aus dem Commit-Protokoll scripten. –

+0

Ich habe darüber nachgedacht, aber ein Push kann mehrere Commits enthalten, und es fühlt sich an, als ob es immer komplexer/riskanter wird, herauszufinden, "seit der letzten Bereitstellung ein Protokoll zu machen, Funktionsnamen aus allen Commits zu scrappen, zu deployen". –

+0

Es klingt unglaublich cool, wenn es das tun würde, aber in der Tat zunehmend riskant. Guter Anruf! –

Verwandte Themen