Skip to content
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

Simplify Windows path for Docker Desktop and Podman #26415

Merged
merged 1 commit into from Jun 29, 2022

Conversation

Karm
Copy link
Member

@Karm Karm commented Jun 28, 2022

Using modern Docker Desktop and Podman on Windows, the path can be simplified (as suggested by @n1hility on #25867).

Tested on:

Windows 10 Enterprise, OS Build 19044.1766
Podman: Version 4.1.0
                WSL2 Kernel:        5.10.102.1
                Podman machine: podman-machine-default_fedora-35-x86_64
Docker Desktop: v4.9.0
                             Engine: v20.10.16

e.g.

Docker Desktop

C:\tmp\quarkus-quickstarts(development -> origin)
λ mvnw package -pl getting-started-reactive -Dnative -Dquarkus.native.container-build=true -Dquarkus.native.builder-image=%IMAGE% -Dquarkus.native.container-runtime=docker
...
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildStep] Running Quarkus native-image plugin on native-image 21.3.2.0-1b6 Mandrel Distribution (Java Version 11.0.15+10-LTS)
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildRunner] docker run --env LANG=C --rm -v /c/tmp/quarkus-quickstarts/getting-started-reactive/target/getting-started-reactive-1.0.0-SNAPSHOT-native-image-source-jar:/project:z --name build-native-eFoJR %IMAGE% -J-Djava.util.logging.manager=org.jboss.logmanager.LogManager -J-Dsun.nio.ch.maxUpdateArraySize=100 -J-Dvertx.logger-delegate-factory-class-name=io.quarkus.vertx.core.runtime.VertxLogDelegateFactory -J-Dvertx.disableDnsResolver=true -J-Dio.netty.leakDetection.level=DISABLED -J-Dio.netty.allocator.maxOrder=3 -J-Duser.language=en -J-Duser.country=US -J-Dfile.encoding=UTF-8 --features=io.quarkus.runner.Feature,io.quarkus.runtime.graal.ResourcesFeature,io.quarkus.runtime.graal.DisableLoggingFeature -H:-ParseOnce -J--add-exports=java.security.jgss/sun.security.krb5=ALL-UNNAMED -J--add-opens=java.base/java.text=ALL-UNNAMED -H:InitialCollectionPolicy=com.oracle.svm.core.genscavenge.CollectionPolicy\$BySpaceAndTime -H:+JNI -H:+AllowFoldMethods -J-Djava.awt.headless=true -H:FallbackThreshold=0 -H:+ReportExceptionStackTraces -H:-AddAllCharsets -H:EnableURLProtocols=http -H:-UseServiceLoaderFeature -H:+StackTrace -J--add-exports=org.graalvm.sdk/org.graalvm.nativeimage.impl=ALL-UNNAMED -J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk=ALL-UNNAMED -J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk.localization=ALL-UNNAMED -J--add-exports=org.graalvm.nativeimage.base/com.oracle.svm.util=ALL-UNNAMED getting-started-reactive-1.0.0-SNAPSHOT-runner -jar getting-started-reactive-1.0.0-SNAPSHOT-runner.jar
<SNIP>
# Printing build artifacts to: /project/getting-started-reactive-1.0.0-SNAPSHOT-runner.build_artifacts.txt
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildRunner] docker run --env LANG=C --rm -v /c/tmp/quarkus-quickstarts/getting-started-reactive/target/getting-started-reactive-1.0.0-SNAPSHOT-native-image-source-jar:/project:z --entrypoint /bin/bash %IMAGE% -c objcopy --strip-debug getting-started-reactive-1.0.0-SNAPSHOT-runner
[INFO] [io.quarkus.deployment.QuarkusAugmentor] Quarkus augmentation completed in 408581ms

Podman

[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildRunner] podman run --env LANG=C --rm -v /c/tmp/quarkus-quickstarts/getting-started-reactive/target/getting-started-reactive-1.0.0-SNAPSHOT-native-image-source-jar:/project:z --name build-native-RAiYs %IMAGE% -J-Dsun.nio.ch.maxUpdateArraySize=100 -J-Djava.util.logging.manager=org.jboss.logmanager.LogManager -J-Dvertx.logger-delegate-factory-class-name=io.quarkus.vertx.core.runtime.VertxLogDelegateFactory -J-Dvertx.disableDnsResolver=true -J-Dio.netty.leakDetection.level=DISABLED -J-Dio.netty.allocator.maxOrder=3 -J-Duser.language=en -J-Duser.country=US -J-Dfile.encoding=UTF-8 --features=io.quarkus.runner.Feature,io.quarkus.runtime.graal.ResourcesFeature,io.quarkus.runtime.graal.DisableLoggingFeature -H:-ParseOnce -J--add-exports=java.security.jgss/sun.security.krb5=ALL-UNNAMED -J--add-opens=java.base/java.text=ALL-UNNAMED -H:InitialCollectionPolicy=com.oracle.svm.core.genscavenge.CollectionPolicy\$BySpaceAndTime -H:+JNI -H:+AllowFoldMethods -J-Djava.awt.headless=true -H:FallbackThreshold=0 -H:+ReportExceptionStackTraces -H:-AddAllCharsets -H:EnableURLProtocols=http -H:-UseServiceLoaderFeature -H:+StackTrace -J--add-exports=org.graalvm.sdk/org.graalvm.nativeimage.impl=ALL-UNNAMED -J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk=ALL-UNNAMED -J--add-exports=org.graalvm.nativeimage.builder/com.oracle.svm.core.jdk.localization=ALL-UNNAMED -J--add-exports=org.graalvm.nativeimage.base/com.oracle.svm.util=ALL-UNNAMED getting-started-reactive-1.0.0-SNAPSHOT-runner -jar getting-started-reactive-1.0.0-SNAPSHOT-runner.jar
<SNIP>
# Printing build artifacts to: /project/getting-started-reactive-1.0.0-SNAPSHOT-runner.build_artifacts.txt
[INFO] [io.quarkus.deployment.pkg.steps.NativeImageBuildRunner] podman run --env LANG=C --rm -v /c/tmp/quarkus-quickstarts/getting-started-reactive/target/getting-started-reactive-1.0.0-SNAPSHOT-native-image-source-jar:/project:z --entrypoint /bin/bash %IMAGE% -c objcopy --strip-debug getting-started-reactive-1.0.0-SNAPSHOT-runner
[INFO] [io.quarkus.deployment.QuarkusAugmentor] Quarkus augmentation completed in 230955ms

Image URL replaced with %IMAGE% for brevity. Part of the log snipped by <SNIP> for brevity.

@Karm Karm self-assigned this Jun 28, 2022
@quarkus-bot
Copy link

quarkus-bot bot commented Jun 29, 2022

Failing Jobs - Building 37e7716

Status Name Step Failures Logs Raw logs
Maven Tests - JDK 11 Windows Build Failures Logs Raw logs

Full information is available in the Build summary check run.

Failures

⚙️ Maven Tests - JDK 11 Windows #

- Failing: integration-tests/maven 

📦 integration-tests/maven

io.quarkus.maven.it.DevMojoIT.testCapabilitiesConflict line 108 - More details - Source on GitHub

org.awaitility.core.ConditionTimeoutException: Condition with lambda expression in io.quarkus.test.devmode.util.DevModeTestUtils that uses java.util.function.Supplier, java.util.function.Supplierjava.util.concurrent.atomic.AtomicReference, java.util.concurrent.atomic.AtomicReferencejava.lang.String, java.lang.Stringboolean was not fulfilled within 1 minutes.
	at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:167)
	at org.awaitility.core.CallableCondition.await(CallableCondition.java:78)

io.quarkus.maven.it.DevMojoIT.testCapabilitiesConflict line 108 - More details - Source on GitHub

org.awaitility.core.ConditionTimeoutException: Condition with lambda expression in io.quarkus.test.devmode.util.DevModeTestUtils that uses java.util.function.Supplier, java.util.function.Supplierjava.util.concurrent.atomic.AtomicReference, java.util.concurrent.atomic.AtomicReferencejava.lang.String, java.lang.Stringboolean was not fulfilled within 1 minutes.
	at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:167)
	at org.awaitility.core.CallableCondition.await(CallableCondition.java:78)

@Karm
Copy link
Member Author

Karm commented Jun 29, 2022

Hmm,

2022-06-28 23:01:02,716 INFO  [io.quarkus] (main) reactive-routes-quickstart 1.0.0-SNAPSHOT on JVM (powered by Quarkus 999-SNAPSHOT) started in 1.035s. Listening on: http://0.0.0.0:8081
2022-06-28 23:01:02,759 INFO  [io.quarkus] (main) Profile prod activated. 
2022-06-28 23:01:02,760 INFO  [io.quarkus] (main) Installed features: [cdi, reactive-routes, smallrye-context-propagation, vertx]
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.294 s - in org.acme.reactive.routes.RouteIT
[INFO] 
[INFO] Results:
[INFO] 
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  10.135 s
[INFO] Finished at: 2022-06-28T23:01:05Z
[INFO] ------------------------------------------------------------------------
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 40.785 s - in io.quarkus.maven.it.UberJarQuarkusIntegrationTestIT
[INFO] 
[INFO] Results:
[INFO] 
[ERROR] Errors: 
[ERROR]   DevMojoIT.testCapabilitiesConflict:108 � ConditionTimeout Condition with lambda expression in io.quarkus.test.devmode.util.DevModeTestUtils that uses java.util.function.Supplier, java.util.function.Supplierjava.util.concurrent.atomic.AtomicReference, java.util.concurrent.atomic.AtomicReferencejava.lang.String, java.lang.Stringboolean was not fulfilled within 1 minutes.
[INFO] 
[ERROR] Tests run: 151, Failures: 0, Errors: 1, Skipped: 3

I will take a look if it's related to the #26289, perhaps the test needs an adjustment?

@Karm
Copy link
Member Author

Karm commented Jun 29, 2022

I can reproduce it locally,

[INFO] Results:
[INFO]
[ERROR] Errors:
[ERROR]   DevMojoIT.testCapabilitiesConflict:108 » ConditionTimeout Condition with io.quarkus.test.devmode.util.DevModeTestUtils was not fulfilled within 1 minutes.
[INFO]
[ERROR] Tests run: 151, Failures: 0, Errors: 1, Skipped: 3

...but I still don't know whether it's my changes causing that. Waiting for a clean run. It takes forever.

@gsmet
Copy link
Member

gsmet commented Jun 29, 2022

@Karm it's not related to your change, we have it failing all over the place since a few days. If you have a Windows box and can figure out what's going on, that would be very helpful.

@gsmet gsmet merged commit c043cff into quarkusio:main Jun 29, 2022
@quarkus-bot quarkus-bot bot added this to the 2.11 - main milestone Jun 29, 2022
@gsmet
Copy link
Member

gsmet commented Jun 29, 2022

@Karm Alexey pushed a PR for it: #26441.
No need to investigate further.

@Karm
Copy link
Member Author

Karm commented Jun 29, 2022

@gsmet Thx for the notification. It saved me some excruciating slow Windows VM I/O build time exercise :-) I'll read what Alexey did to learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants