Нет, у вас нет такой функции в Cloud Function. У меня есть 3 немедленных альтернативы
- Используйте Cloud Run и создайте свой собственный базовый образ с необходимыми зависимостями / общим фрагментом кода
- Упакуйте общий код в библиотеку, которую вы импортируете в каждой вашей функции. Но для этого требуется опубликовать sh вашу библиотеку где-нибудь publi c или закрытую с дополнительной работой в упаковке и развертывании функций.
- Используйте такую структуру проекта (я обычно использую это)
Дерево проекта
root
|
- Common
|
- Functions
|
- function A
|
- function B
В функциях A и B вы используете общий файл в каталоге Common. Когда вы развертываете свою функцию, сделайте это в каталоге root
и используйте исходный каталог, чтобы указать, в каком каталоге искать функцию для развертывания
gcloud functions deploy --source=function/functionA ...
Trade Off
- Копируются все файлы / каталоги по пути root. Все файлы функций развернуты, даже если эффективно запущен только один
- Вы должны объявить все зависимости на уровне functionX. Даже зависимости для общего каталога. Это может быть проблемой c в случае новых зависимостей в общем каталоге и если у вас много функций