Ответ: переменные среды.
В частности, используя компьютер с установленными браузером и инструментами Firebase, запустите firebase login:ci --no-localhost
и вставьте полученный ключ из инструмента CLI firebase в переменную среды и назовите ее FIREBASE_TOKEN (не $FIREBASE_TOKEN).
В вашем развертывании скажем
npm install -g firebase-tools
firebase deploy
Сделанный. Если вас волнует Почему? Читать дальше.
README репозитория firebase/firebase-tools указывает следующее относительно использования с системами CI< /а>.
Интерфейс командной строки Firebase требует браузера для завершения аутентификации, но он полностью совместим с CI и другими безголовыми средами.
На компьютере с браузером установите интерфейс командной строки Firebase. Запустите firebase
login:ci
, чтобы войти в систему и распечатать новый токен доступа (текущий сеанс CLI не будет затронут).
ПРИМЕЧАНИЕ. На самом деле вы хотите ввести firebase login:ci --no-localhost
Сохраните выходной токен безопасным, но доступным способом в вашей системе CI. Есть два способа использовать этот токен при выполнении команд Firebase:
Сохраните токен как переменную среды FIREBASE_TOKEN, и он будет использоваться автоматически. Запустите все команды с флагом --token <token>
в вашей системе CI.
- ???? ПРИМЕЧАНИЕ. Вы ДОЛЖНЫ поместить свой токен в кавычки IIF, используя флаг --token.
???? ????БОЛЬШОЕ ПРИМЕЧАНИЕ НЕ добавляйте к переменной окружения префикс $, иначе вы получите бессмысленное сообщение об ошибке ниже!!!
Your CLI authentication needs to be updated to take advantage of new features.
Please run firebase login --reauth
Error: Command requires authentication, please run firebase login
Приоритет загрузки токена следующий: флаг, среда переменная, активный проект.
???? Рекомендуется использовать переменную среды, чтобы секретный токен не сохранялся/не отображался в журналах.
person
Ronnie Royston
schedule
16.05.2017