Как я могу условно установить переменные окружения в моем travis.yml? - PullRequest
0 голосов
/ 09 октября 2018

Я хотел бы условно установить некоторые переменные окружения в моем travis.yml, но не могу найти документацию, которая описывает то, что я пытаюсь, и теперь задаюсь вопросом, возможно ли это вообще.

Что бы я хотелсделать что-то вроде

env:
- $RESOLVER="lts-6.35"
- $RESOLVER="lts-7.24"
- $RESOLVER="lts-9.21"
- $RESOLVER="lts-10.3"
- $RESOLVER="lts-11.22"
- $RESOLVER="lts-12.11"
if: branch = master
- $RESOLVER="nightly"     # Exclude from hackage branch

if: $RESOLVER = "nightly"
- $STACKYAML="post86.yaml"
if: $RESOLVER != "nightly"
- $STACKYAML="pre86.yaml"

Есть ли способ сделать это?

1 Ответ

0 голосов
/ 09 февраля 2019

Возможно создание разных заданий, каждое со своим набором переменных.Вы бы сделали что-то вроде:

jobs:
  include:
    - if: branch = master
      env: 
      - RESOLVER="nightly"
      - STACKYAML="post86.yml"
    - if: NOT (branch = master)
      env:
      - RESOLVER="lts-12.11"
      - STACKYAML="pre86.yml"

Следует помнить одну вещь: если одновременно выполняется несколько заданий, travis запускает несколько одновременных заданий, поэтому, если вы не хотите, чтобы сработал коммитнесколько заданий, будьте осторожны, чтобы убедиться, что условия являются взаимоисключающими, как в этом случае.

...