繁体   English   中英

Azure 构建管道和发布管道nodejs

[英]Azure build pipeline and release pipeline nodejs

我有一个 azure 构建管道和发布管道。 我在 Publish Build Artifact 中遇到问题。 在构建管道中,发布构建工件在默认的“drop”目录中正确创建。

当我在发布管道中下载该工件时,发布文件正在下载服务抛出错误的home/wwwroot/apservicename/drop

您无权查看此目录或页面。

这意味着我的发布工件没有在“home/wwwroot”目录中下载。

建立管道

   # Node.js
   # Build a general Node.js project with npm.
   # Add steps that analyze code, save build artifacts, deploy, and more:
   # https://learn.microsoft.com/azure/devops/pipelines/languages/javascript
   
   trigger:
   - main
   
   pool:
     vmImage": ubuntu-latest
   
   steps:
   - task: NodeTool@0
     inputs:
       versionSpec: '12.x'
     displayName: 'Install Node.js'
   
   - script: |
       npm install
     displayName: 'npm install and build'
   
   - task: ArchiveFiles@2
     inputs:
       rootFolderOrFile: '$(Build.BinariesDirectory)'
       includeRootFolder: true
       archiveType: 'zip'
       archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
       replaceExistingArchive: true
   - task: PublishBuildArtifacts@1
     inputs
       PathtoPublish: "."
       publishLocation: Container"
   
   

发布管道

   steps:
   - task: DownloadBuildArtifacts@0
     displayName: 'Download Build Artifacts'
     inputs:
       "buildType": specific
       project: 'f736e2aa-631d-4bc0-a468-f8c8d1b3713a'
       "pipeline": 15
       "downloadType": specific
       "downloadPath": .
       "extractTars": false

我缺少什么?

工件名称将始终是路径的一部分,因为可以想象在此部署之前的构建可能会发布多个工件。

因此,您的部署作业将需要提供工件路径,但您可以尝试这样做 - 在您的变量部分:

variables: ... artifactName: 'APP-FE' 然后在你的发布阶段:

      - task: PublishBuildArtifacts@1
        displayName: "Upload Artifacts"
        inputs:
          PathtoPublish: 
     '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
          ArtifactName: $(artifactName)
          publishLocation: 'Container'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM