Skip to content

Conversation

ozangunalp
Copy link
Contributor

@ozangunalp ozangunalp commented Jun 26, 2025

QuarkusIntegrationTest and QuarkusMainIntegrationTest prepare dev services after determining the test profile and applying config overrides (using system properties).

Added QuarkusIntegrationTest to redis-devservices IT module and enabled integration test execution.

This comment has been minimized.

@ozangunalp
Copy link
Contributor Author

Rebasing after #48614

@ozangunalp
Copy link
Contributor Author

@alesj @brunobat The failure in integration-tests/observability-lgtm LgtmResourcesIT is related.
I can't understand what it is supposed to test.

For context, before getConfigOverrides in a profile were passed to the application, but NOT to the augmentation step to start dev services.

With this change config overrides are also "active" on custom augmentation to start dev services.

gsmet added a commit to gsmet/quarkus that referenced this pull request Jun 26, 2025
We enabled it for our Gradle tests but since then we have merged several
PRs that were failing.

The last occurrence is this PR:
- quarkusio#48614

And it caused failures as in:
- quarkusio#48627 (comment)

This comment has been minimized.

@ozangunalp ozangunalp force-pushed the redis_devservices_integration_tests branch from 04e7f63 to 770d2d8 Compare June 28, 2025 22:14

This comment has been minimized.

@ozangunalp
Copy link
Contributor Author

Failing opentelemetry tests are flaky, and I cannot reproduce the failing VertxVirtualThreadTest locally. I don't expect that they are related.

For the LgtmResourceIT I think we need to remove that test. Dev resources can't work with QuarkusIntegrationTest s because they rely on a custom runtime config source to create services at first config get (or property names get).

It did seemed like working before because the profile config wasn't read. So observability dev service was active, not the dev resource mechanism.

@holly-cummins
Copy link
Contributor

Failing opentelemetry tests are flaky, and I cannot reproduce the failing VertxVirtualThreadTest locally. I don't expect that they are related.

I agree.

For the LgtmResourceIT I think we need to remove that test. Dev resources can't work with QuarkusIntegrationTest s because they rely on a custom runtime config source to create services at first config get (or property names get).

It did seemed like working before because the profile config wasn't read. So observability dev service was active, not the dev resource mechanism.

Ohhh, that's so subtle! I wonder how often that happens. Often, I suspect. I had to work quite hard in the dev service tests to check the test was connected to the right one, and normal tests wouldn't necessarily do that. That might explain why this test is known to be flaky, though.

@ozangunalp
Copy link
Contributor Author

I wonder how often that happens.

This is only for LGTM Dev Resource, as it is the only dev resource implementation we've.

@brunobat
Copy link
Contributor

I'll let @alesj comment on this.

Comment on lines 6 to 7
//@Disabled
// TODO
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can remove these two comments, right?

Comment on lines 168 to 175
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to see a more generic solution for this, so that we have consistent behaviour in integration tests rather than per-project adjustments to try and ensure integration tests run. But we may not be able to achieve that.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Confirmed that this isn't the right way to get integration tests running; we only want them to run in native CIs. I've fixed and updated the native matrix instead.

@quarkus-bot quarkus-bot bot added the area/infra-automation anything related to CI, bots, etc. that are used to automated our infrastructure label Jul 1, 2025
gsmet added a commit to gsmet/quarkus that referenced this pull request Jul 1, 2025
We enabled it for our Gradle tests but since then we have merged several
PRs that were failing.

The last occurrence is this PR:
- quarkusio#48614

And it caused failures as in:
- quarkusio#48627 (comment)

(cherry picked from commit b4ce66a)

This comment has been minimized.

jmartisk pushed a commit to jmartisk/quarkus that referenced this pull request Jul 2, 2025
We enabled it for our Gradle tests but since then we have merged several
PRs that were failing.

The last occurrence is this PR:
- quarkusio#48614

And it caused failures as in:
- quarkusio#48627 (comment)

(cherry picked from commit b4ce66a)
jmartisk pushed a commit to jmartisk/quarkus that referenced this pull request Jul 2, 2025
We enabled it for our Gradle tests but since then we have merged several
PRs that were failing.

The last occurrence is this PR:
- quarkusio#48614

And it caused failures as in:
- quarkusio#48627 (comment)

(cherry picked from commit b4ce66a)
@ozangunalp ozangunalp force-pushed the redis_devservices_integration_tests branch from 6101713 to 04d92e9 Compare July 7, 2025 09:46
@ozangunalp
Copy link
Contributor Author

I rebased this, once the CI is green I think it is good to go

This comment has been minimized.

@ozangunalp ozangunalp force-pushed the redis_devservices_integration_tests branch from 04d92e9 to 96dfaa1 Compare July 7, 2025 10:43
@ozangunalp
Copy link
Contributor Author

Second try, first rebase didn't compile

Copy link

quarkus-bot bot commented Jul 7, 2025

Status for workflow Quarkus CI

This is the status report for running Quarkus CI on commit 96dfaa1.

✅ The latest workflow run for the pull request has completed successfully.

It should be safe to merge provided you have a look at the other checks in the summary.

You can consult the Develocity build scans.


Flaky tests - Develocity

⚙️ JVM Integration Tests - JDK 17

📦 integration-tests/kafka-devservices

io.quarkus.it.kafka.continuoustesting.DevServicesDevModeTest.testDevModeServiceDoesNotRestartContainersOnCodeChange - History

  • New containers: [Container(command=sh -c 'while [ ! -f /work/run.sh ]; do sleep 0.1; done; sleep 0.1; /work/run.sh', created=1751886348, id=0541e7aa52fe4a5768fd98303b7159b707445b3892239fbea5388d9aa9b8eba2, image=quay.io/ogunalp/kafka-native:latest, imageId=sha256:99fa71388449ac7ff46bda7f6d645fb4435d9a21dce3d4dbcaedfc8a738afd6b, names=[/great_franklin], ports=[ContainerPort(ip=0.0.0.0, privatePort=9092, publicPort=32857, type=tcp), ContainerPort(ip=::, privatePort=9092, publicPort=32857, type=tcp)], labels={architecture=x86_64, build-date=2025-03-25T21:45:00Z, com.redhat.component=ubi9-micro-container, com.redhat.license_terms=https://www.redhat.com/en/about/red-hat-end-user-license-agreements\#UBI, description=Very small image which doesn't install the package manager., distribution-scope=public, io.buildah.version=1.39.0-dev, io.k8s.description=Very small image which doesn't install the package manager., io.k8s.display-name=Red Hat Universal Base Image 9 Micro, io.openshift.expose-s... - org.opentest4j.AssertionFailedError
org.opentest4j.AssertionFailedError: 
New containers: [Container(command=sh -c 'while [ ! -f /work/run.sh ]; do sleep 0.1; done; sleep 0.1; /work/run.sh', created=1751886348, id=0541e7aa52fe4a5768fd98303b7159b707445b3892239fbea5388d9aa9b8eba2, image=quay.io/ogunalp/kafka-native:latest, imageId=sha256:99fa71388449ac7ff46bda7f6d645fb4435d9a21dce3d4dbcaedfc8a738afd6b, names=[/great_franklin], ports=[ContainerPort(ip=0.0.0.0, privatePort=9092, publicPort=32857, type=tcp), ContainerPort(ip=::, privatePort=9092, publicPort=32857, type=tcp)], labels={architecture=x86_64, build-date=2025-03-25T21:45:00Z, com.redhat.component=ubi9-micro-container, com.redhat.license_terms=https://www.redhat.com/en/about/red-hat-end-user-license-agreements#UBI, description=Very small image which doesn't install the package manager., distribution-scope=public, io.buildah.version=1.39.0-dev, io.k8s.description=Very small image which doesn't install the package manager., io.k8s.display-name=Red Hat Universal Bas...

⚙️ JVM Integration Tests - JDK 21

📦 integration-tests/kafka-devservices

io.quarkus.it.kafka.continuoustesting.DevServicesDevModeTest.testDevModeServiceDoesNotRestartContainersOnCodeChange - History

  • New containers: [Container(command=sh -c 'while [ ! -f /work/run.sh ]; do sleep 0.1; done; sleep 0.1; /work/run.sh', created=1751886407, id=5e6e3f86c59fba03fa40f69a59c1889b6d615357de37e16668f244c54e62d390, image=quay.io/ogunalp/kafka-native:latest, imageId=sha256:99fa71388449ac7ff46bda7f6d645fb4435d9a21dce3d4dbcaedfc8a738afd6b, names=[/priceless_golick], ports=[ContainerPort(ip=0.0.0.0, privatePort=9092, publicPort=32857, type=tcp), ContainerPort(ip=::, privatePort=9092, publicPort=32857, type=tcp)], labels={architecture=x86_64, build-date=2025-03-25T21:45:00Z, com.redhat.component=ubi9-micro-container, com.redhat.license_terms=https://www.redhat.com/en/about/red-hat-end-user-license-agreements\#UBI, description=Very small image which doesn't install the package manager., distribution-scope=public, io.buildah.version=1.39.0-dev, io.k8s.description=Very small image which doesn't install the package manager., io.k8s.display-name=Red Hat Universal Base Image 9 Micro, io.openshift.expose... - org.opentest4j.AssertionFailedError
org.opentest4j.AssertionFailedError: 
New containers: [Container(command=sh -c 'while [ ! -f /work/run.sh ]; do sleep 0.1; done; sleep 0.1; /work/run.sh', created=1751886407, id=5e6e3f86c59fba03fa40f69a59c1889b6d615357de37e16668f244c54e62d390, image=quay.io/ogunalp/kafka-native:latest, imageId=sha256:99fa71388449ac7ff46bda7f6d645fb4435d9a21dce3d4dbcaedfc8a738afd6b, names=[/priceless_golick], ports=[ContainerPort(ip=0.0.0.0, privatePort=9092, publicPort=32857, type=tcp), ContainerPort(ip=::, privatePort=9092, publicPort=32857, type=tcp)], labels={architecture=x86_64, build-date=2025-03-25T21:45:00Z, com.redhat.component=ubi9-micro-container, com.redhat.license_terms=https://www.redhat.com/en/about/red-hat-end-user-license-agreements#UBI, description=Very small image which doesn't install the package manager., distribution-scope=public, io.buildah.version=1.39.0-dev, io.k8s.description=Very small image which doesn't install the package manager., io.k8s.display-name=Red Hat Universal B...

@ozangunalp ozangunalp merged commit 3eaec77 into quarkusio:main Jul 10, 2025
57 checks passed
@quarkus-bot quarkus-bot bot added this to the 3.25 - main milestone Jul 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/infra-automation anything related to CI, bots, etc. that are used to automated our infrastructure area/testing triage/flaky-test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Integration tests cannot use fixed port for dev services
4 participants