首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从预编译和部署网站

从预编译和部署网站
EN

Stack Overflow用户
提问于 2016-07-06 07:51:05
回答 2查看 1.4K关注 0票数 0

我们使用带有Git的作为源代码控制系统,我已经配置了一个成功在线执行的构建。理想情况下,我想:

  1. 在VSO中构建站点之后,将aspx和.dll文件预编译并转储到git存储库中。
  2. 在现场web服务器上,从git中拔出并转移到我们的登台站点。

第二部分我可以自己解决,但是关于如何将编译好的源代码转储到git上,VSTeam的文档似乎很粗略。除了Powershell脚本,它应该为删除创建工件。之外,我将默认构建配置与默认版本几乎相同。尽管如此,drop.zip文件create仍然是空的。

下面是如何在VSO中设置我的构建定义。

EN

回答 2

Stack Overflow用户

发布于 2016-07-06 12:37:44

与PowerShell脚本不同,您可以使用“复制和发布人工制品”,并让它使用所需的特定位来创建特定的伪制品:

这将自动创建一个命名的构建伪物,然后您可以从中使用它作为输入。

当与“”选项一起使用时,PowerShell脚本会在XAML构建中使用。

要创建“打包”网站,需要向MsBuild/Visual构建步骤添加几个参数,以指示编译器打包您的网站:

代码语言:javascript
复制
/p:DeployOnBuild=true /p:DeployTarget=Package 
/p:SkipInvalidConfigurations=true /p:PackageAsSingleFile=false
/p:AspNetCompileMerge=true

您还可以选择使用

代码语言:javascript
复制
/p:PackageLocation="$(Build.BinariesDirectory)\Published"

如果这样做,则需要将此目录配置为复制和发布任务中的复制根目录。

票数 3
EN

Stack Overflow用户

发布于 2016-07-06 08:36:07

我快速查看了Power-Shell脚本,其中有两个问题:

  1. 它仍然使用诸如"$Env:TF_BUILD_SOURCESDIRECTORY“这样的变量,这些变量在VSTS(VSO)中不存在。有关VSTS,请参见变量
  2. 它将文件从"BUILD_SOURCESDIRECTORY“文件夹复制到"BUILD_BINARIESDIRECTORY”。但是定义中的“发布构建工件”步骤将文件发布到"BUILD_ARTIFACTSTAGINGDIRECTORY“文件夹中。

因此,如果要使用此脚本,需要更新脚本以删除变量中的"TF_“字符串,并更新”发布构建工件“步骤,以便在"BUILD_BINARIESDIRECTORY”文件夹中发布文件(将路径设置为:$(Build.BinariesDirectory))。

但是,如果要复制和发布网站文件,只需在“”步骤的"MSBuild参数“部分中添加一个参数:

代码语言:javascript
复制
"/p:outdir=$(build.artifactstagingdirectory)" 

删除Power-Shell脚本步骤,其他步骤只保留默认设置。

或者您也可以更改“复制文件”步骤的设置,以选择要复制的文件/文件夹。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38218835

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档