2017-11-03 4 views
0

constants.changed設定値がtrueに設定されている場合、firebaseでほとんど変更されない定数をいくつか維持してクラウド関数プロジェクト(プロジェクト-1)にロードしたいというユースケースがあります。次回のリクエスト実行中に、変更した定数でJSファイルを更新し、そのファイルのノードキャッシュを再ロードします(クラウド機能でfirebase.functionsの設定値を設定することはできますか?

delete require.cache[require.resolve('./constants.js')])。

また、ここでは、フラグconstants.changedfalseに再設定して、次のリクエストが本当に同じことをしないようにしたいとします。このようにして、ほとんど変更されない定数文書のために、各要求においてfirebaseを継続的に打つことを避けることができます。

私はこの設定を手動で設定できましたが、実際にこれらの定数を変更する別のシステム(クラウド機能プロジェクト[project-2])があります。それで、私はプロジェクト-2の雲の機能がfirebaseの雲機能の設定値constants.changedtrueに設定するようにしたいと思います。

私は蜃気楼の後を走っていますか?達成することさえ可能ですか?私はドキュメントをintにチェックしましたが、Configインターフェイスはそのような機能を公開していないようです!

+0

私はこのソリューションを試して、firebaseはファイルを上書きすることもできないようです!エラー:EROFS:読み取り専用ファイルシステム、 './constants.js'を開きます。 atエラー(ネイティブ) Object.fs.openSync(fs.js)でエラーが発生しました。 :641:18) at Object.fs.writeFileSync(fs.js:1347:33) ' – Phani

答えて

0

質問で私が言ったことを達成することはできません!

上記の要件のナレーションでは、2つの基本的な前提は考慮されません。

  1. 変更すると、その設定を使用するクラウド機能を変更して変更を有効にする必要があります。
  2. サーバー上で実行されているクラウド機能が読み取り専用ファイルシステムにあるようです。

上記の2つの制限の両方は、私が求めていることを達成することができません。しかし、それは機能(ホット展開!)を持っていいです

関連する問題