как использовать облачную функцию firebase pubsub.schedule? - PullRequest
2 голосов
/ 19 апреля 2019

Сегодня появилась новая функция Cloud Functions for Firebase, которая запускает функции по расписанию. Поэтому я попытался проверить пример кода.

index.js file

exports.scheduledFunction = functions.pubsub.schedule(‘every 5 minutes’).onRun((context) => {
  console.log(‘This will be run every 5 minutes!’);
});

Но когда я попытался развернуть это, я получил следующее сообщение об ошибке:


Error: Error occurred while parsing your function triggers.

TypeError: functions.pubsub.schedule is not a function

Моя версия Firebase Tools - 6.7 (обновлено сегодня)

Какое решение?

Я проверил пример кода git здесь (https://github.com/firebase/functions-samples/blob/master/delete-unused-accounts-cron/functions/index.js)

Но это также вызывает ту же ошибку:

functions.pubsub.schedule не является функцией

Может кто-нибудь помочь мне с этой проблемой?

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

exports.scheduledFunction = functions.pubsub.schedule('every 5 minutes').onRun((context) => {
   console.log('This will be run every 5 minutes!');
});

Ответы [ 3 ]

11 голосов
/ 19 апреля 2019

В сообщении в блоге указывается, что версия модуля firebase-functions также должна быть не ниже 2.3.0. Запустите npm install firebase-functions@latest в папке функций, чтобы обновить его, затем соберите и разверните снова.

0 голосов
/ 31 мая 2019

Вот документация https://firebase.google.com/docs/functions/schedule-functions

export const scheduledFunction = functions.pubsub.schedule('every 5 minutes')
.timeZone('Asia/Jakarta')
.onRun((context) => {
    console.log('This will be run every 5 minutes!');
});

И вы можете установить timeZone как дополнительный

0 голосов
/ 02 мая 2019

У меня была такая же проблема.

Мне пришлось обновить firebase-tools до версии ^6.7.2. Я также обновил firebase-functions, но это само по себе не сделало работу. Поэтому я бы обновил все зависимости firebase (firebase-tools / admin / functions).

...