Что я хочу сделать, так это настроить мой travis.yml для использования соответствующих названных окружений, основанных на том, какая ветка строится.Трэвис: Можете ли вы построить env var, используя другие env vars?
Я имею в виду вдоль линии, если я хранится в Трэвис $ DEV_ARTIFACTS_KEY/$ TEST_ARTIFACTS_KEY и т.д.
Тогда я нажимаю на DEV ветви, так что $ TRAVIS_BRANCH = DEV
Затем я могу сделать что-то как: ARTIFACTS_KEY = $ {$} TRAVIS_BRANCH _ARTIFACTS_KEY и становится: ARTIFACTS_KEY = $ DEV_ARTIFACTS_KEY
Очевидно, что выше синтаксис с {} не работает, или я бы здесь не было! Интересно, возможен ли в теории этот метод, и если да, то как !?
EDIT: Для более подробно о том, что я пытаюсь сделать
Я хотел установить 3 переменные описанным выше способом.
ARTIFACTS_KEY, ARTIFACTS_SECRET & ARTIFACTS_BUCKET создан на лету из {ПОДРАЗДЕЛЕНИЯ} _ARTIFACTS_KEY, {ДП} _ARTIFACTS_SECRET {ДП} _ARTIFACTS_BUCKET
У меня он работает без ветвления переменных, как:
env:
- ARTIFACTS_KEY=$DEV_ARTIFACTS_KEY ARTIFACTS_SECRET=$DEV_ARTIFACTS_SECRET ARTIFACTS_BUCKET=$DEV_ARTIFACTS_BUCKET
где $ DEV_ARTIFACTS_KEY и т. д. определены в Travis. Однако я до сих пор не смог заменить часть DEV на имя ветки на лету.
ooh, это ближе, хотя все еще не совсем работает. Теперь он правильно оценивает TRAVIS_BRANCH, но затем пытается обработать результирующее значение как строку, а не другую переменную среды. Итак, помимо ARTIFACTS_KEY, я также пытаюсь установить ARTIFACTS_BUCKET & в журнале, это говорит «bucket: $ DEV_ARTIFACTS_BUCKET», а не мое фактическое имя ведра. Возможно ли, чтобы полученное значение рассматривалось как env var, или я пытаюсь сделать невозможное? – MissGeek
Этот код, когда выполняется в bash, * должен * присваивать значение '$ DEV_ARTIFACTS_BUCKET'' ARTIFACTS_KEY'. Тем не менее, я не тестировал его на Трэвисе. Но вы, похоже, делаете что-то еще, о котором вы ранее не говорили ('ARTIFACTS_BUCKET'), позаботиться о том, чтобы обновить вопрос? – flyx
Извините за неясность, обновили вопрос, чтобы включить все переменные, которые я пытаюсь установить :) – MissGeek