Определение, какая команда скрипта npm была запущена - PullRequest
0 голосов
/ 12 апреля 2020

У меня есть файл индекса. js, который можно запустить с помощью следующих сценариев:

  "scripts": {
    "lint": "eslint .",
    "serve": "firebase emulators:start --only functions",
    "inspect": "firebase emulators:start --inspect-functions",
    "deploy": "firebase deploy --only functions",
  },

Есть ли способ определить, какая команда была выполнена в файле индекса. js, чтобы я мог правильно инициализировать метод?

index. js

// if serve cmd
admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: 'https://server.firebaseio.com'
});
//if deploy cmd
admin.initializeApp();

1 Ответ

0 голосов
/ 12 апреля 2020

NPM устанавливает несколько переменных среды при запуске скриптов, включая npm_lifecycle_event. Это предназначено для выяснения, запущен ли скрипт pre или post, но также может использоваться для ваших целей:

if (process.env.npm_lifecycle_event === "serve") {
  admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),
    databaseURL: 'https://server.firebaseio.com'
  });
} else {
  admin.initializeApp();
}
...