我有一个azure构建管道和发布管道。我在发布构建工件中面临问题。在构建管道中,发布构建工件被正确地创建在默认的“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://docs.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
我错过了什么?
项目名称将始终是路径的一部分,因为可以想象,此部署之前的版本可能会发布多个项目。
因此,您的部署作业将需要提供工件路径,但您可以尝试这样做-在您的变量部分:
变量:...artifact name:“APP-FE”然后在发布阶段:
- task: PublishBuildArtifacts@1
displayName: "Upload Artifacts"
inputs:
PathtoPublish:
'$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
ArtifactName: $(artifactName)
publishLocation: 'Container'
看起来,PublishBuildArtifacts任务在发布环境中不可用。 https://docs.microsoft.com/de-de/azure/devops/pipelines/tasks/utility/publish-pipeline-artifact?view=azure-德沃斯 但是,当我们的客户从Azure存储库(通用软件包)中获取新的工件版本时,有机会通过发布管道发布这些工件
寻找一种通过API触发Azure管道构建的方法,理想情况下是REST。如果REST是不可能的,也许我可以尝试通过Azure函数使用某种资源ID来调用构建。我希望我自己的存储库监视器发出一个API请求,当我的条件满足时触发构建。另一个问题--是否可以通过API设置“管道变量”--例如,我发出一个API调用,传递值作为管道变量的值,然后触发构建。 谢谢。
我正在尝试从管道中自动创建Jenkins管道构建。 我有一个管道,它创建一个比特桶存储库并向其提交一些代码,包括一个Jenkinsfile。 我需要向此管道添加另一个步骤,然后为其创建管道生成,这将运行 Jenkinsfile 中的步骤。 我认为Jobs DSL应该能够处理这一点,但我找到的文档非常稀少,我仍然不完全确定是否有可能或如何做到这一点。 任何帮助都将不胜感激。我想生成的Pipeline
Azure发布管道可以使用环境功能吗?我一直在寻找,但所有使用环境的示例都是YAML和管道部署任务。
当您选择此选项时,将生成 yaml 文件,如下所示: 在此 yaml 文件中,您可以定义从还原开始的整个部署周期
我们已经配置和运行Azure运营模式管道构建和发布一年多了。我们部署到Azure应用服务。最近,我们开始将一些应用服务迁移到ASE(Azure服务环境)中。这就需要创建新的发布定义来部署到我们网站的新ASE实例。新的发布管道由于各种错误或警告而失败,这些错误或警告都包含错误: getaddrinfo ENOTFOIES。 示例: 部署失败,错误:错误:错误:将Web包部署到应用服务失败。错误:ge