Я начинаю с azure-pipelines.yml
Я хотел, чтобы на одной стадии было 2 задания. Один для построения решения, а другой для запуска модульных тестов.
Проблема в том, что второе задание выполнило шаг сценария и не находит папку Release
, которую должно было создать предыдущее:
trigger:
- master
pool:
vmImage: 'ubuntu-18.04'
stages:
- stage: CI
jobs:
- job: Build
steps:
- task: NuGetAuthenticate@0
- script: dotnet restore --no-cache --force
- script: dotnet build --configuration Release --no-restore
- job: UnitTests
dependsOn: Build
steps:
- script: dotnet vstest test/*UnitTests/bin/Release/**/*UnitTests.dll
Однако, если я добавлю все шаги в одну и ту же работу, она будет работать:
trigger:
- master
pool:
vmImage: 'ubuntu-18.04'
stages:
- stage: CI
jobs:
- job: Build
steps:
- task: NuGetAuthenticate@0
- script: dotnet restore --no-cache --force
- script: dotnet build --configuration Release --no-restore
- script: dotnet vstest test/*UnitTests/bin/Release/**/*UnitTests.dll
Я не смогу найти ответ, почему зависимая работа не может найти в файловой системе папки, которыепредыдущий сгенерировал. Любое объяснение или ссылка на что-то, что проясняет это, будет высоко ценится.
Я использовал gitlab в прошлом, и я не помню подобное поведение, хотя я не знаю, было ли у него понятие работы какдругое дело с шагами.