2017-10-11 91 views
1

我使用Travis自動部署Firebase託管的網站和雲功能,因爲我推送到GitHub,詳情如下here。但是,即使是我的雲網功能有限的小型網站,部署所有功能也需要相當長的時間。如果我手動部署,我將能夠使用--only來精確指定我實際更改的那些功能。有沒有辦法將這些信息提供給Travis,以便只重建必要的功能?Travis和Firebase:僅部署更改的功能

回答

2

不幸的是,這不是一件容易的事--Firebase CLI部署了所有的功能,因爲它幾乎不可能只分析代碼並找出哪些功能受到影響(因爲您可以要求其他文件,你可能已經更新了依賴關係,但沒有更改文件等)。

我可以想到的一件事可能是黑客可能會命名分支的功能或功能組。然後,您可以將git push添加到要部署的特定功能的分支,並使用腳本將分支名稱用作將--only functions:<fnName>傳遞給firebase deploy命令的信號。這不是最有魅力的解決方案,但是,取決於這個錯誤你有多大,這可能會有所幫助。

+0

開發人員無法識別提交註釋中的修改函數嗎?您可以從提交日誌中編寫相同的部署。 –

+0

我曾考慮過這個問題,但推送可能包含多個提交,並且感覺像試圖找出「自上次部署以來執行日誌,從所有提交中刪除函數名稱,部署它」變得越來越複雜/風險更大。 –

+0

這聽起來非常酷,如果這樣做,但確實越來越冒險。好決定! –