首页 > 解决方案 > 如何在 ftp 中使用 AzureDevOps 发布 asp.net 网站

问题描述

我希望我的项目(asp.net api)使用 AzureDevOps 作为我的 CI/CD 工具启用 CI/CD。
我希望我发布的文件通过 FTP 上传到我的托管服务提供商。

目前发生的情况是,当通过 Azure DevOps 构建产品时,它会将应用程序创建为 Msdeploy 文件。我的托管服务提供商不支持通过 ftp

建造

构建步骤

构建工件 在此处输入图像描述

如您所见,构建工件采用 Web 部署的格式

发布 在此处输入图像描述 尝试上传 zip 文件和 ms 部署文件的工件。

上传文件后,服​​务器不知道如何部署 msdeploy 项目文件。 如何使用 AzureDevOps 部署网站

预期文件将在 ftp 中上传 在此处输入图像描述

我想将文件作为 ftp 支持的常规文件上传,或者我想以自动方式执行 msdeploy

标签: azure-devopsftppublishingmsdeploy

解决方案


解决方法是配置 Visual Studio 生成任务以将生成工件生成为文件而不是包。

Visual Studio Build任务的默认MSBuild Arguments会将构建工件输出为压缩包,如您发布的上述屏幕截图所示。

您可以尝试更改MSBuild 参数,如下所示。此 msbuild 参数会将构建工件作为常规文件输出到文件夹 $(build.artifactstagingdirectory)\。

您可以通过 FTP 将文件发布到您的托管服务提供商。

/p:SkipInvalidConfigurations=true /p:DeployOnBuild=true /p:WebPublishMethod=FileSystem /p:publishUrl="$(build.artifactstagingdirectory)\\" /p:DeployDefaultTarget=WebPublish

在此处输入图像描述


推荐阅读