Как я могу иметь отдельные API для промежуточных и производственных сред на Heroku? - PullRequest
0 голосов
/ 10 ноября 2018

Я просто проверял, как работают трубопроводы в Heroku. Я хочу, чтобы промежуточные и рабочие приложения были одинаковыми, за исключением того, что они должны иметь доступ к различным конечным точкам API.

Как мне этого достичь?

1 Ответ

0 голосов
/ 10 ноября 2018

Heroku поощряет получение конфигурации из среды :

Одно приложение всегда работает в нескольких средах , в том числе, по крайней мере, на вашей машине для разработки и в производстве на Heroku. Приложение с открытым исходным кодом может быть развернуто в сотнях различных сред.

Хотя все эти среды могут выполнять один и тот же код, они обычно имеют специфичные для среды конфигурации . Например, в промежуточной и рабочей средах приложения могут использоваться разные сегменты Amazon S3, а это означает, что для этих сегментов им также нужны разные учетные данные .

Конфигурация приложения для конкретной среды должна храниться в переменных среды (а не в исходном коде приложения). Это позволяет вам изменять конфигурацию каждой среды изолированно и предотвращать сохранение защищенных учетных данных в системе контроля версий. Подробнее о хранении конфигурации в среде.

На традиционном хосте или при локальной работе вы часто устанавливаете переменные среды в файле .bashrc. На Heroku вы используете config vars .

В этом случае вы можете использовать переменную среды с именем API_BASE, которая устанавливается на базовый URL-адрес вашего промежуточного API на вашем промежуточном экземпляре и на базовый URL-адрес вашего производственного API в рабочей среде.

Как именно вы читаете эти значения, зависит от технологии, которую вы используете, но если вы ищете «переменные среды» в документации вашего языка, вы сможете начать.

...