| # 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: |
| - .github/* |
| - .ci-builds/.azure-pipelines.yml |
| - .ci-builds/.azure-valgrind.yml |
| - docs/* |
| - tools/* |
| - vendor/* |
| - .appveyor.xml |
| - .cpyskip.txt |
| - .travis.yml |
| - KEYS |
| - README.md |
| |
| jobs: |
| #------------------------------------------------------------------------- |
| # Note: The exhaustive tests can take more than 1 hour to complete. |
| - job: ICU4J_OpenJDK_Ubuntu_1604 |
| displayName: 'J: Linux OpenJDK (Ubuntu 16.04)' |
| timeoutInMinutes: 120 |
| pool: |
| vmImage: 'Ubuntu 16.04' |
| demands: ant |
| steps: |
| - checkout: self |
| lfs: true |
| fetchDepth: 10 |
| - 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 can take more than 1 hour to complete. |
| - job: ICU4C_Clang_Exhaustive_Ubuntu_1604 |
| displayName: 'C: Linux Clang Exhaustive Tests (Ubuntu 16.04)' |
| timeoutInMinutes: 120 |
| pool: |
| vmImage: 'Ubuntu 16.04' |
| steps: |
| - checkout: self |
| lfs: true |
| fetchDepth: 10 |
| - 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++ |
| #------------------------------------------------------------------------- |
| |