@@ -31,23 +31,14 @@ jobs:
3131 ci : ${{ steps.filter.outputs.ci }}
3232 steps :
3333 - uses : actions/checkout@v4
34- - uses : dorny/paths-filter@v3
34+ - uses : dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1
3535 id : filter
3636 with :
37- # we want to run tests if source code is changed or the scripts
38- # used to run the unit tests
3937 filters : |
4038 src:
41- - '**/*.java'
42- - '**/pom.xml'
43- - '!java-bigquery/**'
44- - '!java-bigquerystorage/**'
45- - '!java-datastore/**'
46- - '!java-logging-logback/**'
47- - '!java-logging/**'
48- - '!java-spanner/**'
49- - '!java-storage/**'
50- - '!google-auth-library-java/**'
39+ - '!(java-bigquery|java-bigquerystorage|java-datastore|java-logging-logback|java-logging|java-spanner|java-storage|google-auth-library-java)/**/*.java'
40+ - '!(java-bigquery|java-bigquerystorage|java-datastore|java-logging-logback|java-logging|java-spanner|java-storage|google-auth-library-java)/**/pom.xml'
41+ - 'pom.xml'
5142 ci:
5243 - '.github/workflows/ci.yaml'
5344 - '.kokoro/**'
@@ -121,7 +112,7 @@ jobs:
121112 outputs :
122113 packages : ${{ steps.filter.outputs.changes }}
123114 steps :
124- - uses : dorny/paths-filter@v4
115+ - uses : dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1
125116 id : filter
126117 with :
127118 # For each library, run CI in split repos where there are changes in:
@@ -246,6 +237,37 @@ jobs:
246237 JOB_TYPE : test
247238 JOB_NAME : units-8-runtime-${{matrix.java}}
248239 working-directory : ${{matrix.package}}
240+ split-clirr :
241+ runs-on : ubuntu-latest
242+ needs : changes
243+ strategy :
244+ matrix :
245+ package : ${{ fromJSON(needs.changes.outputs.packages) }}
246+ steps :
247+ - name : Get current week within the year
248+ id : date
249+ run : echo "::set-output name=week_of_year::$(date +'%W' --utc)"
250+ - uses : actions/checkout@v4
251+ - uses : actions/setup-java@v4
252+ with :
253+ distribution : temurin
254+ java-version : 11
255+ - run : .kokoro/build.sh
256+ env :
257+ BUILD_SUBDIR : ${{matrix.package}}
258+ JOB_TYPE : clirr
259+ JOB_NAME : clirr-${{matrix.package}}
260+ required :
261+ needs : [ changes, split-units, split-clirr ]
262+ name : conditional-required-check
263+ if : ${{ always() }} # Always run even if any "needs" jobs fail
264+ runs-on : ubuntu-22.04
265+ steps :
266+ - name : Fail if any previous failure
267+ if : ${{ needs.changes.outputs.packages != '[]' && contains(needs.*.result, 'failure') }}
268+ run : exit 1
269+ - name : Success otherwise
270+ run : echo "Success!"
249271 windows :
250272 runs-on : windows-latest
251273 steps :
@@ -321,41 +343,14 @@ jobs:
321343 - name : validate generation configuration
322344 shell : bash
323345 run : |
324- docker run \
325- --rm \
346+ bash generation/run_generator_docker.sh "${library_generation_image_tag}" "${{ github.base_ref || 'main' }}" \
347+ -e GENERATOR_VERSION="${library_generation_image_tag}" \
326348 --quiet \
327349 -u "$(id -u):$(id -g)" \
328350 -v "$(pwd):${workspace_name}" \
329351 --entrypoint python \
330- gcr.io/cloud-devrel-public-resources/java-library-generation:"${library_generation_image_tag}" \
352+ -- \
331353 /src/library_generation/cli/entry_point.py validate-generation-config
332354 env :
333355 library_generation_image_tag : 2.68.0
334356 workspace_name : /workspace
335-
336- # TODO: Uncomment the needed Github Actions
337- # dependencies:
338- # runs-on: ubuntu-latest
339- # strategy:
340- # matrix:
341- # java: [8, 11, 17]
342- # steps:
343- # - uses: actions/checkout@v3
344- # - uses: actions/setup-java@v3
345- # with:
346- # distribution: zulu
347- # java-version: ${{matrix.java}}
348- # - run: java -version
349- # - run: .kokoro/dependencies.sh
350- # clirr:
351- # runs-on: ubuntu-latest
352- # steps:
353- # - uses: actions/checkout@v3
354- # - uses: actions/setup-java@v3
355- # with:
356- # distribution: zulu
357- # java-version: 8
358- # - run: java -version
359- # - run: .kokoro/build.sh
360- # env:
361- # JOB_TYPE: clirr
0 commit comments