Сборка и управление зависимостями
Сервис Cloud Functions на этапе сборки автоматически устанавливает зависимости, необходимые для работы функции, во время создания новой версии функции.
Примечание
Для сборки устанавливается build tag ycf
.
Для этого Cloud Functions поддерживает два способа автоматического управления зависимостями - модули и утилита dep
.
mod
Модули - встроенный механизм управления зависимостями для языка Go
. Они являются основным и рекомендуемым способом управления зависимостями в сервисе Cloud Functions.
Для поставки зависимостей при помощи модулей следует загрузить файл go.mod
вместе с исходным кодом функции. При этом установятся последние версии указанных в этом файле пакетов, для явного указания версий следует также загрузить файл go.sum
.
Важно
Название модуля в файле go.mod
не должно быть main
.
dep
Dep - система управления зависимостями для языка Go
.
Для поставки зависимостей при помощи утилиты dep
следует загрузить файлы Gopkg.toml
и Gopkg.lock
вместе с исходным кодом функции. В этом случае непосредственно перед сборкой кода вызовется команда dep ensure
.
Примечание
Если среди файлов присутствует одновременно и go.mod
, и Gopkg.toml
, то работоспособность сборщика не гарантируется. Не рекомендуется использовать эти два файла одновременно.
Процесс установки зависимостей имеет ограничения по ресурсам и времени исполнения. Подробнее об этом читайте в разделе Квоты и лимиты. Ознакомиться с журналом установки зависимостей можно по ссылке, которая отображается в списке операций.