Skip to content

Commit

Permalink
Fix live test job blocked issue and script issue (#25593)
Browse files Browse the repository at this point in the history
  • Loading branch information
vidai-msft committed Jul 19, 2024
1 parent 5c24d36 commit 63e34d3
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 41 deletions.
4 changes: 0 additions & 4 deletions src/Aks/Aks.Test/LiveTests/TestLiveScenarios.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ Invoke-LiveTestScenario -Name "Test_AKS_CURD" -Description "Test AKS Cluster CRU
$kubeClusterName = New-LiveTestResourceName

# step 1: create a default aks cluster with default node pool

'y' | ssh-keygen -t rsa -f id_rsa -q -N '"123456"'
$sshKeyValue = Get-Content id_rsa.pub -Raw

Expand Down Expand Up @@ -66,8 +65,6 @@ Invoke-LiveTestScenario -Name "Test_AKS_CURD" -Description "Test AKS Cluster CRU
Assert-Null $pools.PodSubnetID
Assert-Null $pools.MaxCount
Assert-Null $pools.MinCount
Assert-Null $pools.EnableAutoScaling
# Assert-Null $pools.UpgradeSettings
Assert-Null $pools.EnableNodePublicIP
Assert-Null $pools.ScaleSetPriority
Assert-Null $pools.ScaleSetEvictionPolicy
Expand Down Expand Up @@ -149,5 +146,4 @@ Invoke-LiveTestScenario -Name "Test_AKS_CURD" -Description "Test AKS Cluster CRU
Write-Host "##[section]Start to remove Aks cluster : Remove-AzAksCluster"
$cluster | Remove-AzAksCluster -Force
Write-Host "##[section]Finished removing Aks cluster : Remove-AzAksCluster"

}
71 changes: 35 additions & 36 deletions src/Storage/Storage.Management.Test/LiveTests/BlobTests.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -10,112 +10,111 @@ Invoke-LiveTestScenario -Name "Blob basics" -Description "Test blob basic operat
$ContentMD5 = "i727sP7HigloQDsqadNLHw=="
$testfile512path = "$PSScriptRoot\TestFiles\testfile512"

$account = New-AzStorageAccount -ResourceGroupName $rgName -Name $storageAccountName -Location $location -SkuName Standard_GRS -AllowBlobPublicAccess $true
$ctx = $account.Context
$container = New-AzStorageContainer -Name $containerName -Context $ctx
$containerSAS = New-AzStorageContainerSASToken -Name $containerName -Permission radwl -ExpiryTime 5000-01-01 -Context $ctx
$sasCtx = New-AzStorageContext -SasToken $containerSAS -StorageAccountName $storageAccountName
$account = New-AzStorageAccount -ResourceGroupName $rgName -Name $storageAccountName -Location $location -SkuName Standard_GRS
$ctx = $account.Context
$container = New-AzStorageContainer -Name $containerName -Context $ctx
$containerSAS = New-AzStorageContainerSASToken -Name $containerName -Permission radwl -ExpiryTime 5000-01-01 -Context $ctx
$sasCtx = New-AzStorageContext -SasToken $containerSAS -StorageAccountName $storageAccountName

# container ACL and stored access policy
$accessPolicyName = "policy1"
New-AzStorageContainerStoredAccessPolicy -Container $containerName -Policy $accessPolicyName -Context $ctx -Permission rw
$accessPolicy = Get-AzStorageContainerStoredAccessPolicy -Container $containerName -Context $ctx
$accessPolicy = Get-AzStorageContainerStoredAccessPolicy -Container $containerName -Context $ctx
Assert-AreNotEqual $null $accessPolicy
Assert-AreEqual $accessPolicyName $accessPolicy.Policy
Set-AzStorageContainerAcl -Name $containerName -Permission Blob -Context $ctx
$container = Get-AzStorageContainer -Name $containerName -Context $ctx
Set-AzStorageContainerAcl -Name $containerName -Permission Blob -Context $ctx
$container = Get-AzStorageContainer -Name $containerName -Context $ctx
Assert-AreEqual "Blob" $container.Permission.PublicAccess

# upload
$blobName = New-LiveTestResourceName
# upload
$blobName = New-LiveTestResourceName
$blobName2 = New-LiveTestResourceName
$blobName3 = "blob3" + $blobName
$b = Set-AzStorageBlobContent -File $testfile512path -Container $containerName -Blob $blobName -StandardBlobTier Cool -Properties @{"ContentType" = $ContentType; "ContentMD5" = $ContentMD5} -Context $ctx -Force
Assert-AreEqual $blobName $b.Name
$b = Set-AzStorageBlobContent -File $testfile512path -Container $containerName -Blob $blobName -StandardBlobTier Cool -Properties @{"ContentType" = $ContentType; "ContentMD5" = $ContentMD5 } -Context $ctx -Force
Assert-AreEqual $blobName $b.Name
Assert-AreEqual 512 $b.Length
Assert-AreEqual $ContentType $b.BlobProperties.ContentType
Assert-AreEqual "Cool" $b.BlobProperties.AccessTier
$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx
$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx
Assert-AreEqual 1 $blobs.Count
Assert-AreEqual $blobName $blobs[0].Name
Assert-AreEqual $ContentType $blobs[0].BlobProperties.ContentType
Assert-AreEqual "Cool" $blobs[0].BlobProperties.AccessTier

$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName -Context $sasCtx
Assert-AreEqual $blobName $blob.Name
Assert-AreEqual 512 $blob.Length
Assert-AreEqual $blobName $blob.Name
Assert-AreEqual 512 $blob.Length
Assert-AreEqual $ContentType $blob.BlobProperties.ContentType

$b.BlobBaseClient.SetAccessTier("Hot")
$b.FetchAttributes()
Assert-AreEqual "Hot" $b.BlobProperties.AccessTier

$b2 = Set-AzStorageBlobContent -File $testfile512path -Container $containerName -Blob $blobName2 -Force -Context $ctx
$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx
$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx
Assert-AreEqual 2 $blobs.Count
$b3 = Set-AzStorageBlobContent -File $testfile512path -Container $containerName -Blob $blobName3 -Force -Context $sasCtx
$b2.BlobBaseClient.CreateSnapshot()

$blobs = Get-AzStorageBlob -Container $containerName -Prefix "blob3" -Context $ctx
$blobs = Get-AzStorageBlob -Container $containerName -Prefix "blob3" -Context $ctx
Assert-AreEqual 1 $blobs.Count
Assert-AreEqual $blobName3 $blobs[0].Name

$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx
$snapshotblob = $blobs | ?{$_.SnapshotTime -ne $null} | Select-Object -First 1
$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName2 -SnapshotTime $snapshotblob.SnapshotTime -Context $ctx
Assert-AreEqual $blobName2 $blob.Name
$snapshotblob = $blobs | ? { $_.SnapshotTime -ne $null } | Select-Object -First 1
$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName2 -SnapshotTime $snapshotblob.SnapshotTime -Context $ctx
Assert-AreEqual $blobName2 $blob.Name
Assert-AreEqual $snapshotblob.SnapshotTime $blob.SnapshotTime

$blob = Set-AzStorageBlobContent -File $testfile512path -Container $containerName -Blob $blobName3 -Tag @{"Tag1"="Value2";"Tag2"="Value2"} -Context $ctx -Force
$blob = Get-AzStorageBlob -Blob $blobName3 -Container $containerName -IncludeTag -Context $ctx
Assert-AreEqual $blobName3 $blob.Name
$blob = Set-AzStorageBlobContent -File $testfile512path -Container $containerName -Blob $blobName3 -Tag @{"Tag1" = "Value2"; "Tag2" = "Value2" } -Context $ctx -Force
$blob = Get-AzStorageBlob -Blob $blobName3 -Container $containerName -IncludeTag -Context $ctx
Assert-AreEqual $blobName3 $blob.Name
Assert-AreEqual 2 $blob.TagCount
Assert-AreEqual 2 $blob.Tags.Count

Update-AzStorageBlobServiceProperty -ResourceGroupName $rgName -StorageAccountName $storageAccountName -IsVersioningEnabled $true
sleep 30
$blob = Set-AzStorageBlobContent -File $testfile512path -Container $containerName -Blob $blobName3 -Context $sasctx -Force
$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx -IncludeVersion
$versionBlob = $blobs | ?{$_.VersionId -ne $null} | Select-Object -First 1
$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName3 -VersionId $versionBlob.VersionId -Context $ctx
$versionBlob = $blobs | ? { $_.VersionId -ne $null } | Select-Object -First 1
$blob = Get-AzStorageBlob -Container $containerName -Blob $blobName3 -VersionId $versionBlob.VersionId -Context $ctx
Assert-AreEqual $blobName3 $blob.Name
Assert-AreEqual $versionBlob.VersionId $blob.VersionId

$b2 | Remove-AzStorageBlob -Force
$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx
$b2 | Remove-AzStorageBlob -Force
$blobs = Get-AzStorageBlob -Container $containerName -Context $ctx
Assert-AreEqual 2 $blobs.Count

$container = Get-AzStorageContainer -Name $containerName -Context $ctx
$containerProperties = $container.BlobContainerClient.GetProperties().Value
Assert-AreEqual $container.BlobContainerProperties.ETag $containerProperties.ETag
Set-AzStorageContainerAcl -Name $containerName -Permission Blob -Context $ctx
Set-AzStorageContainerAcl -Name $containerName -Permission Blob -Context $ctx
$containerProperties = $container.BlobContainerClient.GetProperties().Value
Assert-AreNotEqual $container.BlobContainerProperties.ETag $containerProperties.ETag
$container.FetchAttributes()
Assert-AreEqual $container.BlobContainerProperties.ETag $containerProperties.ETag

# sync copy
# sync copy
$copyBlobName1 = New-LiveTestResourceName
$copyBlobName2 = New-LiveTestResourceName
$b = Copy-AzStorageBlob -SrcContainer $containerName -SrcBlob $blobName -DestContainer $containerName -DestBlob $copyBlobName1 -Context $ctx -StandardBlobTier Hot -RehydratePriority High -Force
Assert-AreEqual $copyBlobName1 $b.Name
Assert-AreEqual "Hot" $b.AccessTier
Assert-AreEqual 512 $b.Length
$job = Copy-AzStorageBlob -SrcContainer $containerName -SrcBlob $blobName -DestContainer $containerName -DestBlob $copyBlobName1 -Context $ctx -StandardBlobTier Hot -RehydratePriority High -Force -AsJob
Wait-Job $job
$bcopy = Receive-Job -Job $job
$bcopy = Receive-Job -Job $job -Wait -AutoRemoveJob
Assert-AreEqual $copyBlobName1 $bcopy.Name

$blobSASUri = $b | New-AzStorageBlobSASToken -Permission rt -ExpiryTime 9999-01-01 -FullUri
$b2 = Copy-AzStorageBlob -AbsoluteUri $blobSASUri -DestContainer $containerName -DestBlob $copyBlobName2 -Context $ctx -Force
Assert-AreEqual $copyBlobName2 $b2.Name
Assert-AreEqual 512 $b2.Length

# async copy
# async copy
Start-AzStorageBlobCopy -SrcContainer $containerName -SrcBlob $blobName -DestContainer $containerName -DestBlob $copyBlobName1 -StandardBlobTier Cool -RehydratePriority High -Context $ctx -DestContext $ctx -Force
Get-AzStorageBlobCopyState -Container $containerName -Blob $copyBlobName1 -Context $ctx
sleep 5
Get-AzStorageBlobCopyState -Container $containerName -Blob $copyBlobName1 -Context $ctx
sleep 5
$b = Get-AzStorageBlob -Blob $copyBlobName1 -Container $containerName -Context $ctx
Assert-AreEqual $copyBlobName1 $b.Name
Assert-AreEqual "Cool" $b.AccessTier
}
}
2 changes: 1 addition & 1 deletion tools/TestFx/Live/LiveTestUtility.psm1
Original file line number Diff line number Diff line change
Expand Up @@ -302,7 +302,7 @@ function Invoke-LiveTestScenario {

do {
try {
$prefs = @([psvariable]::new("ErrorActionPreference", "Stop"), [psvariable]::new("ConfirmPreference", "None"))
$prefs = @([psvariable]::new("ErrorActionPreference", "Stop"))
if ($snrRetryCount -eq $script:ScenarioMaxRetryCount) {
$prefs += [psvariable]::new("DebugPreference", "Continue")
}
Expand Down

0 comments on commit 63e34d3

Please sign in to comment.