Я пытаюсь выполнить следующую команду firebase deploy и получаю следующую ошибку:
Error: Authorization failed. This account is missing the following required permissions on project ID project:
cloudfunctions.functions.create
cloudfunctions.functions.delete
cloudfunctions.functions.get
cloudfunctions.functions.list
cloudfunctions.functions.update
cloudfunctions.operations.get
firebase.projects.get
firebasehosting.sites.update
У меня есть все доступы. Я работаю с angular 6.
Я должен упомянуть, что этот проект нормально работал в предыдущем проекте в Firebase. Я создал новый, и я хочу перенести содержимое предыдущего в этот новый, и тут проблема началась.
Я также должен упомянуть, что до того, как я был авторизован с другим пользователем.
Любые идеи?





Если вы создали свой проект в учетной записи веб-сайта fireabse, во время развертывания firebase нам нужно выбрать этот проект firebase для хостинга. Также, если вы создали более одного проекта в учетной записи firebase, нам нужно выбрать один проект для процесса развертывания. Для этого вам нужно запустить следующую команду.
firebase use --add
В нем будет перечислено несколько проектов, и вы можете выбрать один из этого варианта. Затем запустите firebase deploy.
У меня возникла эта проблема, потому что я создал и использовал псевдоним с firebase use --add, а затем вручную удалил его с .firebaserc. Решением было запустить firebase use $alias, где $alias - это псевдоним вашего проекта. Например: firebase use default
Выполните следующие шаги:
проекты firebase: список
Результат :
┌──────┬───────────────────────┬─────────────┐
│ Name │ Project ID / Instance │ Permissions │
├──────┼───────────────────────┼─────────────┤
│ itest │ chrome-epigram-510 │ O │
└──────┴───────────────────────┴─────────────┘Используйте команду:
firebase использовать хром-эпиграмма-510
Результат: Теперь использую проект хром-эпиграмма-510
Используйте команду
firebase развернуть
Результат === Развертывание на "хром-эпиграмма-510" ...
i deploying hosting
i hosting[chrome-epigram-510]: beginning deploy...
i hosting[chrome-epigram-510]: found 9 files in dist/icrm
+ hosting[chrome-epigram-510]: file upload complete
i hosting[chrome-epigram-510]: finalizing version...
+ hosting[chrome-epigram-510]: version finalized
i hosting[chrome-epigram-510]: releasing new version...
+ hosting[chrome-epigram-510]: release complete
+ Deploy complete!
URL хостинга: https://chrome-epigram-510.firebaseapp.com
Я также столкнулся с той же проблемой, но я вышел из системы, а затем снова вошел в систему, теперь она работает нормально
для выхода из командной строки firebase logout
чтобы снова войти в систему, введите firebase login
в моем случае я получал следующее:
> firebase deploy
Error: Authorization failed. This account is missing the following required permissions on project deploy:
firebase.projects.get
firebasehosting.sites.update
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] deploy: `firebase deploy`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] deploy script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/beeeep/.npm/_logs/2099-98-95T09_97_94_392Z-debug.log
Похоже, причина в этом: я однажды развернул его, затем удалил файл .firebaserc перед тем, как отправить его на github. Потом попробовал еще раз развернуть.
Решил это, выполнив firebase use --add и выбрав желаемый проект firebase. Что снова создало файл .firebaserc. Угадайте, что сообщение об ошибке здесь вводит в заблуждение.
Для меня это было связано с тем, что у меня было несколько сайтов. Я изменил название проекта, а не название сайта, поэтому у меня не было разрешений.
Ваш файл .firebaserc указывает на "проект" в Firebase.
{
"projects": {
"default": "my-project"
}
}
Хотя файл firebase.json указывает на "сайт" в Firebase.
{
"hosting": {
"site": "my-site"
}
}
Это случалось со мной несколько раз, но всегда потому, что я был
по какой-то причине firebase добавила несколько цифр после имени моего проекта ... возможно, его имя уже используется