我为TeamCity写了一个小的PowerShell脚本来调用msdeploy.exe
我遇到的问题是当TeamCity执行我的脚本时(下面)我得到401未经授权的错误。我遇到的麻烦是,我知道这是正确的用户名和正确的密码 - 我甚至尝试将密码设置为“密码”这么简单,以证明我没有错误地输入密码。
我在某些地方读到它可能与网站名称有关,但如果我使用?site = test访问msdeploy网址,我可以使用凭据登录。我在脚本中遗漏了什么吗?我忘记了其他地方的事情吗?
$msdeploy = "C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe";
$site = "test"
$msdeployUrl = "https://someserver:8172/msdeploy.axd?site="
$user = "correct username"
$password = "correct password"
$msdeploy = "C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe";
$msdeployArguments =
'-allowUntrusted:true',
'-source:contentPath="D:\teamcity\buildAgent\work\e5be789e2c46e6c4\v1\web\"',
('-dest:auto,computerName="'+$msdeployUrl+$site+'",includeAcls="false",userName="'+ $user+'",password="'+$password+'",authtype="Basic"'),
'-verb:sync',
'-disableLink:AppPoolExtension',
'-disableLink:ContentExtension',
'-disableLink:CertificateExtension'
'-setParam:name="IIS Web Application' + ('Name",value="' + $site + '"');
Write-Host $msdeployArguments
& $msdeploy $msdeployArguments