Yaml 每个bash步骤是否都创建了一个新的shell环境?

Yaml 每个bash步骤是否都创建了一个新的shell环境?,yaml,azure-pipelines,Yaml,Azure Pipelines,上面有3个bash步骤,我想知道放置bash步骤的最佳实践是什么,我应该将它们分组在同一个bash步骤下还是像上面那样制作3个单独的bash步骤 用几个脚本创建一个bash和将这些脚本放入不同的bash步骤之间有什么区别?是否每个bash步骤都会创建一个新的shell环境 每个步骤/任务都将创建新会话,因此会丢失一些数据,例如会话级别环境变量 因此,如果脚本是相关的,您可以在任务中运行。这也节省了时间 - job: build_package dependsOn: test

上面有3个bash步骤,我想知道放置bash步骤的最佳实践是什么,我应该将它们分组在同一个bash步骤下还是像上面那样制作3个单独的bash步骤


用几个脚本创建一个bash和将这些脚本放入不同的bash步骤之间有什么区别?是否每个bash步骤都会创建一个新的shell环境

每个步骤/任务都将创建新会话,因此会丢失一些数据,例如会话级别环境变量

因此,如果脚本是相关的,您可以在任务中运行。这也节省了时间

  - job: build_package
    dependsOn: test
    displayName: Build Package
    pool:
      vmImage: 'ubuntu-18.04'
    steps:
      - bash: echo "##vso[task.prependpath]$CONDA/bin"
        displayName: Add Conda to PATH

      - bash: conda env create -f environment.yml --name $(Agent.Id)
        displayName: Create Conda Environment

      - bash: |
          source activate $(Agent.Id)
          conda build . --output-folder ./
        displayName: Build Package In the Build Directory