EB Развертывание в нескольких средах

У меня есть одна и та же база кода (один репозиторий git), который я хочу загрузить в несколько окружений эластичных beanstalk. Есть ли способ сделать это, и если да, то как мне настроить мой репозиторий таким образом, чтобы я мог использовать несколько сред?

Среда - это разные языковые версии сайта, которые я хочу запускать на разных сайтах. Язык задается параметрами среды.

Ответ 1

Чтобы ответить на мой собственный вопрос. AWS EB CLI 3+ имеет приятный интерфейс для развертывания в нескольких средах. Если вы добавите другую среду в свое приложение, вы можете просто установить ее с помощью

eb deploy <environment-name>

Ответ 2

Вы можете сделать так, чтобы eb cli ссылался на разные среды из разных веток, добавив config, как показано ниже, в ваш файл .elasticbeanstalk/config.yml:

branch-defaults:
  master:
    environment: staging
  production:
    environment: production

В этом примере, когда вы запускаете eb deploy из master ветки, он развертывается в вашей среде с именем "staging", тогда как когда вы запускаете его из production ветки, он развертывается в вашей среде с именем "production".

Этот подход не позволяет использовать одну ветку в нескольких средах; см. ответ @adnan: fooobar.com/questions/987372/...

Ответ 3

Если вы укажете метку версии, вы можете использовать эту версию в других командах eb deploy:

eb deploy my-first-env -l version-1 && eb deploy my-second-env --version version-1