Мои функции firebase работали нормально до прошлой ночи, но теперь перестали работать. Когда я запускаю свои функции, я получаю эту ошибку в журнале облачной платформы Google -
"Step #5 - "exporter": [31;1mERROR: [0mfailed to export: failed to write image to the following tags: [us.gcr.io/tookforms/gcf/us-central1/77926137-2972-4613-947e-c66d12cfd46f:calc_version-59: GET https://storage.googleapis.com/us.artifacts.tookforms.appspot.com/containers/images/sha256:b18e538d0dbca11a254142f571dfce8058959925b5e8c2c25679211b8b1bf0c6?access_token=REDACTED: unexpected status code 404 Not Found: <?xml version='1.0' encoding='UTF-8'?><Error><Code>NoSuchKey</Code><Message>The specified key does not exist.</Message><Details>No such object: us.artifacts.tookforms.appspot.com/containers/images/sha256:b18e538d0dbca11a254142f571dfce8058959925b5e8c2c25679211b8b1bf0c6</Details></Error>]" insertId: "3f132e37-fa6b-4f0a-8dc4-1244dca5a7a5-228"
Он говорит, что пытается загрузить какое-то изображение куда-нибудь на облачную платформу Google. Но я не имею отношения ни к какому изображению в моей функции. Я даже не понимаю, что именно здесь означает «изображение».
Это вторая ошибка, которую я получаю чуть ниже первой ошибки -
ERROR: build step 5 "us.gcr.io/fn-img/buildpacks/nodejs12/builder:nodejs12_20210310_12_21_0_RC00" failed: step exited with non-zero status: 246
Я попытался найти, что означает код состояния 246, но, по-видимому, это что-то сделано Google. Я не уверена.
Вот мой код функции -
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
exports.calc = functions.https.onCall(async (data, context) => {
console.info('hello');
});
Да. Вот что я делаю. У меня всего одна функция.
Не могли бы вы поделиться кодом функций?
Да, конечно. Я должен был сделать это при написании поста. Простите.
Ваша функция должна возвращать действительный ответ JSON, однако я сомневаюсь, что проблема здесь ... Правильно ли вы настроили облачные функции на панели управления firebase и проверили ли вы, что ваши учетные данные firebase указывают на правильный проект?
Да, уже раза три проверил. Я могу отлично использовать firestore, базу данных и аутентификацию в одном проекте. Это просто функции, которые не работают. Я даже попытался удалить папки модулей узлов, обновив все до последней версии. Снова установка узловых модулей. Я даже не совсем понимаю, какое сообщение об ошибке появилось в моей облачной консоли Google.
Если вы еще этого не сделали, убедитесь, что вы используете последнюю версию Firebase CLI, выйдите из системы и снова войдите в систему. Если вы уже сделали все это, попробуйте выполнить развертывание на другую версию узла и посмотрите, сохраняется ли ошибка (обновите номер в "engines": { "node": "12" }
внутри package.json
- другие допустимые версии - это 10
, который является стабильным, и 14
, который находится в предварительном просмотре на момент написания) .
Я решил проблему, удалив функцию с панели функций firebase, а затем повторно развернув.
Образ, скорее всего, относится к контейнеру, который он пытается записать на отсутствующий диск. Вы развертываете свои функции с помощью
firebase deploy --only functions
?