Private/Copy-Binaries.ps1
function Copy-Binaries { param( $Destination ) $ErrorActionPreference = "Stop" $destContext = New-AzStorageContext -StorageAccountName $Destination try { New-AzStorageContainer -Name "unified-contacts" -Context $destContext -Permission Blob } catch { #fall throug } $releaseChannel = Get-DefaultReleaseChannel Start-AzStorageBlobCopy -AbsoluteUri $releaseChannel.latestVersionRef -DestContainer "unified-contacts" -DestBlob "binaries.zip" -DestContext $destContext -Force | Out-Null } function Get-DefaultReleaseChannel { $response = Invoke-WebRequest -Uri "https://unifiedcontacts.blob.core.windows.net/unified-contacts-releases/version.json" -UseBasicParsing if ($response.StatusCode -lt 200 -or $response.StatusCode -ge 300) { throw "Could not accquire versionManifest" } $versionManifest = $response.Content | ConvertFrom-Json $defaultChannels = [array] $versionManifest.channels | Where-Object { $_.default } if ($defaultChannels.Count -eq 0) { throw "No default channel found" } if ($defaultChannels.Count -ge 2) { Write-Warning "Multiple default channels found" } return $defaultChannels[0] } |