Я использую конвейер 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
Кто-нибудь смог использовать dotnet 3 с Octopusразвернуть? Одним из вариантов может быть установка расширения octo для dotnet, но я не уверен, как вы это сделаете из лазурного конвейера. Или использовать сборку 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рамки.