我一直在關注Standard Environments for Automated Deployment and Testing,並且遇到了一些錯誤。嘗試使用Web部署時拒絕訪問
我有兩個服務器,一個是Windows Server 2008 R2和另一個Windows Server 2012。在這兩個我已經安裝Web Deploy 3
和服務Web Deployment Agent Service
正在兩臺機器上運行。我在我的域中有服務帳戶,並將兩臺機器上的帳戶添加到管理員組。我也使用這個帳戶建立和測試控制器和代理。
2008服務器是構建服務器,我想將生成服務器的網站部署到2012服務器。我有一個構建定義,使用zip和deploy.cmd
等與標準TFS 2012更新2過程模板(作爲MS構建參數添加/p:DeployOnBuild=True
)等包。
我有另一個基於LabDefaultTemplate TFS 2012更新2模板的構建定義。在實驗室的流程模板我的部署選項卡上添加以下命令:
"$(BuildLocation)\_PublishedWebsites\UI.Web.Mvc4_Package\UI.Web.Mvc4.deploy.cmd" /y /m:SERVERNAME_OF_THE_2012_SERVER
當我運行第二個構建定義,我得到錯誤「拒絕訪問」。我不知道它來自哪裏。我沒有看到這裏發生的任何特別的事情。我也將日誌設置爲診斷,但不起作用。
當我與遠程桌面連接到2008構建服務器並手動運行相同的deploy.cmd
時,一切正常。該網站部署在2012年服務器上,並且所有內容都正在運行。
有人可以幫助我嗎?
感謝
從構建新增日誌:
Deploy Build on Environment
00:22
Deploying Build
00:22
Run Deployment scripts
Initial Property Values
Values = Web Server | $(BuildLocation)\_PublishedWebsites\UI.Web.Mvc4_Package\start.bat
00:22
Run Deployment Task
Initial Property Values
BuildLocation = \\AP-GDA06-TFSB\DropFolder\Dev MVC4\Dev MVC4_20130510.11
DeploymentScriptDetails = Web Server | $(BuildLocation)\_PublishedWebsites\UI.Web.Mvc4_Package\start.bat
LabEnvironmentUri = vstfs:///LabManagement/LabEnvironment/3
MaxWaitTime = 00:30:00
ThrowOnError = True
UseRoleForDeployment = True
Deployment Task Logs for Machine: 2012_SERVER
Access is denied
Exception Message: Team Foundation Server could not complete the deployment task for machine '2012_SERVER', script '\\2008_SERVER\DropFolder\Dev MVC4\Dev MVC4_20130510.11\_PublishedWebsites\UI.Web.Mvc4_Package\start.bat' and arguments ''. (type LabDeploymentProcessException)
Exception Stack Trace:
Server stack trace:
at Microsoft.TeamFoundation.Lab.Workflow.Activities.RunDeploymentTask.ExecuteDeploymentTask.RunCommand(AsyncState state)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)
Exception rethrown at [0]:
at System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(Message reqMsg, Boolean bProxyCase)
at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(Object NotUsed, MessageData& msgData)
at System.Action`1.EndInvoke(IAsyncResult result)
at Microsoft.TeamFoundation.Lab.Workflow.Activities.RunDeploymentTask.ExecuteDeploymentTask.EndExecute(AsyncCodeActivityContext context, IAsyncResult result)
at System.Activities.AsyncCodeActivity.CompleteAsyncCodeActivityData.CompleteAsyncCodeActivityWorkItem.Execute(ActivityExecutor executor, BookmarkManager bookmarkManager)
Final Property Values
BuildLocation = \\2008_SERVER\DropFolder\Dev MVC4\Dev MVC4_20130510.11
DeploymentScriptDetails = Web Server | $(BuildLocation)\_PublishedWebsites\UI.Web.Mvc4_Package\start.bat
LabEnvironmentUri = vstfs:///LabManagement/LabEnvironment/3
MaxWaitTime = 00:30:00
ThrowOnError = True
UseRoleForDeployment = True
Final Property Values
Values = Web Server | $(BuildLocation)\_PublishedWebsites\UI.Web.Mvc4_Package\start.bat
在啓動該BAT文件包含以下命令:
START UI.Web.Mvc4.deploy.cmd /y /m:2012_SERVER
你能提供更多的錯誤信息嗎?您應該能夠打開構建版本和「查看日誌」以準確查看發生了什麼以及在哪裏......您可能需要將構建過程中的「記錄詳細信息」更改爲「診斷」並再次運行。 – 2013-05-10 18:57:43
哦,你是在本地服務器上還是在http://tfs.visualstudio.com上運行? – 2013-05-10 19:00:51
我在本地運行TFS 2012和構建服務器。所以沒有云在這裏介紹。我添加了引發錯誤的日誌部分。 – 2013-05-12 08:35:50