Closed4

Firebase FunctionのSecretを入力するコマンドを作りたい

ようかんようかん

新しい環境変数を登録する際は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ヶ月前にクローズされました