# Azure Pipelines configuration for Exhaustive Tests for ICU. # # Note: The exhaustive test configuration is in a separate file # so that it can be run independently from the regular builds. # # Only run the exhaustive tests on the master and maint branches, and # also batch up any pending changes so that we will only have at most # one build running at a given time (since they take a long time). trigger: batch: true branches: include: - master - maint/maint-* paths: include: - '*' exclude: - docs/* - tools/* - vendor/* - .appveyor.xml - .cpyskip.txt - .travis.yml - KEYS - README.md jobs: #------------------------------------------------------------------------- # Note: The exhaustive tests for J take longer than the C tests. They # take roughly 85 min to complete on the Azure VMs. - job: ICU4J_OpenJDK_Ubuntu_1604 displayName: 'J: Linux OpenJDK (Ubuntu 16.04)' timeoutInMinutes: 100 pool: vmImage: 'Ubuntu 16.04' demands: ant steps: - checkout: self lfs: true fetchDepth: 1 - script: | echo "Building ICU4J" && cd icu4j && ant init && ant exhaustiveCheck displayName: 'Build and Exhaustive Tests' env: BUILD: ICU4J - script: | [ -d icu4j/out/junit-results ] && cd icu4j && cat `find out/junit-results -name "*.txt" -exec grep -l FAILED {} \;` condition: failed() # only run if the build fails. displayName: 'List failures (if any)' timeoutInMinutes: 2 #------------------------------------------------------------------------- # Note: The exhaustive tests take roughly 65 mins to complete on the # Azure VMs. - job: ICU4C_Clang_Exhaustive_Ubuntu_1604 displayName: 'C: Linux Clang Exhaustive Tests (Ubuntu 16.04)' timeoutInMinutes: 80 pool: vmImage: 'Ubuntu 16.04' steps: - checkout: self lfs: true fetchDepth: 1 - script: | cd icu4c/source && ./runConfigureICU Linux && make -j2 displayName: 'Build' - script: | cd icu4c/source && make check-exhaustive displayName: 'Exhaustive Tests' env: CC: clang CXX: clang++ #-------------------------------------------------------------------------