ci: migrate validation to GitHub Actions#9286
Open
manolo wants to merge 4 commits into
Open
Conversation
bb16c8a to
c821b21
Compare
f371d01 to
8a11690
Compare
8a11690 to
16ac381
Compare
Revert the AbstractComponentIT rewrite from #9217 back to the original 25.1 implementation that delegates to flow-test-util. This restores the known-working TestBench setup used by TeamCity. Add two complementary Chrome flags in the GHA its job so Chrome can start inside the GHA sandbox environment: - TESTBENCH_CHROME_EXTRA_ARGS: picked up by updateHeadlessChromeOptions() for tests going through flow-test-util AbstractComponentIT - -DchromeOptions: picked up by TestBench Parameters.getChromeOptions() for tests going through ParallelRunner / LocalDriver.createDriver() (Charts tests and any test annotated with RunWith(ParallelRunner)) Also revert the parallelism settings introduced in #9217 (testsInParallel=2, test.reuseDriver, unit test thread parallelism) since the original AbstractComponentIT does not implement thread-local driver management. Restore the four source files changed in #9217: - AbstractComponentIT.java: back to simple wrapper extending flow-test-util - AbstractChartIT.java: @OverRide setup() instead of @before setup() - LitRendererIT.java: drag(itemContent) instead of executeScript - TimePickerLocalizationIT.java: restore getDeploymentPort() override surefire-junit47 is kept in the failsafe plugin (from previous fix) as it is required for correct test discovery with TestBench ParallelRunner when using -Dit.test= shard filtering.
…yVariables Maven -D properties set on the command line belong to the Maven JVM and are NOT automatically forwarded to the JVM processes forked by Failsafe. The correct mechanism is systemPropertyVariables. Add a profile that activates when -DchromeOptions is explicitly passed and injects the value into Failsafe systemPropertyVariables so that TestBench's Parameters.getChromeOptions() receives the flags in the forked test JVM. The GHA its job already passes -DchromeOptions=--no-sandbox,--disable-dev-shm-usage. This profile makes that flag actually reach Chrome inside the forked JVM. TeamCity is unaffected because it does not pass -DchromeOptions.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Ports the GitHub Actions validation workflow from
mainto25.1, replacing the legacy TeamCitybuild.sh..github/workflows/validation.yml(node 20 for 25.1 compatibility)scripts/build.shscripts/wtr.js: adds JUnit reporter,--ignore-scriptsfor npm installscripts/run.js: adds-Djetty.scan=5skipSvgChartsBuildto svg-generator pom.xml to skip npm/webpack when bundle is cached