Облачные функции Google: макет проекта для публикации на Github - PullRequest
0 голосов
/ 18 декабря 2018

Я начинаю с Google Cloud Functions и хочу использовать настоящий редактор + github вместо встроенного редактора.

Для существующего проекта Google App Engine Flex (php) я изменилэто так, что он публикует на PubSub некоторые данные о пользователе.

Я хочу написать набор функций:

  • Одна функция, которая обновляет BigQuery, и публиковать в теме, что пользовательданные были обновлены
  • Подписан на это обновление: по запросу в BigQueries будут выполняться несколько функций и сохраняться результат в Firebase (для мобильного приложения для отображения статистики данных)

ЗдесьВот несколько основных вопросов, на которые я не смог найти ответа:

  • Как мне организовать свой проект?Каков ожидаемый макет, чтобы GCP мог получить проект из github и запустить его?
  • [Необязательно] Могу ли я иметь несколько файлов для одной функции для организации своего кода?

Я нашел это: https://github.com/PrinceCornNM/generator-firebase-cloud-functions, но я также читал, что функция для firebase была как-то несовместима с сообщением stackoverflow.

1 Ответ

0 голосов
/ 21 декабря 2018

Вот как я это сделал:

Настройка репозитория Github

  • Создание репозитория в Githup, извлечение из моей IDE
  • Создайте папку с именем функции 'processNewTroncQueteur'
  • Создайте package.json и index.js в этой папке и скопируйте содержимое моей рабочей функции из Google Cloud Function
  • Commit

Проверьте мой репозиторий в качестве примера: https://github.com/dev-mansonthomas/RedCrossQuestCloudFunctions

Синхронизируйте мой репозиторий Github с Google Source Control

  • Перейдите к https://source.cloud.google.com/
  • «Новый репозиторий», «Подключить внешний репозиторий»
  • Выберите свой проект GCP, затем выберите github, установите флажок для подтверждения и нажмите «Подключиться к GitHub» (следуйте инструкциям)
  • Выберите проект на GitHub и нажмите «Подключить выбранный репозиторий»

(мне пришлось попробовать дважды, в первый раз, когда я получил ошибку без подробностей)

Создание облачной функции из системы управления версиями

  • Перейдите к https://console.cloud.google.com/functions/
  • Новая функция
  • Выберите имя, память, триггер, время выполнения и регион (дополнительно)
  • Выберите «Хранилище источника облака»"для" Исходный код "
  • Репозиторий: скопируйте / вставьте имя репо из" Google Cloud Repository ", его можно найти в верхнем левом углу экрана, когда вы находитесь в репо.Для меня это: github_dev-mansonthomas_RedCrossQuestCloudFunctions
  • Я использовал, Branch / Master
  • Каталог с исходным кодом: название папки 'processNewTroncQueteur'
  • Функция для выполнения: 'processNewTroncQueteur'
  • Создать, и я проверил это, и он работает.
...