- Я использую облачную функцию Google, используя Python. Несколько других функций находятся в производстве.
- Однако для этого я дополнительно создал пользовательский пакет Python, который доступен на github как личное репо.
- Мне нужно установить пакет в функции Google
ЧТО Я СДЕЛАН *
- Я запускаю функцию Google локально, используя
functions-framework
- I есть файл require.txt, в котором есть ссылка на пакет. Это можно сделать, добавив следующую строку в
requirements.txt
:
-e git+https://github.com/<repo>/<project>#egg=<project>
Я бегу
pip install -r requirements.txt
. И пакет успешно установлен. Теперь в коде python функции, использующей
import <pkg-name>
, работает, и я могу получить доступ ко всем функциям.
ВЫЗОВЫ, КОГДА НАЖМИТЕ ФУНКЦИЯ К ОБЛАКУ
- Согласно документации, чтобы pu sh Облачная функция для Google Cloud, я выдаю команду:
gcloud functions \
deploy <function-name> \
--trigger-http \
--entry-point <entry-function> \
--runtime python37 \
--project=<my-project>
Как и ожидалось это дает ошибку, потому что у него нет доступа к закрытому репо в git.
Я создал облачный репозиторий Google и связал его с репозиторием git, надеясь, что каким-то образом смогу указать это в файле require.txt. Просто не знаю как.
Я попытался установить переменные среды для имени пользователя и пароля (не очень хорошая идея, я согласен) в Google Cloud Function и указать их в requirements.txt
как:
-e git+https://${AUTH_USER}:${AUTH_PASSWORD}@github.com/<repo>/<project>#egg=<project>
Это тоже дало ошибку.
Любая помощь или направление будут с благодарностью.