Skip to content

Commit

Permalink
Add default cloud configuration values to source (#25347)
Browse files Browse the repository at this point in the history
Co-authored-by: Ben Broderick Phillips <bebroder@microsoft.com>
  • Loading branch information
azure-sdk and benbp authored Nov 12, 2021
1 parent 9600094 commit aeddab2
Show file tree
Hide file tree
Showing 4 changed files with 60 additions and 4 deletions.
26 changes: 22 additions & 4 deletions eng/common/TestResources/New-TestResources.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -84,11 +84,13 @@ if (!$PSBoundParameters.ContainsKey('ErrorAction')) {
$ErrorActionPreference = 'Stop'
}

function Log($Message) {
function Log($Message)
{
Write-Host ('{0} - {1}' -f [DateTime]::Now.ToLongTimeString(), $Message)
}

function Retry([scriptblock] $Action, [int] $Attempts = 5) {
function Retry([scriptblock] $Action, [int] $Attempts = 5)
{
$attempt = 0
$sleep = 5

Expand All @@ -109,7 +111,20 @@ function Retry([scriptblock] $Action, [int] $Attempts = 5) {
}
}

function MergeHashes([hashtable] $source, [psvariable] $dest) {
function LoadCloudConfig([string] $env)
{
$configPath = "$PSScriptRoot/clouds/$env.json"
if (!(Test-Path $configPath)) {
Write-Warning "Could not find cloud configuration for environment '$env'"
return @{}
}

$config = Get-Content $configPath | ConvertFrom-Json -AsHashtable
return $config
}

function MergeHashes([hashtable] $source, [psvariable] $dest)
{
foreach ($key in $source.Keys) {
if ($dest.Value.ContainsKey($key) -and $dest.Value[$key] -ne $source[$key]) {
Write-Warning ("Overwriting '$($dest.Name).$($key)' with value '$($dest.Value[$key])' " +
Expand All @@ -119,7 +134,8 @@ function MergeHashes([hashtable] $source, [psvariable] $dest) {
}
}

function BuildBicepFile([System.IO.FileSystemInfo] $file) {
function BuildBicepFile([System.IO.FileSystemInfo] $file)
{
if (!(Get-Command bicep -ErrorAction Ignore)) {
Write-Error "A bicep file was found at '$($file.FullName)' but the Azure Bicep CLI is not installed. See https://aka.ms/install-bicep-pwsh"
throw
Expand Down Expand Up @@ -492,6 +508,8 @@ try {
$templateParameters.Add('testApplicationSecret', $TestApplicationSecret)
}

$defaultCloudParameters = LoadCloudConfig $Environment
MergeHashes $defaultCloudParameters $(Get-Variable templateParameters)
MergeHashes $ArmTemplateParameters $(Get-Variable templateParameters)
MergeHashes $AdditionalParameters $(Get-Variable templateParameters)

Expand Down
15 changes: 15 additions & 0 deletions eng/common/TestResources/clouds/AzureChinaCloud.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"azConfigEndpointSuffix": ".azconfig.azure.cn",
"azureAuthorityHost": "https://login.chinacloudapi.cn/",
"cognitiveServicesEndpointSuffix": ".cognitiveservices.azure.cn",
"containerRegistryEndpointSuffix": ".azurecr.cn",
"cosmosEndpointSuffix": "cosmos.azure.cn",
"enableStorageVersioning": false,
"keyVaultDomainSuffix": ".vault.azure.cn",
"keyVaultEndpointSuffix": ".vault.azure.cn",
"keyVaultSku": "standard",
"searchEndpointSuffix": "search.azure.cn",
"serviceBusEndpointSuffix": ".servicebus.chinacloudapi.cn",
"storageEndpointSuffix": "core.chinacloudapi.cn",
"textAnalyticsSku": "S"
}
8 changes: 8 additions & 0 deletions eng/common/TestResources/clouds/AzureCloud.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"azureAuthorityHost": "https://login.microsoftonline.com/",
"cognitiveServicesEndpointSuffix": ".cognitiveservices.azure.com",
"communicationServicesEndpointSuffix": ".communication.azure.com",
"keyVaultDomainSuffix": ".vault.azure.net",
"keyVaultEndpointSuffix": ".vault.azure.net",
"storageEndpointSuffix": "core.windows.net"
}
15 changes: 15 additions & 0 deletions eng/common/TestResources/clouds/AzureUSGovernment.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"azConfigEndpointSuffix": ".azconfig.azure.us",
"azureAuthorityHost": "https://login.microsoftonline.us/",
"cognitiveServicesEndpointSuffix": ".cognitiveservices.azure.us",
"containerRegistryEndpointSuffix": ".azurecr.us",
"cosmosEndpointSuffix": "cosmos.azure.us",
"enableStorageVersioning": false,
"formRecognizerLocation": "usgovvirginia",
"keyVaultDomainSuffix": ".vault.usgovcloudapi.net",
"keyVaultEndpointSuffix": ".vault.usgovcloudapi.net",
"keyVaultSku": "premium",
"searchEndpointSuffix": "search.azure.us",
"serviceBusEndpointSuffix": ".servicebus.usgovcloudapi.net",
"storageEndpointSuffix": "core.usgovcloudapi.net"
}

0 comments on commit aeddab2

Please sign in to comment.