Skip to content

Commit

Permalink
ICU-22314 Refactor Azure CI into workflows conditional on modified paths
Browse files Browse the repository at this point in the history
See #2701
  • Loading branch information
rp9-next committed Feb 16, 2024
1 parent 90b2eed commit df46d08
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 23 deletions.
Original file line number Diff line number Diff line change
@@ -1,31 +1,16 @@
# Azure Pipelines (VSTS) configuration for CI builds for ICU.

trigger:
paths:
include:
- icu4c/*


variables:
MAVEN_ARGS: '--show-version --no-transfer-progress'

jobs:
#-------------------------------------------------------------------------
- job: ICU4J_OpenJDK_Ubuntu_2204
displayName: 'J: Linux OpenJDK (Ubuntu 22.04)'
timeoutInMinutes: 20
pool:
vmImage: 'ubuntu-22.04'
demands: ant
steps:
- checkout: self
lfs: true
fetchDepth: 10
- script: |
echo "Building ICU4J" && cd icu4j && mvn install
displayName: 'Build and Test'
env:
BUILD: ICU4J
# exit with a non-zero status in order to make this step show as a red X in the UI.
- script: |
cd icu4j && cat `find . -name surefire-reports -type d -exec grep -l -r --include="*.txt" FAILED {} \;` && exit 1
condition: failed() # only run if the build fails.
displayName: 'List failures (if any)'
#-------------------------------------------------------------------------
- job: ICU4C_Clang_Ubuntu_2204
displayName: 'C: Linux Clang (Ubuntu 22.04)'
timeoutInMinutes: 30
Expand Down Expand Up @@ -587,11 +572,11 @@ jobs:
- task: Cache@2
displayName: 'Restore Cygwin cache'
inputs:
# Use the contents of the file ".azure-pipelines.yml" as part of the key, as that contains the list of CYG_PACKAGES.
# Use the contents of the file ".azure-pipelines-icu4c.yml" as part of the key, as that contains the list of CYG_PACKAGES.
# Also include the Cygwin version as part of the key. If we want to use a newer version of Cygwin, we can update CYG_VERSION_KEY.
# Note: CYG_VERSION_KEY may become out of sync with (older than) the version we actually use if we update this file
# without updating CYG_VERSION_KEY. Any updates to this file guarantees that we're using the latest version.
key: '"$(CYG_VERSION_KEY)" | .ci-builds/.azure-pipelines.yml'
key: '"$(CYG_VERSION_KEY)" | .ci-builds/.azure-pipelines-icu4c.yml'
path: "$(CYG_CACHE)"
- task: PowerShell@2
displayName: 'Download Cygwin setup'
Expand Down
32 changes: 32 additions & 0 deletions .ci-builds/.azure-pipelines-icu4j.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Azure Pipelines (VSTS) configuration for CI builds for ICU.

trigger:
paths:
include:
- icu4j/*

variables:
MAVEN_ARGS: '--show-version --no-transfer-progress'

jobs:
#-------------------------------------------------------------------------
- job: ICU4J_OpenJDK_Ubuntu_2204
displayName: 'J: Linux OpenJDK (Ubuntu 22.04)'
timeoutInMinutes: 20
pool:
vmImage: 'ubuntu-22.04'
demands: ant
steps:
- checkout: self
lfs: true
fetchDepth: 10
- script: |
echo "Building ICU4J" && cd icu4j && mvn install
displayName: 'Build and Test'
env:
BUILD: ICU4J
# exit with a non-zero status in order to make this step show as a red X in the UI.
- script: |
cd icu4j && cat `find . -name surefire-reports -type d -exec grep -l -r --include="*.txt" FAILED {} \;` && exit 1
condition: failed() # only run if the build fails.
displayName: 'List failures (if any)'

0 comments on commit df46d08

Please sign in to comment.