Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[openj9-dev] Pull Request builds are changing

Coming soon to a Pull Request near you...

Joe sent an email last week proposing the Pull Request (PR) triggers be adjusted so that 'all' would no longer be valid for test level or jdk version (only for platform). Since there has been no feedback or objection to this, we will go ahead and implement this change in #2836.
PLEASE NOTE there are many additional changes that are coming with #2836. Since there is no major change to how the PRs are launched, I have not set in stone a "cut-over" date, and will likely announce on the OpenJ9 slack once the change is in place.

The main purpose of this change is to align the PR builds with the other builds (Nightly, OMR Acceptance, etc) in terms of how the Jenkins jobs are structured. The two most notable changes are:
- Pull Request builds will now be a "pipeline of jobs" instead of a single job
- Pull request builds will now use the AdoptOpenJDK Test framework 

Other notable changes:
- Test target syntax change
      - "Jenkins test sanity.functional <platform> <version>"
      - Note: "sanity" and "extended" are still supported but will map to sanity.functional and extended.functional respectively.
- System test support
      - Jenkins test sanity.system, or extended.system
      - Please continue to be mindful of the amount of testing you run, how long each test bucket takes to execute, and how busy the farm is.
- Cmake platform support
      - Jenkins compile xlinuxcmake jdk9
      - No testing yet
      - Only supported on jdk9 at the moment
- Separated Compile and Test jobs means 1 compile feeds an sdk into many test jobs
- Github PR status updates per job
      - Very similar to how it is already. The difference being PRs will receive separate updates for compiles and tests.
- Only 1 top-level job will trigger. This job will trigger all the necessary downstream jobs.
      - You will get a PR status update for this top-level job as well as all the downstream jobs.
- Since there is only 1 top level job, you can only run 1 "build" at a time (per PR). Launching another build will cancel the previous one.
      - For example if you run "Jenkins compile zlinux,plinux jdk8" and then realize you also needed xlinux, you will have to issue another comment "Jenkins compile zlinux,plinux,xlinux jdk8". Ie. you cannot simply launch another build with just xlinux because it will cancel the first build.

If you have any questions or concerns please let me know. Otherwise I expect to be making the switch sometime next week.


Back to the top