当前位置: 首页 > 知识库问答 >
问题:

将网站生成从 VSTS 发布管理部署到 Azure

蓟清野
2023-03-14

我正在测试Visual Studio Team Services新发布管理系统的预览版。我的场景是一个在VSTS托管Git回购的经典网站(ASP.NET 4.5)。如下所示,构建定义是成功的:

它被设置为发布为可以由Release Manager获取的工件,如下所示:

在发布管理器端,我将工件正确链接,如下所示:

在这里,您可以看到我的环境以及相关的任务(三个都是克隆)

当我运行构建发布的版本时,它会很好地连接到我的订阅,但当它尝试查找包文件时,在输出日志的第101行出现以下错误:

使用搜索模式“C:\a\4fe43dd1a***”未找到要部署的文件。zip ' "

以下是完整的输出:

这就是我陷入困境的原因,因为我认为通过VSTS的工件链接应该可以为我解决这个问题。显然,我在某个地方遗漏了一个重要的部分,但我已经尽我所能地遵循了可用的文档。

如果有人有解决方案或能给我指出正确的方向,我将不胜感激!

--- 编辑---

我使用文件选择器选择了一个Web部署包(见下文)。我尝试使用根网站和bin文件夹。两次尝试都导致错误声明:“未找到要使用搜索模式'C:\a\4fe43dd1a\Classic Site定义\dro\ClassicSite\bin'部署的文件”

--- 编辑 2 ---

我使用以下MSBuildArguments将MSBuild任务添加到我的BUILD进程中

/p:OutDir=$(build.stagingDirectory)/p:DeployOnBuild=true/p:WebPublishMethod=Package/p:PackageAsSingleFile=true/p:跳过无效配置=true

在我的复制/发布工件任务中,我将输出限制为仅复制. zip文件。现在,在我的RELEASE过程中,当我导航查找“Web部署包”时,“放置”文件夹为空。这是一个屏幕截图:

我认为我走在正确的道路上,我只是需要帮助来调整我的构建任务,以生成正确的工件供我的发布过程使用。任何帮助都将不胜感激。


共有1个答案

廖琪
2023-03-14

$(系统.默认工作目录)更改为 $(代理发布目录)。工件将放在该文件夹中。我不知道$(系统.默认工作目录)映射到什么,但我的印象是,它是代理用于您的版本的文件夹之外的东西。

还要确保发布的工件包含预期的zip文件——如果没有创建部署包,或者如果没有发布包含该包的输出文件夹,那么很显然您以后将无法发布它。

当您构建Web应用程序时,请使用将其打包的MSBuild参数确保它已打包以进行部署。应该可以这样做:

/p:OutDir=$(build.stagingDirectory)/p:DeployOnBuild=true/p:WebPublishMethod=Package/p:PackageAsSingleFile=true/p:跳过无效配置=true

 类似资料:
  • 所以我只在索引页上使用href lang,如下所示: 但我在谷歌网站管理员工具中不断得到这些错误 Google检测到您站点上的某些页面错误地实现了rel-alternate-hreflang标记。特别是,似乎存在不正确的语言和地区代码的问题,或者不正确的双向链接(如果页面a用hreflang链接到页面B,那么也必须有从B返回到a的链接)。Google使用hreflang属性在搜索结果中向正确的用户

  • 原文链接:Serverless 应用开发指南:使用 S3 部署静态网站 在尝试了使用 Router53 路由到 S3 后,并想试试能否使用 serverless 框架来上传静态内容。在探索官方的 DEMO 后,找到了一个 serverless-finch 插件可以做相应的事情。 serverless create --template aws-nodejs s3-static-file s3-st

  • 可以用一句话描述:离线训练、在线识别 完整的深度学习开发周期从逻辑上分为开发和部署两个阶段。 开发阶段(离线训练阶段): 数据专家选择训练数据 算法专家设计模型参数 开发专家对训练过程进行优化和调试,得到满足发布的模型,在Caffe中即为*.caffemodel文件。 部署阶段(在线识别阶段): 由线上负责生产的工程师利用开发团队提供的可发布模型部署到线上生产机器。 Docker简介 Docker

  • 问题内容: 我已经创建了一个离子应用程序,并希望将其部署为网站。在自定义域上部署它的最佳方法是什么?我当时正在考虑使用azure Web应用程序托管离子应用程序。所有文档都将其用作IOS和Android的混合应用程序。但是在这一点上,我们只希望它能够充当网站。 问题答案: 编辑: Ionic 1.2正式支持部署为网站! 正如我在对唯一提供的答案的评论中所指出的那样- 我不同意 。 如果您没有使用任

  • 我正在尝试设置CI / CD,但没有太多的运气。我的目标是通过 构建一个 .net 网络项目,并将其部署到 应用程序。 我现在在哪里? 创建了< code>vsts-ci.yml文件,如下所示: 我有一个构建定义,如下所示: 有了这个,我的第一步运行正确。顺便说一下代理池是。 然后,我创建了一个如下发布管道: 作为第1阶段的任务(在工件步骤之后运行的部分),我有以下内容: 我已经将构建与主分支提交

  • 我在Docker有个Jenkins集装箱。 当我成功构建某个东西时,我希望将其部署到一个glassfish docker容器中。 https://docs.oracle.com/cd/e19798-01/821-1757/ghgmi/index.html https://github.com/jenkinsci/postbuildscript-plugin