Команды ebextensions для конкретной среды

У меня есть приложение весенней загрузки, для которого мне нужно указать сервер и порт графита (для отправки метрик). Чтобы это работало, я должен установить и настроитьstatsd, Я делаю это, используяebextensions файл.

commands:
  01_nodejs_install:
    command: sudo yum -y install nodejs npm --enablerepo=epel
    ignoreErrors: true

  02_mkdir_statsd:
    command: mkdir /home/ec2-user/statsd
    ignoreErrors: true

  03_fetch_statsd:
    command: git clone https://github.com/etsy/statsd.git /home/ec2-user/statsd
    ignoreErrors: true

  04_change_example_config:
    command: "cat exampleConfig.js | sed 's/2003/<graphite-port>/g' | sed 's/graphite.example.com/<my-graphite-server>/g' > config.js"
    cwd: /home/ec2-user/statsd

  05_run_statsd:
    command: setsid node stats.js config.js >/dev/null 2>&1 < /dev/null &
    cwd: /home/ec2-user/statsd

Проблема с этой конфигурацией состоит в том, что я могу указать здесь только 1 графитовый сервер для всех сред.

Поэтому я решил переместить команды 04 и 05 вcontainer_commands, Я думаю об определении переменной среды под названиемENV_NAME используя консоль beanstalk / пользовательский интерфейси установите его вdev, qa, или жеprod в соответствии с окружающей средой. Тогда я могу использоватьtest вариантcontainer_commands запускать команды 04 и 05 только для конкретной среды на основе этогоENV_NAME.

Итак, моя проблема - как я могу использовать консоль AWS для определения переменной среды? Я попытался использовать консоль Benastalk для определения моей переменной, как описано в документацииВот но это не сработало. Я такженайденный (см. ответ с 5 ответами), что этот метод устанавливает только свойства JVM, а не переменные ENV.

Я не могу определить переменную среды, используяebextensions потому что тогда у меня будет та же проблема - я не могу определить разные переменные env для разных envs :)

Так что мне нужна помощь с:

УстановитьENV_NAME переменная окружения с использованием beanstalk UI.

Или же

Предложите способ использованияENV_NAME системное свойство вcontainer_commands обусловить, следует ли запускать команду на основе значенияENV_NAME.

И если вы знаете более простой / лучший способ указать разные серверы Graphite для разных сред, пожалуйста, не стесняйтесь.

Ответы на вопрос(3)

Ваш ответ на вопрос