我正在使用DevOps管道将dotnet构建推送到Octopus云实例。
在我将dotnet SDK 3安装程序添加到devops管道之前,它一直运行良好
- task: UseDotNet@2
displayName: 'Install .net core 3.0.100'
inputs:
packageType: sdk
version: '3.0.100'
installationPath: $(Agent.ToolsDirectory)/dotnet
我的azure-pipelines.yml的章鱼部分如下所示:
- task: OctoInstaller@4
inputs:
version: 'latest'
- task: OctopusPush@4
inputs:
OctoConnectedServiceName: 'XXX.octopus.app'
Space: 'Spaces-1'
Package: '$(Build.ArtifactStagingDirectory)/$(Build.DefinitionName).$(Build.BuildNumber).zip'
Replace: 'false'
我已经尝试过可以想到的OctoInstaller的每种组合,包括嵌入式和显式版本号。我一直通过@ 4收到此错误消息。
Failed to push package. The Octo command line tool is too old to run this task. Please use version 6.10.0 or newer, or downgrade the task to version 3.*.
使用OctoInstall @ 3,我会收到另一个错误:
Failed to push package. The process '/opt/hostedtoolcache/dotnet/dotnet' failed with exit code 150
有人能在Octopus部署中使用dotnet 3吗?一种选择可能是为dotnet安装octo扩展,但我不确定如何从azure管道中执行此操作。或者使用Windows构建而不是Ubuntu。
我还注意到构建步骤中的错误。
The specified framework 'Microsoft.NETCore.App', version '2.0.0' was not found.
- The following frameworks were found:
3.0.0 at [/opt/hostedtoolcache/dotnet/shared/Microsoft.NETCore.App]
这意味着章鱼必须尝试使用dotnet 2框架。
仔细查看日志后,我发现OctopusPush失败,因为它依赖于dotnet 2.0.0。我添加了一个yml
任务来安装该框架,现在它将推送到章鱼。
dotnet octo
如TrevorBrooks所述,使用该工具可能更整洁,但是我不知道如何在DevOps Pipeline中安装dotnet扩展。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句