Build 对于Azure DevOps YAML构建定义,如何在一个构建过程中使用两个脚本命令?

Build 对于Azure DevOps YAML构建定义,如何在一个构建过程中使用两个脚本命令?,build,azure-devops,Build,Azure Devops,(有,但这应该有足够的定义来提出这个问题。) 我们发现自己需要在一个构建路径(即一个YAML(.yml)文件)中执行三个脚本作业。我试过: Steps: - script: step1 1>&2 # # Do this after other tasks such as building - task: DotNetCoreCLI@2 inputs: command: test projects: 'TEST/*/*.csproj' arguments:

(有,但这应该有足够的定义来提出这个问题。)

我们发现自己需要在一个构建路径(即一个YAML(.yml)文件)中执行三个脚本作业。我试过:

Steps:
- script: step1 1>&2
# # Do this after other tasks such as building
- task: DotNetCoreCLI@2
  inputs:
    command: test
    projects: 'TEST/*/*.csproj'
    arguments: '--configuration Release'
  displayName: 'Run Unit Tests'
- script: step2 1>&2
- script: step3 1>&2
但是,当
步骤下有多个
-script
时,构建就会停止。通常我只是把它们堆成一个脚本,所有这些,但是我不能,因为中间有一个测试任务。我怎样才能让它运行


我把它复制粘贴回去,它就开始工作了。它必须是文件中不可打印的字符。

在管道作业中,在脚本任务中设置的脚本将打包为相应的脚本文件,以便在代理上运行。每个脚本任务的脚本文件是独立的,管道不会将所有脚本打包到一个脚本文件中

通常我会把它们堆成一个脚本,但我不能,因为中间有一个测试任务。

在您的情况下,可以尝试直接在脚本任务中执行“”命令,而不是使用


通过这种方式,您可以将“
”、“
”、“
”和“
”的脚本写入一个脚本文件,并在管道中仅使用一个脚本任务执行此脚本文件。

我复制/粘贴了MSDN文档中的原始脚本行。在添加第二个脚本行时,我从yml解析器中得到了一个无意义的错误(我没有捕获),第二个脚本
-
指示器的位置作为错误的位置,脚本行的一部分作为错误体。然后我复制/粘贴到stackoverflow中询问问题


从stackoverflow复制/粘贴回时,错误不再出现。唯一合理的解释是,有一个不可打印的字符是从msdn的原始副本/粘贴中提取的,该字符在后续步骤中被吃掉。

你说的“upchucks”是什么意思?你能分享你的日志吗?@shaykibaramczyk:yml文件中有某种语法错误。构建从未开始。我现在不在工作。请分享你的整个管道(当你在工作@Shaykibaramczyk:Ugh.不可打印字符。嗨@Joshua,
>编辑:复制/粘贴回来,它开始工作。文件中一定是不可打印字符。
看起来,你已经解决了问题,对吗?如果是的话,你能发布一个答案来分享关于你的解决方案的摘要吗?这可能对我很有帮助。)正在为类似问题寻找解决方案的俄勒冈州人。谢谢。