Как использовать конфигурацию среды выполнения gcloud из движка приложения или платформы kubernetes? - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть некоторый общий код, который я развертываю для функций firebase, а также для ядра приложения и платформ kubernetes через образ докера.

Для функций есть functions.config(), чтобы получить конфигурацию времени выполнения gcloud, где я храню некоторые API-ключи, которые различаются в средах разработки и производства.

Это удобно, так как избавляет вас от необходимости копировать одни и те же переменные env в несколько файлов конфигурации, как в противном случае я делал бы с app.yaml или конфигами развертывания kubernetes.

Есть ли простой способ получить конфигурацию времени выполнения с этих платформ? Существует API для отдыха, но я предполагаю, что он предназначен для задач администратора. Использование его в моем приложении означало бы необходимость иметь дело с асинхронными вызовами и аутентификацией перед выполнением кода, который зависит от конфигурации, поэтому я не думаю, что это приемлемый вариант.

1 Ответ

0 голосов
/ 15 мая 2018

Вы можете окончательно перейти на RuntimeConfig [1], установив переменную на уровне проекта, а затем получить их с помощью метода projects.configs.get через API или команду Gcloud [2]. Вы можете сделать это с самой платформы, но сначала вы должны аутентифицировать себя.

Требуется одна из следующих областей OAuth: https://www.googleapis.com/auth/cloud-platform https://www.googleapis.com/auth/cloudruntimeconfig

[1] https://cloud.google.com/deployment-manager/runtime-configurator/reference/rest/v1beta1/projects.configs

[2] https://cloud.google.com/deployment-manager/runtime-configurator/set-and-get-variables

...