parameters: name: '' matrix: default: vmImage: '' container: '' artifactName: '' installSteps: [] examplesDir: '' executable: 'wavm' useContainer: false jobs: - job: ${{parameters.name}} strategy: matrix: ${{parameters.matrix}} pool: vmImage: $[variables['vmImage']] ${{if eq(parameters.useContainer, 'true')}}: container: $[variables['container']] timeoutInMinutes: 5 steps: - checkout: none - task: DownloadPipelineArtifact@2 displayName: Download package inputs: buildType: current targetPath: $(Build.ArtifactStagingDirectory) artifactName: ${{parameters.artifactName}} - ${{parameters.installSteps}} - script: | "${{parameters.executable}}" version displayName: "wavm version" condition: always() - script: | "${{parameters.executable}}" test benchmark displayName: "wavm test invoke-bench" condition: always() - script: | "${{parameters.executable}}" run "${{parameters.examplesDir}}/helloworld.wast" displayName: "wavm run helloworld" condition: always() - script: | "${{parameters.executable}}" run --enable simd "${{parameters.examplesDir}}/blake2b.wast" displayName: "wavm run blake2b" condition: always() - script: | "${{parameters.executable}}" run "${{parameters.examplesDir}}/trap.wast" || exit 0 exit 1 displayName: "wavm run trap" condition: always() - script: | "${{parameters.executable}}" run "${{parameters.examplesDir}}/zlib.wasm" displayName: "wavm run zlib" condition: always()