Closed4
Firebase FunctionのSecretを入力するコマンドを作りたい
FirebaseFunctionsを構築する際の環境変数のお話
昔は.env
を作成して自動で読み込んでもらうのが一般的だった
しかし、このやり方は最近非推奨で、SecretManagerで管理しましょうということに現在はなっている
新しい環境変数を登録する際はfirebase functions:secrets:set API_KEY
のように入力して設定を行う。
しかし、このコマンドが毎回長い&覚えにくいので、npm run registerSecret
みたいな感じにして、対話形式でKEYを入力→Valueを入力するフローにしたいなと思い立つ。
安直な方法を試すも失敗(昔はこれでもいけた気がする、、)
{
"name": "functions",
"scripts": {
"build": "tsc",
"watch": "tsc --watch",
+ "registerSecret" : "firebase functions:config:set"
}
npm run registerSecret
> registerSecret
> firebase functions:config:set
Error: Must supply at least one key/value pair, e.g. app.name="My App"
とりあえず以下のようにして対応した。(シェルスクリプトで書いちゃってもいいかもしれない)
{
"name": "functions",
"scripts": {
"build": "tsc",
"watch": "tsc --watch",
- "registerSecret" : "firebase functions:config:set"
+ "registerSecret" : "read -p 'Enter the secret KEY: ' secretName && firebase functions:secrets:set $secretName"
}
npm run registerSecret
> registerSecret
> read -p 'Enter the secret KEY: ' secretName && firebase functions:secrets:set $secretName
Enter the secret KEY: TEST_API_KEY
? Enter a value for TEST_API_KEY [hidden]
✔ Created a new secret version projects/XXXXXXXXXXXX/secrets/TEST_API_KEY/versions/1
このスクラップは4ヶ月前にクローズされました