是否可以在AzureDevOps管道中将以前构建的工件复制到另一个构建管道?

时间:2019-10-08 21:57:57

标签: python-3.x azure-devops azure-pipelines

我正在构建一个天蓝色的DevOps管道,其中一个步骤是引用一个已经预先构建的软件包并将其复制到当前管道。我正在执行正常的以下步骤,但是我认为天蓝色的DevOps应该有可能直接从伪像复制到$(Build.ArtifactStagingDirectory) 当前方法: 在Azure存储库中:(我已经提到了预构建的工件/程序包) requirements_generic_bash.txt

现在在我的pipeline.yml中

- bash: |
      echo PythonV3
      python3 -m venv venv
      source venv/bin/activate
      python --version
      http_proxy="xxxx"
      https_proxy="xxx"
      index_url="https://actory.com/artifactory/api/simple"
      extra_index_url="https://actorycom/artifactory/api/simple"
      python -m pip install -r $(System.DefaultWorkingDirectory)/requirements/requirements_generic_bash.txt --index-url ${index_url} --extra-index-url ${extra_index_url}         
      deactivate
    displayName: Install GenericBash from Artifactory

  - bash: |
      cp -r venv/lib/python3.7/site-packages/* $(Build.ArtifactStagingDirectory)
    displayName: Copy files to ArtifactStagingDirectory

所以我的问题是,有什么方法可以直接完成“ 将文件复制到ArtifactStagingDirectory ”而不是虚拟环境吗?如果是这样,那怎么办?

1 个答案:

答案 0 :(得分:-1)

管道中有一项可能满足您需求的任务。

复制文件任务可以使用与文件路径匹配的模式将文件从源文件夹复制到目标文件夹。 因此,您可以在“源文件夹”中设置已经预先构建的包路径,并按如下所示设置“目标”文件夹。 enter image description here

如果您想使用Yaml文件,则可以如下进行设置。 enter image description here

有关此任务的更多详细信息,您可以参考https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/utility/copy-files?view=azure-devops&tabs=yaml