【问题标题】:Publishing in powershell (filesystem) an ASP MVC 5 project to local IIS (TFS)在 powershell(文件系统)中将 ASP MVC 5 项目发布到本地 IIS(TFS)
【发布时间】:2017-03-19 13:17:18
【问题描述】:

我必须使用 Team Foundation Server 2015 发布一个 Web 应用程序。

首先我尝试使用 Team Foundation Server 步骤“在目标机器中复制文件”。

我将这些参数提供给我的 Visual Studio 构建步骤:

/p:DeployDefaultTarget=Package 
/p:PackageAsSingleFile=true 
/p:SkipInvalidConfigurations=true 
/p:WebPublishMethod=FileSystem 
/p:DeleteExistingFiles=True 
/p:PackageLocation=$(build.artifactstagingdirectory)\ic-drop

但是,我只在我的 ic-drop 文件夹中找到了 DLL,我的 web 项目不在这里。

所以我决定执行一个 powershell 脚本来部署我的 Web 应用程序(Asp MVC 4)

使用此脚本:

# Define
$msbuild = "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe"
$options = "/p:PublishProfile='Default' /p:VisualStudioVersion=14.0  /p:AspnetMergePath='C:\Program` Files` (x86)\Microsoft` SDKs\Windows\v10.0A\bin\NETFX` 4.6` Tools' /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True"
$proj = "'C:\Users\MyUser\Documents\Visual` Studio` 2015\Projects\Web\Web\Project.Path.Web.csproj'"

# Execute
$build = $msbuild + " $proj " + $options
Invoke-Expression $build

PS:我创建了一个名为“default”的发布配置文件

所以,我尝试在 Visual Studio 中执行与发布命令相同的操作:

publishing in Visual Studio 2015

要进入我的目标文件夹这些文件:

Files deployed

但我的 powershell 只是构建我的项目并将输出文件 (dll) 复制到我的 bin 目录中。

我想我错过了一些东西,但即使在我搜索之后,我也没有找到它......

【问题讨论】:

    标签: visual-studio powershell tfs-2015 msdeploy webdeploy


    【解决方案1】:

    好吧,我错过了一个论点:

    /p:DeployOnBuild=true
    

    它现在按我的预期工作! :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-05-09
      • 1970-01-01
      • 1970-01-01
      • 2015-08-16
      • 1970-01-01
      • 1970-01-01
      • 2011-07-24
      相关资源
      最近更新 更多