Как правильно настроить несколько сред в Google Cloud Build

# #c# #mongodb #google-cloud-build

Вопрос:

Я не смог найти никакой информации о том, как правильно настроить несколько сред в настройках Google Cloud. Недавно я создал 3 различных среды для своего API, который взаимодействует с экземпляром MongoDB. На моем сервере MongoDB есть 3 разные базы данных, каждая из которых соответствует среде, которую я хочу использовать. Моя цель-заполнить строки подключения базы данных к моему MongoDB при сборке с помощью функции Google Cloud Build.

На стороне кода у меня есть репозиторий Git с 3 отдельными ветвями (dev, qa и prod). В настоящее время эти ветви развертываются отдельно за счет использования отдельных триггеров при настройке непрерывной сборки в Google Cloud, и эта часть работает идеально. Однако, если я не смогу заставить каждую среду использовать указанную базу данных, наличие 3 разных сред бессмысленно.

Чтобы быть кратким, мне нужна некоторая информация о том, как добавить подключение к базе данных (в частности, к базе данных MongoDB, но пример любой строки подключения поможет мне начать) в непрерывную сборку Google Cloud Build при ее запуске.

В качестве примечания я видел много информации о развертывании Azure по использованию встроенных переменных среды для создания приложения c# в различных определениях сборки, которые вы можете настроить в VS, но я не видел такой же функциональности в Google Cloud или, по крайней мере, недостаточно очевидной для меня, чтобы понять это.

Благодарим вас за любую информацию или помощь, которую вы можете предоставить!

Комментарии:

1. Как насчет концепции замены «облачных сборок»?.. см.: cloud.google.com/build/docs/configuring-builds/…

2. Я прочитал почти всю документацию, которую я могу найти в отношении облачной сборки, включая эту. Однако, если на этой странице есть что-то, что особенно полезно для моей проблемы, я либо слишком туп, либо слишком слеп, чтобы это увидеть. Если вы понимаете, как это можно использовать либо во время сборки yaml для настройки строки подключения к моей базе данных, либо если вы видите там конкретную переменную, которая могла бы помочь, пожалуйста, уточните =/

3. Спасибо за настойчивость в этом вопросе. Ты совсем не тупой 🙂 Похоже, что облачная сборка позволяет использовать переменные среды «время сборки» или другие динамические свойства, используя концепцию, которую они называют «заменами». Я предполагал, что вы можете использовать их для передачи параметров или флагов в сборку, чтобы указать сборке нужный тип сборки … или передайте параметры подключения. Может быть, использовать триггер «$BRANCH_NAME» в качестве выражения для выбора строки подключения к вашей базе данных?