Skip to content

Commit

Permalink
Use federated auth and TME for smoke testing (Azure#42519)
Browse files Browse the repository at this point in the history
- Move to using federated auth
- Move to using TME sub
- Remove other clouds as the public should be enough for smoke testing
- Add https to the fake authority host to pass url validation
  • Loading branch information
weshaggard authored Oct 23, 2024
1 parent 882b322 commit cad4cc9
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 87 deletions.
68 changes: 11 additions & 57 deletions common/smoke-tests/smoke-test-dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,98 +2,52 @@ jobs:
- template: ./smoke-test-job.yml
parameters:
TestTask:
task: Maven@4
displayName: 'Run Smoke Tests'
task: AzurePowerShell@5
displayName: 'Run Smoke Test Samples'
inputs:
mavenPomFile: $(PomFile)
goals: 'exec:java'
options: '$(DefaultOptions) -Dexec.mainClass="com.azure.smoketest.App"'
javaHomeOption: 'JDKVersion'
jdkVersionOption: $(JavaTestVersion)
jdkArchitectureOption: 'x64'
publishJUnitResults: false
azureSubscription: azure-sdk-tests-public
azurePowerShellVersion: LatestVersion
pwsh: true
ScriptType: InlineScript
Inline: |
mvn --% -f $(PomFile) $(DefaultOptions) -Dexec.mainClass=com.azure.smoketest.App exec:java
exit $LASTEXITCODE
env:
# Enable samples tests that use DefaultAzureCredential to load the federated pipeline credential
AZURE_POD_IDENTITY_AUTHORITY_HOST: 'https://FakeAuthorityHost'
AZURE_LOG_LEVEL: 2

Matrix:
Java 8 Windows (AzureCloud):
JavaTestVersion: '1.8'
Pool: "azsdk-pool-mms-win-2022-general"
OSVmImage: "windows-2022"
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources)
ArmTemplateParameters: $(azureCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java LTS Windows (AzureCloud):
Pool: "azsdk-pool-mms-win-2022-general"
OSVmImage: "windows-2022"
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources)
ArmTemplateParameters: $(azureCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java 8 Linux (AzureCloud):
Pool: "azsdk-pool-mms-ubuntu-2004-general"
OSVmImage: "MMSUbuntu20.04"
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources)
ArmTemplateParameters: $(azureCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java LTS Linux (AzureCloud):
Pool: "azsdk-pool-mms-ubuntu-2004-general"
OSVmImage: "MMSUbuntu20.04"
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources)
ArmTemplateParameters: $(azureCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java LTS Linux (AzureCloud Canary):
Pool: "azsdk-pool-mms-ubuntu-2004-general"
OSVmImage: "MMSUbuntu20.04"
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources-preview)
ArmTemplateParameters: $(azureCloudArmParameters)
Location: 'eastus2euap'
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java 8 MacOS (AzureCloud):
JavaTestVersion: '1.8'
Pool: Azure Pipelines
OSVmImage: macos-latest
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources)
ArmTemplateParameters: $(azureCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java LTS MacOS (AzureCloud):
JavaTestVersion: '1.11'
Pool: Azure Pipelines
OSVmImage: macos-latest
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources)
ArmTemplateParameters: $(azureCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java 8 Windows (AzureUSGovernment):
Pool: "azsdk-pool-mms-win-2022-general"
OSVmImage: "windows-2022"
SubscriptionConfiguration: $(sub-config-gov-test-resources)
ArmTemplateParameters: $(azureUSGovernmentArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java LTS Windows (AzureUSGovernment):
Pool: "azsdk-pool-mms-win-2022-general"
OSVmImage: "windows-2022"
SubscriptionConfiguration: $(sub-config-gov-test-resources)
ArmTemplateParameters: $(azureUSGovernmentArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java 8 Windows (AzureChinaCloud):
Pool: "azsdk-pool-mms-win-2022-general"
OSVmImage: "windows-2022"
SubscriptionConfiguration: $(sub-config-cn-test-resources)
ArmTemplateParameters: $(azureChinaCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
Java LTS Windows (AzureChinaCloud):
Pool: "azsdk-pool-mms-win-2022-general"
OSVmImage: "windows-2022"
SubscriptionConfiguration: $(sub-config-cn-test-resources)
ArmTemplateParameters: $(azureChinaCloudArmParameters)
PomFile: common/smoke-tests/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
12 changes: 2 additions & 10 deletions common/smoke-tests/smoke-test-job.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ parameters:
type: number
default: 90


jobs:
- job: SmokeTest
timeoutInMinutes: ${{ parameters.Timeout }}
Expand All @@ -23,12 +22,6 @@ jobs:
name: $(Pool)
vmImage: $(OSVmImage)

variables:
azureCloudArmParameters: "@{ storageEndpointSuffix = 'core.windows.net'; azureCloud = 'AzureCloud'; }"
azureUSGovernmentArmParameters: "@{ storageEndpointSuffix = 'core.usgovcloudapi.net'; azureCloud = 'AzureUSGovernment'; }"
azureChinaCloudArmParameters: "@{ storageEndpointSuffix = 'core.chinacloudapi.cn'; azureCloud = 'AzureChinaCloud'; }"


steps:
- template: /eng/common/pipelines/templates/steps/verify-agent-os.yml
parameters:
Expand Down Expand Up @@ -85,12 +78,11 @@ jobs:
- template: /eng/common/TestResources/deploy-test-resources.yml
parameters:
ServiceDirectory: $(ServiceDirectory)
ArmTemplateParameters: $(ArmTemplateParameters)
SubscriptionConfiguration: $(SubscriptionConfiguration)
ServiceConnection: azure-sdk-tests-public

- ${{ parameters.TestTask }}

- template: /eng/common/TestResources/remove-test-resources.yml
parameters:
ServiceDirectory: '$(Build.SourcesDirectory)/common/smoke-tests/'
SubscriptionConfiguration: $(SubscriptionConfiguration)
ServiceConnection: azure-sdk-tests-public
20 changes: 10 additions & 10 deletions common/smoke-tests/smoke-test-samples.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,25 +5,25 @@ jobs:
MaxParallel: 2

TestTask:
task: Maven@4
task: AzurePowerShell@5
displayName: 'Run Smoke Test Samples'
inputs:
mavenPomFile: $(PomFile)
goals: 'test'
options: '$(DefaultOptions) -Dtest=**/*Example.java,**/*Sample.java'
javaHomeOption: 'JDKVersion'
jdkVersionOption: $(JavaTestVersion)
jdkArchitectureOption: 'x64'
publishJUnitResults: false
azureSubscription: azure-sdk-tests-public
azurePowerShellVersion: LatestVersion
pwsh: true
ScriptType: InlineScript
Inline: |
mvn --% -f $(PomFile) $(DefaultOptions) -Dtest=**/*Example.java,**/*Sample.java' test
exit $LASTEXITCODE
env:
# Enable samples tests that use DefaultAzureCredential to load the federated pipeline credential
AZURE_POD_IDENTITY_AUTHORITY_HOST: 'FakeAuthorityHost'
AZURE_LOG_LEVEL: 2

Matrix:
Service Bus:
JavaTestVersion: '1.8'
Pool: "azsdk-pool-mms-win-2022-general"
OSVmImage: "windows-2022"
SubscriptionConfiguration: $(sub-config-azure-cloud-test-resources)
ArmTemplateParameters: $(azureCloudArmParameters)
PomFile: sdk/servicebus/azure-messaging-servicebus/pom.xml
ServiceDirectory: '$(Build.SourcesDirectory)/sdk/servicebus/'
15 changes: 5 additions & 10 deletions common/smoke-tests/test-resources.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,19 @@
"testApplicationId": {
"type": "string"
},
"testApplicationSecret": {
"type": "string"
},
"testApplicationOid": {
"type": "string"
},
"tenantId": {
"type": "string"
},
"storageEndpointSuffix": {
"type": "string"
"type": "string",
"defaultValue": "core.windows.net"
},
"azureCloud": {
"type": "string"
"type": "string",
"defaultValue": "AzureCloud"
}
},
"variables": {
Expand Down Expand Up @@ -245,10 +244,6 @@
"type": "string",
"value": "[parameters('testApplicationId')]"
},
"AZURE_CLIENT_SECRET": {
"type": "string",
"value": "[parameters('testApplicationSecret')]"
},
"AZURE_CLOUD": {
"type": "string",
"value": "[parameters('azureCloud')]"
Expand All @@ -266,4 +261,4 @@
"value": "[concat('DefaultEndpointsProtocol=https;AccountName=', variables('storageAccountName'), ';AccountKey=', listKeys(resourceId('Microsoft.Storage/storageAccounts', variables('storageAccountName')), '2019-06-01').keys[0].value, ';EndpointSuffix=', parameters('storageEndpointSuffix'))]"
}
}
}
}

0 comments on commit cad4cc9

Please sign in to comment.