gpt4 book ai didi

Azure - 从管道中排除 Azure 函数项目

转载 作者:行者123 更新时间:2023-12-02 06:27:14 25 4
gpt4 key购买 nike

我正在使用 azure pipeline 部署我的 net core 2.2 应用程序

yml:

trigger:
- dev

pool:
vmImage: 'windows-latest'

variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Debug'

steps:
- task: NuGetToolInstaller@1

- task: UseDotNet@2
displayName: 'Use dotnet sdk 2.2'
inputs:
version: 2.x
includePreviewVersions: false

- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'

- task: VSBuild@1
inputs:
solution: '$(solution)'
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site"'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'

- task: VSTest@2
inputs:
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'

# code coverage
- task: DotNetCoreCLI@2
inputs:
command: test
projects: '**/*Tests/*.csproj'
arguments: '--configuration $(buildConfiguration) --collect "Code coverage"'


- script: dotnet -d ef -v migrations script --output $(Build.ArtifactStagingDirectory)\SQL\$(scriptName) --context $(dbContext) --idempotent --project src\WorkFlowManager.EntityFrameworkCore\WorkFlowManager.EntityFrameworkCore.csproj

- task: PublishBuildArtifacts@1

现在我已经在解决方案中添加了一个我想从构建中排除的 azure 函数项目,因为最后一个项目是使用 net core 3.1 开发的。

我正在尝试使用类似的方法将其从管道中排除:

variables:
solution: |
'**/*.sln'
'!**/*Project.AzureFunction*.csproj'
buildPlatform: 'Any CPU'
buildConfiguration: 'Debug'

但是构建不起作用:

Starting: VSBuild
==============================================================================
Task : Visual Studio build
Description : Build with MSBuild and set the Visual Studio version property
Version : 1.166.0
Author : Microsoft Corporation
Help : https://learn.microsoft.com/azure/devops/pipelines/tasks/build/visual-studio-build
==============================================================================
##[error]Solution not found using search pattern ''**\*.sln'
'!**\*WorkFlowManager.Functions.EnelGenerator*.csproj'
'.
Finishing: VSBuild

有什么想法吗?

最佳答案

要从构建中排除 azure function 项目,您可以直接修改解决方案文件以排除 azure function 项目。

对于下面的示例,NUnitTest2.csproj 在解决方案文件(.sln)中被注释掉,并且在构建解决方案时将被排除。您还可以查看this thread其他解决方法。

enter image description here

如果您不想修改解决方案文件。您可以使用 DotNetCoreCLI@2 任务构建除 azure 函数项目之外的所有项目,如下所示(使用 ! 排除项目)。

 - task: DotNetCoreCLI@2
inputs:
command: build
projects: |
**\*.csproj
!**\azurefunction.csproj

关于Azure - 从管道中排除 Azure 函数项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61694728/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com