-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Infra - Add an explicit workflow for API binary compatibility checks #4798
Conversation
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
jvm: [8, 11] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this necessary? I don't think that binary compatibility changes that much across JVM versions. It should be fine to run with just 11.
matrix: | ||
jvm: [8, 11] | ||
env: | ||
SPARK_LOCAL_IP: localhost |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This shouldn't run any Spark jobs. Is this needed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No it's not needed.
path: ~/.gradle/caches | ||
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }} | ||
restore-keys: ${{ runner.os }}-gradle | ||
- run: echo -e "$(ip addr show eth0 | grep "inet\b" | awk '{print $2}' | cut -d/ -f1)\t$(hostname -f) $(hostname -s)" | sudo tee -a /etc/hosts |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like it was probably pasted from another workflow.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is in pretty much every workflow that we have that I've checked. But I don't think it's needed. Let's try without and see. We can always add it in.
e863d63
to
d6f9801
Compare
Thanks, @kbendick! Do we also need to remove the checks from running in another workflow? |
The API / ABI compatibility checking tool,
revapi
, is supposed to run whenever we run./gradlew build
or./gradlew check
.However, for some reason - likely due to caching, this is getting skipped as can be verified in this example PR: #4796
That PR shows that the output of
./gradlew -DflinkVersions=1.13,1.14,1.15 -DsparkVersions=2.4,3.0,3.1,3.2 -DhiveVersions=2,3 build -x test -x javadoc -x integrationTest
, which is run duringJava CI
, should runrevapi
. However,revapi
is being skipped in that step per the log output.For the moment, I'm adding an explicit
API Binary Compatibility
workflow to circumvent this issue.cc @rdblue