2015-12-03 154 views
25

我在Visual Studio Team Services新版本管理系统的预览中踢轮胎。我的场景是一个经典网站(ASP.NET 4.5),其中包含一个在VSTS中托管的Git仓库。构建定义是成功的,因为在这里看到:从VSTS发布管理部署WebSite到Azure

enter image description here

它设置为发布为可以由发布经理拾取神器如下所示:

enter image description here

在发布经理方我有这个工件正确链接如下所示:

enter image description here

在这里你可以看到我的环境以及相关的任务(全部3个克隆)

enter image description here

当我运行生成发布精细的释放,它连接到我的订阅,但是当它试图找到包文件,它具有在输出日志线101以下错误:

“没有文件被发现与搜索模式部署‘C:\ A \ 4fe43dd1a ***拉链’”

这是完整的输出:

enter image description here

这是我坚持,因为我认为我的神器链接通过VSTS应该解决这条路对我来说。很明显,我错过了某个地方的一个重要难题,但我尽可能最好地遵循了可用的文档。

如果任何人有解决方案或可以指出我在正确的方向,将不胜感激!

---编辑---

我使用的文件选择器选择一种Web部署包(见下文)。我尝试使用根网站以及bin文件夹。这两种尝试的结果错误,指出:“没有文件被发现与搜索模式部署 'C:\ A \ 4fe43dd1a \经典网站定义\降\ ClassicWebsite \ bin' 的”

enter image description here

- - 编辑2 ---

我添加了一个MSBuild任务到我的构建过程具有以下MSBuildArguments

/p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true

并在我的复制/发布工件任务中,我将输出限制为只复制.zip文件。现在,在我的RELEASE过程中,当我找到“Web部署包”时,“drop”文件夹为空。下面是截图:

enter image description here

我觉得我在正确的道路上,我只需要帮助搞清楚调整我的BUILD任务,为我的释放过程使用权的文物。任何帮助,将不胜感激。

回答

23

部署包不会被复制到文件夹中的文物。这就是发布管理无法找到包的原因。设置“复制和发布生成工件”下面应该解决您的问题: VSTS Copy and Publish Artifacts drop build step

+1

工作正常!感谢Eddie! – CodeAbundance

+0

我相信** Publish Build Artifacts **任务的问题已于2016年1月5日解决。 –

+0

@JoshuaDrake thanks !,有没有关于他们的修复的链接/文章? – password

4

变化$(System.DefaultWorkingDirectory)$(Agent.ReleaseDirectory)。工件将被放入该文件夹中。我并不确切知道$(System.DefaultWorkingDirectory)所映射的内容,但我的印象是,它位于代理程序用于发布的文件夹之外。

还要确保所公布的文物包含预期的zip文件 - 如果是没有得到创建部署包,或者如果你没有发布包含包的输出文件夹,显然,你不能稍后发布。

当你建立你的Web应用程序,确保它使用的MSBuild论点,即包起来的包装上进行部署。像这样的东西应该工作:

/p:OutDir=$(build.stagingDirectory) /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true

+0

感谢丹尼尔。我做了这个改变,在这两种情况下,路径解析为:“C:\ a \ 4fe43dd1a \” - 然后我使用该文本框旁边的文件选取器并能够在创建的“drop”文件夹中导航我的项目通过我的构建过程。我想我只需要指出正确的道路,但我不确定哪一条。我试着将它指向“$(System.DefaultWorkingDirectory)\ Classic Website Definition \ drop \ ClassicWebsite”以及“$(System.DefaultWorkingDirectory)\ Classic Website Definition \ drop \ ClassicWebsite \ bin”,但在两种情况下,我都会得到“No文件发现部署“,但项目文件在那里... – CodeAbundance

+0

我编辑我的答案,以显示新的尝试。 – CodeAbundance

+0

'bin'文件夹是否实际包含您正在尝试部署的zip文件? –

相关问题