[英]Azure CI/CD: On-Premise deployment failing
我正在尝试将我的代码从 Azure 部署到我的本地计算机。 我遵循的步骤:
对于管道,生成的 YAML 是:
# ASP.NET
# Build and test ASP.NET projects.
# Add steps that publish symbols, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/aspnet/build-aspnet-4
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
steps:
- task: NuGetCommand@2
inputs:
command: 'restore'
restoreSolution: '**/*.sln'
feedsToUse: 'select'
vstsFeed: 'a31f9237-4431-41f2-b1a9-4370c7dc4828/a3a86133-79b3-437a-bc19-9665a420de4e'
- task: VSBuild@1
inputs:
solution: '**\*.sln'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactStagingDirectory)"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
restoreNugetPackages: true
- task: CopyFiles@2
inputs:
SourceFolder: '$(build.sourcesdirectory)'
Contents: '**\bin\$(BuildConfiguration)\**'
TargetFolder: '$(build.artifactstagingdirectory)'
CleanTargetFolder: true
OverWrite: true
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
当我运行管道时,它没有给出任何错误,但在发布部分我得到一个错误:
我使用的解决方案有多个项目。 我需要在我的机器上部署三个项目。 这是我第一次使用 Azure DevOps,我对错误没有任何线索。 在线文章大多是关于云部署的解释,我找不到太多关于内部部署的文章。 简而言之,每当我将任何更改推送到主分支时,我的要求是从我的仓库中部署三个项目到我的本地机器上。 是否有任何分步指南来实现相同的目标? 我在设置中错过了什么步骤? 任何帮助深表感谢。
根据报错信息的描述,首先需要检查是否选择了对应的构建管道作为发布神器源。
然后您可以检查下载工件路径是否与IIS web应用部署任务的包( Package or Folder
)的文件路径一致。
System.DefaultWorkingDirectory
:在发布部署期间将工件下载到的目录。 如果需要将工件下载到代理,则在每次部署之前都会清除该目录。 与 Agent.ReleaseDirectory 和 System.ArtifactsDirectory 相同。 示例: C:\agent\_work\r1\a
详情请参考预定义变量文档。
我的要求是每当我将任何更改推送到主分支时,从我的存储库中部署三个项目到我的本地机器上。是否有任何分步指南来实现相同的目标?
为此,在 yaml 构建管道中,您需要设置CI 触发器:只要您将更新推送到指定分支,持续集成 (CI) 触发器就会导致管道运行。
在发布管道中,您需要将构建管道设置为发布工件源,然后启用持续部署触发器:这会指示 Azure 管道在检测到新工件可用时自动创建新版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.