我想在同一阶段有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,尽管我不知道它是否具有作业的概念与步骤不同,但我不记得有类似的行为。