-
Notifications
You must be signed in to change notification settings - Fork 25.6k
[Buildkite] Add daily pipeline to check for new jdk ea build #134118
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
Conversation
Trigger es benchmark tests if a new build is available
Pinging @elastic/es-delivery (Team:Delivery) |
env: | ||
RECENT_TIME_WINDOW: "24" # time window to consider a build as new in hours | ||
agents: | ||
image: "docker.elastic.co/ci-agent-images/eck-region/buildkite-agent:1.5" |
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.
thats the version of that image we use in other places. We should look into automating the updates via renovate
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.
See #134122 as follow up on this
env: | ||
EFFECTIVE_START_DATE: "$EFFECTIVE_START_DATE" | ||
EXECUTION_MODE: "start-test" | ||
EOF |
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.
you can test this locally by running:
.buildkite/scripts/trigger-if-java-ea-new-build.sh
Current JDK major version: 24
Target JDK major version: 25
Querying JDK archive: https://builds.es-jdk-archive.com/jdks/openjdk/recent.json
Latest JDK 25 build from ES archive:
Timestamp: 2025-08-27T15:45:03.262Z
JDK Identifier: openjdk-25-rc+36
Build is older than 24 hours
SHOULD_TRIGGER: false
or with overriding the 24h testing window:
RECENT_TIME_WINDOW=200 bash .buildkite/scripts/trigger-if-new-java-ea-build.sh
Current JDK major version: 24
Target JDK major version: 25
Querying JDK archive: https://builds.es-jdk-archive.com/jdks/openjdk/recent.json
Latest JDK 25 build from ES archive:
Timestamp: 2025-08-27T15:45:03.262Z
JDK Identifier: openjdk-25-rc+36
Build is recent (less than 200h old)
SHOULD_TRIGGER: true
Triggering performance-esbench-jdk for new jdk build openjdk-25-rc+36
echo "Target JDK major version: $TARGET_JDK" | ||
|
||
# Query Elasticsearch JDK archive for available JDKs | ||
JDK_ARCHIVE_URL="https://builds.es-jdk-archive.com/jdks/openjdk/recent.json" |
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.
We are using the recent.json here and not the latest.json as latest.json does not seem to have RCs in them. cc @brianseeders
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.
We are currently parsing https://jdk.java.net/<major>
page which is less convenient (it's not a JSON), but it shows different dates. E.g. JDK 25 build 36 is Aug 14th, while in JDK archive the latest archived_at
is 2025-08-27T15:45:03.262Z
. SHAs are the same. Why this discrepancy? The timestamp in JDK archive seems late. Were there multiple archive events for the same build? Should we switch to JDK archive to align?
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.
the date in the archive reflects when we archived it. Usually it should be within 24h as we usually check once per day. The timestamp for the rc36 is late as we added support for RC versions after 36 was already available. therefore the gap. I don't see too much need for you to migrate other than the json api and the option to resolve older RCs / EAs and not just the newest available.
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.
LGTM
BASE=3eefef7fd007602714ba786e20d58847ec9b1561 HEAD=35b2a6eb6099dae4c3480474460ebb8a1a9d01f7 Branch=main
BASE=3eefef7fd007602714ba786e20d58847ec9b1561 HEAD=35b2a6eb6099dae4c3480474460ebb8a1a9d01f7 Branch=main
BASE=3eefef7fd007602714ba786e20d58847ec9b1561 HEAD=35b2a6eb6099dae4c3480474460ebb8a1a9d01f7 Branch=main
Trigger es benchmark tests if a new build is available