Azure API App无法编写脚本部署

时间:2015-05-07 21:45:41

标签: azure visual-studio-2013 web-deployment tfs2013 azure-api-apps

对于持续部署,我似乎无法弄清楚如何在Team Foundation Server中使用构建脚本(Build / Advanced / MSBuild Arguments)来工作。

是的,我使用Azure API应用程序(预览)配置文件选项并登录到azure帐户 - 我可以从那里发布确定。它似乎也使用了一个我不确定来自哪里的密码,因为在查看“连接”信息时,它是隐藏的,当您在解决方案中查看时,它在pubxml中不可用。

我曾经为Web应用程序使用以下MSBuild参数,但现在如果我引用新的Azure发布文件,它就不起作用了。

我曾经使用过这样的东西:

/flp:verbosity="diagnostic" /p:DeployOnBuild=true /p:PublishProfile=xxx /p:AllowUntrustedCertificate=true /p:UserName="xxxx" /p:Password="xxxx" 

总体而言,没有可用于API应用程序的密码,因此在测试参数时,我删除了/p信息。我还确保在Team Foundation Server构建计算机上安装了Azure SDK for VS 2013,但这还没有解决任何问题。请注意,当此解决方案是Web应用程序时,CI和CD工作正常。现在,如果我排除CD,CI适用于API App。

详细日志给出了以下错误:

  

C:\ Program Files   (86)\的MSBuild \微软\ VisualStudio的\ V12.0 \网络\ Microsoft.Web.Publishing.targets   (4350):PublishProfile的值设置为'xxx',预期找到   文件在   'C:\构建\ 4 \成果\ YYY \ SRC \ ZZZ \ ZZZ \属性\ PublishProfiles \ xxx' 的   但它无法找到。

现在文件匹配,文件就在那里 - 我检查了构建机器的build文件夹。消息中的引用不是指文件扩展名,但它不一定需要该部分。

无论如何,我之前已经通过Web应用程序部署完成了所有这些工作,而我最不需要做的就是删除Team Foundation Server服务用户工作区。我还删除了构建机器上的所有构建文件夹,以确保它刚刚开始。但是在这个问题上没有进展。

1 个答案:

答案 0 :(得分:0)

我正在使用VSO BuildVNext + MSBuild来部署API App,这里是MSBuild的参数:

msbuild.exe "[Solution_Name]" /p:DeployOnBuild=true /p:PublishProfile="[Publish_Profile_Name]" /p:UserName="[UserName]" /p:Password="[Password]" /p:platform="any cpu" /p:configuration="debug" /p:VisualStudioVersion="12.0"

我在Azure门户网站上发布时收到的用户名和密码(您需要导航到Api App Host并下载发布设置)。

请注意,在构建服务器上存储密码并不安全,因此,应该将其用作临时解决方案,直到发布用于Api App部署的Azure Powershell命令(可以与订阅ID和证书一起使用)。