parameters: - name: CloudConfig type: object - name: Matrix type: string - name: DependsOn type: string default: '' - name: UsePlatformContainer type: boolean default: false jobs: - job: dependsOn: ${{ parameters.DependsOn }} condition: ne(${{ parameters.Matrix }}, '{}') strategy: matrix: $[ ${{ parameters.Matrix }} ] pool: name: $(Pool) vmImage: $(OSVmImage) ${{ if eq(parameters.UsePlatformContainer, 'true') }}: container: $[ variables['Container'] ] steps: - pwsh: | Write-Output "MATRIX JOB PARAMETERS" Write-Output $(Agent.JobName) Write-Output "-----------------" Write-Output $(OSVmImage) Write-Output $(TestTargetFramework) try { Write-Output $(additionalTestArguments) } catch {} displayName: Print matrix job variables - pwsh: | Write-Output "Success" displayName: linux OS condition example condition: and(succeededOrFailed(), contains(variables['OSVmImage'], 'Ubuntu'))