Существует ли переменная, описывающая, что PR запускается с форка? - PullRequest
1 голос
/ 06 февраля 2020

Код / PR обсуждаются с github. В настоящее время у меня настроен конвейер (через конфигурацию «триггеров» в конвейере) для запуска тестов на ветвях нашего репозитория, но не для того, чтобы секреты были доступны.

Это означает, что для PR участников наших первых двух задания в конвейере выполняются успешно, но затем следующие 3 (для которых требуются учетные данные) завершаются неудачно, давая бесконечные ошибки о том, что переменная не установлена. Я хотел бы установить condition: для задания, например and(succeeded(), not(???)), где ??? - это некоторая переменная, указывающая, что это «вилка».

Я знаю, что могу изменить свои задания, чтобы включить секреты в среде, а затем проверьте, чтобы переменная окружения была установлена ​​и выручила рано, если нет, но это кажется глупым - я полагаю, что эта информация должна быть как-то доступна. Поскольку это создает путаницу для участников, которые видят, что куча тестов провалилась.

1 Ответ

0 голосов
/ 06 февраля 2020

SYSTEM_PULLREQUEST_ISFORK доступно. Можно использовать его так:

and(succeeded(), ne(variables['SYSTEM.PULLREQUEST.ISFORK'], 'true'))

Вот один вкладыш, чтобы получить все переменные среды для дальнейшего использования:

- task: PowerShell@2
  inputs:
    targetType: 'inline'
    script: 'gci env:* | sort-object name'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...