PowerShell을 사용하여 Bamboo 배포 서버 스크립트 작업에서 Azure 응용 프로그램 서비스에 응용 프로그램 서비스 업데이트를 배포하는 방법을 찾으려고합니다.Bamboo 배포 서버에서 Azure kudu zipdeploy를 사용하는 방법
인증 부분에 문제가 있습니다.
참고 : 스크립트 아이디어는 https://markheath.net/post/deploy-azure-webapp-kudu-zip-api입니다.
다음은 내 PowerShell 스크립트입니다. 나는이 스크립트를 실행하면
$PublishingUsername = ["The value of the userName property name in the Azure PublishSettings file"]
$PublishingPassword = ["The value of the userPWD property name in the Azure PublishSettings file"]
$SlotName = ["The name of the slot. I.e. qa"]
$WebAppName = ["The name of the app service in Azure"]
$LocalPath = ["The location of zip file that holds the VS2017 Publish Output files"]
function Upload-ZipDeploy() {
$pair = "$($PublishingUsername):$($PublishingPassword)"
$encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$basicAuthValue = "Basic $encodedCreds"
$Headers = @{
Authorization = $basicAuthValue
}
if ($SlotName -eq ""){
$kuduApiUrl = "https://$WebAppName.scm.azurewebsites.net/api/zipdeploy"
}
else{
$kuduApiUrl = "https://$WebAppName`-$SlotName.scm.azurewebsites.net/api/zipdeploy"
}
# use kudu deploy from zip file
Invoke-WebRequest -Uri $kuduApiUrl -Headers $Headers `
-InFile $LocalPath -ContentType "multipart/form-data" -Method Post
}
Upload-ZipDeploy
내가
Invoke-WebRequest : Server Error
401 - Unauthorized: Access is denied due to invalid credentials.
You do not have permission to view this directory or page using the
credentials that you supplied.
내가 * .PublishSettings에서 사용자 이름과 userPWD 값을 사용하고 얻을 나는 푸른에서 응용 프로그램 서비스 배포 슬롯 설정에 다운로드 한 파일. VS2017의 게시 마법사에서이 * .PublishSettings 파일을 가져 와서 해당 슬롯에 성공적으로 게시 할 수 있습니다. PowerShell에서 그렇게 할 수없는 것 같습니다.
무엇이 여기에 있습니까?
후미 포트 번호가 필요하지 않습니다. 또한 기본 인증 자격 증명을 URL (https : // \'$ WebAppName : \'$ PublishingPassword @ site.scm.azurewebsites.net/api/zipdeploy')에 직접 전달하여 Kudu에 대한 인증 된 전화를 걸 수 있습니다. – evilSnobu