使用VSTS的ASP.NET Core Web API的CI / CD

时间:2017-10-11 17:35:26

标签: azure asp.net-core .net-core azure-devops continuous-deployment

我使用Visual Studio 2017(Community Edition)创建了一个ASP.NET Core Web API应用程序。我可以使用Visual Studio成功发布到Azure App Service。

我现在想要使用VSTS设置CI / CD。我使用了“配置持续交付”#39; Visual Studio中的选项,它在VSTS中创建了一个项目并创建了一个构建定义。我必须基于&#;; ASP.NET核心'创建一个新的构建定义。 VSTS中的模板,以避免Nuget恢复错误。现在解决方案已经构建并且测试已经开始,但是“发布”#39;任务以警告

完成
##[warning]No web project was found in the repository. Web projects are identified by the presence of either a web.config file or wwwroot folder in the directory.

发布神器'任务有类似的警告 -

##[warning]Directory 'd:\a\1\a' is empty. Nothing will be added to build artifact 'drop'.

显然,构建不会产生任何伪影。

我是否需要将任何构建任务添加到默认的ASP.NET Core构建模板中?如何使用VSTS将我的Web API发布到Azure?

2 个答案:

答案 0 :(得分:85)

作为警告消息,您的存储库似乎没有Web项目。 因此,您应取消选择 .NET Core发布任务中的发布Web项目选项,并在项目选项中指定.csproj

enter image description here

您还可以找到发布网络项目选项的提示消息,如下所示:

  

如果为true,则任务将尝试在存储库中查找Web项目   并对它们运行publish命令。 Web项目由标识   存在web.config文件或wwwroot文件夹   。目录

答案 1 :(得分:1)

这可能会对您有所帮助。

根据我的情况,我也遇到了此错误,我使用wwwroot文件夹保存文件

project.csproj

  <ItemGroup>
    <Folder Include="wwwroot\FoodItem\" />
    <Folder Include="wwwroot\Shops\" />
  </ItemGroup>

在我进入vsts之后,侧面仓库中没有wwwroot文件夹。因此,我遇到了这个错误,然后我又用固定的子文件夹将wwwroot推送了