dotCMS / core

Headless/Hybrid Content Management System for Enterprises
http://dotcms.com
Other
853 stars 467 forks source link

Update Project Java Version to 21.04-ms and Ensure Successful Build and Test Completion #29685

Closed dcolina closed 1 month ago

dcolina commented 1 month ago

Parent Issue

User Story

As a developer, I need to update the Java version in our project to 21.0.4-ms. This involves building the base Java image 21.0.4-ms using the GitHub workflow 'Build SDKMan Base Java Image'. It is crucial to ensure that the project compiles correctly with the new Java version and that all integration flow tests complete successfully.

Acceptance Criteria

Proposed Objective

Core Features

Proposed Priority

Priority 1 - Show Stopper

dotCMS Version

N/A

External Links

N/A

Assumptions & Initiation Needs

Quality Assurance Notes & Workarounds

Sub-Tasks & Estimates

N/A

nollymar commented 1 month ago

Internal QA: Apparently some changes are missing. The latest docker image generated is running Java 11.

Besides, it seems like there are some changes missing from this PR

spbolton commented 1 month ago

The docker image created during CICD build/test is working fine but the image is regenerated in the master deployment phase, we were missing passing the build-arg to specify the base image to use in this step and it was falling back to the default in the Docker file.

We need to be more clear about what changes are missing from the PR as it is old and does not reflect some changes that have already been deployed in different ways into master. There are also some changes that were purposely not included in this PR and should be added after initial Java 21 was merged. The new garbage collection options are only supported with Java 21, the old Java 11 options may not be preferable for Java 21, and we may also have some warnings after switch over but It is preferable to have smaller PRs and to have and test a commit where we are only changing the Java version essentially a commit that is compatible with both, and then follow up with changes that are only supported in the new version. We can then also distinguish between issues that may be caused by those tomcat parameter changes from the core java change. There may be something missing from the PR we want to include but if it is not something that is going to cause things to break when running on java 21 they should be separately included.

rjvelazco commented 1 month ago

Passed Internal QA

Video

Checking Build SDKMan Base Java Image Workflow and Java version in dotCMS instance

https://github.com/user-attachments/assets/fb663bbc-f980-4d74-aa2d-89b05530aac4

Checking the Java version directly in the terminal

https://github.com/user-attachments/assets/38ab2afc-60ef-44de-b2d7-61b93d26f2da

bryanboza commented 1 month ago

Fixed, tested on the latest trunk // Docker // FF