Невозможно загрузить содержимое развертывания из URI частного репозитория github - PullRequest
0 голосов
/ 06 ноября 2018

Я создал новый частный репозиторий GitHub, в который я добавил шаблоны ARM для хранилища ключей Azure. После этого я пытаюсь развернуть шаблон ARM с моего локального компьютера с помощью инструмента PowerShell.

Это сценарий PowerShell, который я использовал для развертывания шаблона ARM в Azure.

#Login-AzureRmAccount

#region Parameters
$resourceGroupName='KZEU-ARMTMP-SB-DEV-RGP-01'
$location='eastus'
$parametersUri='E:\Kishore\Kishore GitHub\ARMTemplates\Parameters\StorageAccount.parameters.json'
$templateUri='https://raw.githubusercontent.com/xxxxxxx/ARMTemplates/master/Templates/StorageAccount.json?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
$clientID = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
$key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx="
#endregion

#region Login into Azure
 $SecurePassword = $key | ConvertTo-SecureString -AsPlainText -Force
 $cred = new-object -typename System.Management.Automation.PSCredential `
 -argumentlist $clientID, $SecurePassword

 Add-AzureRmAccount -Credential $cred -Tenant "xxxxxxxxxxxxxxxxxxxxxx" -  ServicePrincipal

 Set-AzureRmContext -SubscriptionID 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
 #endregion

 #region Check or Create Resource Group
 Get-AzureRmResourceGroup -Name $resourceGroupName -ev notPresent -ea 0
 if($notPresent){ 
 Write-Host "Failover RG '$resourceGroupName' doesn't exist. Creating a new in $location...." -ForegroundColor Yellow
 New-AzureRmResourceGroup -Name $resourceGroupName -Location $location
 }else{
Write-Host "Using existing resource group '$resourceGroupName'" -ForegroundColor Yellow;
 }

#endregion

#region Validate & Deploy ARM Templates
try{
  $templateValidationResult= Test-AzureRmResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateFile $templateUri -TemplateParameterFile $parametersUri -Verbose
if($templateValidationResult[0].Code-eq"InvalidTemplateDeployment"){
    Write-Host "Failed to validate ARM template"
    exit 1
}else{
    Write-Host "Successfully completed to validate ARM template"
    $deploymentResult= New-AzureRmResourceGroupDeployment -Name StorageAccount-Deployment -ResourceGroupName $resourceGroupName -TemplateFile $templateUri -TemplateParameterFile $parametersUri -Verbose
    if($deploymentResult.ProvisioningState-eq"Succeeded"){
        Write-Host "Successfully completed to deploy ARM template"
    }else{              
        Write-Host "Failed to deploy ARM template"
        exit 1
    }       
}
 }
 catch{
  $ex = $_.Exception | Format-List -Force
  Write-Host $ex
  }

 #endregion

Когда я запускаю вышеупомянутый скрипт PowerShell, я получаю сообщение об ошибке, подобное

Невозможно загрузить содержимое развертывания из "https://raw.githubusercontent.com/xxxx/demo-in/master/xxxx/keyVault.json"

Unable to download template

Итак, кто-нибудь может подсказать мне, как решить вышеуказанную проблему?

1 Ответ

0 голосов
/ 06 ноября 2018

Ваша проблема в том, что вы не можете выполнить развертывание из частного репозитория ( см. Документ ). То, что вы пытаетесь сделать, это передать URI шаблона для чтения в Azure, и у него нет разрешения на чтение из вашего личного репозитория. У вас есть пара вариантов:

  1. Сделайте так, как говорят документы, и сохраните файл deploy.json в Хранилище Azure и защитите его токеном SAS.
  2. Вы можете клонировать репо локально и развернуть из локального файла.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...