Azure DevOps 管道需要很长时间来复制节点模块

Azure DevOps pipeline takes long time for copying node modules

一直在设置 Azure DevOps 管道以捆绑功能并将其部署到 GCP(部署部分工作正常,没有问题)。

但是整个过程需要很多时间,有什么建议可以减少部署时间吗?

蔚蓝-pipeline.yaml

trigger:
- master

pool:
  vmImage: 'ubuntu-latest'

steps:
- task: CopyFiles@2
  inputs:
    Contents: '**'
    TargetFolder: '$(Build.ArtifactStagingDirectory)'
- task: Npm@1
  inputs:
    command: 'install'
    workingDir: '$(Build.ArtifactStagingDirectory)/functions'
- task: PublishBuildArtifacts@1
  inputs:
    PathtoPublish: '$(Build.ArtifactStagingDirectory)'
    ArtifactName: 'drop'
    publishLocation: 'Container'

虽然发布管道只是读取 drop 并通过 shell 脚本推送它。

在 npm 安装到 drop 之后,整个管道需要花费大量时间将节点文件复制到 drop(超过 10 分钟)。有什么办法可以加快这个过程吗?

根据您的 YAML 文件,您在复制和发布到放置文件夹时包含了所有文件。

另一种方法是选择必要的文件并从发布到服务器中排除 node_modules 文件夹。这将有助于减少时间。示例 UI 设置供参考。:

复制文件任务

源文件夹:$(Build.SourcesDirectory)

内容:

**\**
!**\node_modules\**

目标文件夹:$(build.artifactstagingdirectory)

发布构建工件任务

发布构建工件任务:$(build.artifactstagingdirectory)

工件名称:drop