Skip to content

Commit 4bb4e85

Browse files
committed
Add a github workflow that checks common (and less common) gradle tasks when gradle version is changed (#13456)
1 parent 7cc07a7 commit 4bb4e85

File tree

1 file changed

+88
-0
lines changed

1 file changed

+88
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
name: "Run checks: gradle upgrade"
2+
3+
on:
4+
workflow_dispatch:
5+
6+
pull_request:
7+
branches:
8+
- 'main'
9+
- 'branch_9x'
10+
paths:
11+
- '.github/workflows/run-checks-gradle-upgrade.yml'
12+
- 'gradle/wrapper/**'
13+
14+
push:
15+
branches:
16+
- 'main'
17+
- 'branch_9x'
18+
paths:
19+
- '.github/workflows/run-checks-gradle-upgrade.yml'
20+
- 'gradle/wrapper/**'
21+
22+
env:
23+
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GE_ACCESS_TOKEN }}
24+
25+
jobs:
26+
gradleSanityCheck:
27+
name: "Run tasks (java: ${{ matrix.java-version }}, alt-java: ${{ matrix.uses-alt-java }})"
28+
timeout-minutes: 30
29+
30+
strategy:
31+
matrix:
32+
os: [ ubuntu-latest ]
33+
java-version: [ '22' ]
34+
uses-alt-java: [ true, false ]
35+
36+
runs-on: ${{ matrix.os }}
37+
38+
env:
39+
ALT_JAVA_DIR: /tmp/alt-java
40+
41+
steps:
42+
- uses: actions/checkout@v4
43+
- uses: ./.github/actions/prepare-for-build
44+
with:
45+
java-version: ${{ matrix.java-version }}
46+
47+
- name: Set up RUNTIME_JAVA_HOME variable
48+
if: ${{ matrix.uses-alt-java }}
49+
run: |
50+
echo "All installed JDKs:"
51+
set | grep "JAVA"
52+
53+
echo "Gradle's 'RUNTIME_JAVA_HOME' JDK:"
54+
RUNTIME_JAVA_HOME_VAR=JAVA_HOME_`echo ${{ matrix.java-version }} | egrep --only "[0-9]+"`_X64
55+
echo ${RUNTIME_JAVA_HOME_VAR} points at ${!RUNTIME_JAVA_HOME_VAR}
56+
57+
# Copy the JDK from its default location to /tmp so that it appears different to gradle.
58+
rsync -av ${!RUNTIME_JAVA_HOME_VAR}/ ${{ env.ALT_JAVA_DIR }}/
59+
60+
# This sets the environment variable and makes it available for subsequent job steps.
61+
# https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-environment-variable
62+
echo "RUNTIME_JAVA_HOME=${{ env.ALT_JAVA_DIR }}" >> "$GITHUB_ENV"
63+
64+
- run: ./gradlew -p lucene/core check -x test
65+
66+
- name: ./gradlew regenerate
67+
run: |
68+
# add this package for generateEmojiTokenizationTestChecksumLoad.
69+
sudo apt-get install libwww-perl
70+
./gradlew regenerate -x generateUAX29URLEmailTokenizerInternal --rerun-tasks
71+
if [ ! -z "$(git status --porcelain)" ]; then
72+
echo ":warning: **regenerateleft local checkout in modified state**" >> $GITHUB_STEP_SUMMARY
73+
echo '```' >> $GITHUB_STEP_SUMMARY
74+
git status --porcelain >> $GITHUB_STEP_SUMMARY
75+
echo '```' >> $GITHUB_STEP_SUMMARY
76+
git reset --hard && git clean -xfd .
77+
fi
78+
79+
- run: ./gradlew testOpts
80+
- run: ./gradlew helpWorkflow
81+
- run: ./gradlew licenses updateLicenses
82+
- run: ./gradlew tidy
83+
- run: ./gradlew check -x test
84+
- run: ./gradlew assembleRelease mavenToLocal
85+
86+
# Conserve resources: only run these in non-alt-java mode.
87+
- run: ./gradlew getGeoNames
88+
if: ${{ !matrix.uses-alt-java }}

0 commit comments

Comments
 (0)