微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c#-“ dotnet发布”命令行跳过部署到Azure Functions

我正在为我的站点设置一些DevOps,到目前为止,我已经使用以下命令成功部署在两个ASP.NET Core应用程序上:

dotnet publish ProjectName.csproj /p:PublishProfile="PublishProfileName" /p:Password=password

我刚刚使用V2运行时和.NET Core 2.1创建了Azure函数,如对所有新项目所建议的(请参见此处https://azure.microsoft.com/en-us/blog/introducing-azure-functions-2-0/),但是如果我使用相同的命令,我会发现它仅将其发布到本地文件夹中并且似乎没有将项目部署到Azure.

如果我使用等效的MSBuild,似乎也会错过部署阶段.

我猜测它与项目类型有某种关系,没有适当的构建目标,但是我不确定如何进一步跟踪它.

我可以从Azure下载发布设置,将它们导入Visual Studio并通过VS发布,因此,如果VS路径可行,这似乎是工具中的回归或错误,而不是不受支持的东西?

我正在使用:

> Visual Studio 15.8.8 28010.2048
> Azure功能和Web作业工具15.9.02046.0

如果我不应该将dotnet publish与Azure函数一起使用,那么应该如何使用命令行CD?我已经看到了对Azure Function CLI工具的引用,但是如果可以通过其他工具完成安装,则我不希望在我们的构建代理上安装程序包管理器.

解决方法:

最后,借助答案和评论(感谢所有),我有一个MSBuild命令行,可用于部署.NET Core 2.1 Function项目:

msbuild /p:DeployOnBuild=True /p:PublishProfile=somename.pubxml /p:Configuration=Release

但是,值得注意的是:

一般.NET Core发布说明

>如果您拼写了错误的发布配置文件名称,它将以静方式跳过部署(无警告或错误).

ASP.NET Core和.NET Core Functions部署之间的区别

>如果您使用“ dotnet发布”,它将始终跳过部署.
>如果您未指定/ p:DeployOnBuild = True,它将跳过部署.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐