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

Quarkus main branch build on Windows fails with internal Develocity error #42756

Closed
michalvavrik opened this issue Aug 26, 2024 · 39 comments · Fixed by #45711
Closed

Quarkus main branch build on Windows fails with internal Develocity error #42756

michalvavrik opened this issue Aug 26, 2024 · 39 comments · Fixed by #45711
Labels
area/kubernetes env/windows Impacts Windows machines kind/bug Something isn't working
Milestone

Comments

@michalvavrik
Copy link
Member

michalvavrik commented Aug 26, 2024

Describe the bug

I build Quarkus main branch in my AWS Windows instance. Lately build started to fail over internal Develocity error. Not sure how I can disable it, I don't want leverage Develocity.

Expected behavior

Build succeeds.

Actual behavior

Build fails with:

[INFO] -----------< io.quarkus:quarkus-kubernetes-service-binding >------------
[INFO] Building Quarkus - Kubernetes Service Binding - Runtime 999-SNAPSHOT [221/1004]
[INFO]   from extensions\kubernetes-service-binding\runtime\pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- clean:3.2.0:clean (clean-cache-dirs) @ quarkus-kubernetes-service-binding ---
[INFO] 
[INFO] --- clean:3.2.0:clean (default-clean) @ quarkus-kubernetes-service-binding ---
[INFO] 
[INFO] --- buildnumber:3.0.0:create (get-scm-revision) @ quarkus-kubernetes-service-binding ---
[INFO] 
[INFO] --- formatter:2.24.1:format (default) @ quarkus-kubernetes-service-binding ---
[INFO] Processed 9 files in 17ms (Formatted: 0, Skipped: 0, Unchanged: 9, Failed: 0, Readonly: 0)
[INFO] 
[INFO] --- impsort:1.11.0:sort (sort-imports) @ quarkus-kubernetes-service-binding ---
[INFO] Processed 9 files in 00:00.013 (Already Sorted: 9, Needed Sorting: 0)
[INFO] 
[INFO] --- resources:3.3.1:resources (default-resources) @ quarkus-kubernetes-service-binding ---
[INFO] Copying 1 resource from src\main\resources to target\classes
[INFO] 
[INFO] --- quarkus-extension:999-SNAPSHOT:extension-descriptor (generate-extension-descriptor) @ quarkus-kubernetes-service-binding ---
[INFO] 
[INFO] --- compiler:3.13.0:compile (default-compile) @ quarkus-kubernetes-service-binding ---
[INFO] Recompiling the module because of changed dependency.
[INFO] Compiling 7 source files with javac [debug deprecation parameters release 17] to target\classes
[INFO] 
[INFO] --- resources:3.3.1:testResources (default-testResources) @ quarkus-kubernetes-service-binding ---
[INFO] Copying 11 resources from src\test\resources to target\test-classes
[INFO] 
[INFO] --- compiler:3.13.0:testCompile (default-testCompile) @ quarkus-kubernetes-service-binding ---
[ERROR] Internal error in Develocity Maven extension: goal execution
com.gradle.maven.common.logging.DevelocityException: Internal error in Develocity Maven extension: goal execution
    at com.gradle.maven.common.logging.DevelocityException.a (SourceFile:31)
    at com.gradle.maven.cache.extension.d.k.a (SourceFile:104)
    at com.gradle.maven.cache.extension.d.k.a (SourceFile:88)
    at com.gradle.maven.cache.extension.h.b.lambda$createProxy$0 (SourceFile:79)
    at jdk.proxy34.$Proxy144.execute (Unknown Source)
    at com.gradle.maven.scan.extension.internal.d.a.executeMojo (SourceFile:116)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:52)
    at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:161)
    at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:73)
Caused by: java.lang.RuntimeException: Failed to load cache entry for org.apache.maven.plugins:maven-compiler-plugin:3.13.0:testCompile (default-testCompile) @ io.quarkus:quarkus-kubernetes-service-binding:jar:999-SNAPSHOT
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:87)
    at com.gradle.maven.cache.extension.d.a.b (SourceFile:80)
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:50)
    at com.gradle.maven.cache.extension.d.e.a (SourceFile:27)
    at com.gradle.maven.cache.extension.d.l.a (SourceFile:17)
    at com.gradle.maven.cache.extension.d.d.a (SourceFile:47)
    at com.gradle.maven.cache.extension.d.b.a (SourceFile:26)
    at com.gradle.maven.cache.extension.d.f$1.run (SourceFile:35)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:66)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:166)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.run (SourceFile:47)
    at com.gradle.maven.cache.extension.d.f.a (SourceFile:31)
    at com.gradle.maven.cache.extension.d.k.a (SourceFile:80)
    at com.gradle.maven.cache.extension.h.b.lambda$createProxy$0 (SourceFile:79)
    at jdk.proxy34.$Proxy144.execute (Unknown Source)
    at com.gradle.maven.scan.extension.internal.d.a.executeMojo (SourceFile:116)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:52)
    at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:161)
    at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:73)
Caused by: org.gradle.caching.internal.controller.BuildCacheOperationException: Could not load from remote cache: Cannot create directory 'C:\Users\hudson\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s\.hidden-symlink-dir'.
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.lambda$loadRemoteAndStoreResultLocally$2 (SourceFile:140)
    at org.gradle.caching.local.internal.DefaultBuildCacheTempFileStore.withTempFile (SourceFile:37)
    at org.gradle.caching.local.internal.DirectoryBuildCache.lambda$withTempFile$5 (SourceFile:175)
    at org.gradle.cache.internal.DefaultCacheCoordinator.lambda$toSupplier$2 (SourceFile:228)
    at org.gradle.cache.internal.LockOnDemandCrossProcessCacheAccess.withFileLock (SourceFile:90)
    at org.gradle.cache.internal.DefaultCacheCoordinator.withFileLock (SourceFile:218)
    at org.gradle.cache.internal.DefaultPersistentDirectoryStore.withFileLock (SourceFile:154)
    at org.gradle.cache.internal.DefaultCacheFactory$ReferenceTrackingCache.withFileLock (SourceFile:211)
    at org.gradle.caching.local.internal.DirectoryBuildCache.withTempFile (SourceFile:175)
    at org.gradle.caching.local.internal.DirectoryBuildCacheService.withTempFile (SourceFile:65)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.loadRemoteAndStoreResultLocally (SourceFile:135)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.load (SourceFile:119)
    at com.gradle.maven.cache.extension.b.c.a (SourceFile:32)
    at com.gradle.maven.cache.extension.b.f$a.a (SourceFile:292)
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:85)
    at com.gradle.maven.cache.extension.d.a.b (SourceFile:80)
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:50)
    at com.gradle.maven.cache.extension.d.e.a (SourceFile:27)
    at com.gradle.maven.cache.extension.d.l.a (SourceFile:17)
    at com.gradle.maven.cache.extension.d.d.a (SourceFile:47)
    at com.gradle.maven.cache.extension.d.b.a (SourceFile:26)
    at com.gradle.maven.cache.extension.d.f$1.run (SourceFile:35)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:66)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:166)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.run (SourceFile:47)
    at com.gradle.maven.cache.extension.d.f.a (SourceFile:31)
    at com.gradle.maven.cache.extension.d.k.a (SourceFile:80)
    at com.gradle.maven.cache.extension.h.b.lambda$createProxy$0 (SourceFile:79)
    at jdk.proxy34.$Proxy144.execute (Unknown Source)
    at com.gradle.maven.scan.extension.internal.d.a.executeMojo (SourceFile:116)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:52)
    at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:161)
    at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:73)
Caused by: org.gradle.internal.operations.BuildOperationInvocationException: Cannot create directory 'C:\Users\hudson\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s\.hidden-symlink-dir'.
    at org.gradle.internal.operations.DefaultBuildOperationRunner.throwAsBuildOperationInvocationException (SourceFile:197)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.access$100 (SourceFile:24)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:75)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:166)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.call (SourceFile:53)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController$PackOperationExecutor.unpack (SourceFile:189)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.lambda$loadRemoteAndStoreResultLocally$1 (SourceFile:138)
    at org.gradle.caching.internal.controller.service.BaseRemoteBuildCacheServiceHandle.maybeUnpack (SourceFile:118)
    at org.gradle.caching.internal.controller.service.BaseRemoteBuildCacheServiceHandle.maybeLoad (SourceFile:105)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.lambda$loadRemoteAndStoreResultLocally$2 (SourceFile:138)
    at org.gradle.caching.local.internal.DefaultBuildCacheTempFileStore.withTempFile (SourceFile:37)
    at org.gradle.caching.local.internal.DirectoryBuildCache.lambda$withTempFile$5 (SourceFile:175)
    at org.gradle.cache.internal.DefaultCacheCoordinator.lambda$toSupplier$2 (SourceFile:228)
    at org.gradle.cache.internal.LockOnDemandCrossProcessCacheAccess.withFileLock (SourceFile:90)
    at org.gradle.cache.internal.DefaultCacheCoordinator.withFileLock (SourceFile:218)
    at org.gradle.cache.internal.DefaultPersistentDirectoryStore.withFileLock (SourceFile:154)
    at org.gradle.cache.internal.DefaultCacheFactory$ReferenceTrackingCache.withFileLock (SourceFile:211)
    at org.gradle.caching.local.internal.DirectoryBuildCache.withTempFile (SourceFile:175)
    at org.gradle.caching.local.internal.DirectoryBuildCacheService.withTempFile (SourceFile:65)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.loadRemoteAndStoreResultLocally (SourceFile:135)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.load (SourceFile:119)
    at com.gradle.maven.cache.extension.b.c.a (SourceFile:32)
    at com.gradle.maven.cache.extension.b.f$a.a (SourceFile:292)
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:85)
    at com.gradle.maven.cache.extension.d.a.b (SourceFile:80)
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:50)
    at com.gradle.maven.cache.extension.d.e.a (SourceFile:27)
    at com.gradle.maven.cache.extension.d.l.a (SourceFile:17)
    at com.gradle.maven.cache.extension.d.d.a (SourceFile:47)
    at com.gradle.maven.cache.extension.d.b.a (SourceFile:26)
    at com.gradle.maven.cache.extension.d.f$1.run (SourceFile:35)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:66)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:166)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.run (SourceFile:47)
    at com.gradle.maven.cache.extension.d.f.a (SourceFile:31)
    at com.gradle.maven.cache.extension.d.k.a (SourceFile:80)
    at com.gradle.maven.cache.extension.h.b.lambda$createProxy$0 (SourceFile:79)
    at jdk.proxy34.$Proxy144.execute (Unknown Source)
    at com.gradle.maven.scan.extension.internal.d.a.executeMojo (SourceFile:116)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:52)
    at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:161)
    at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:73)
Caused by: java.io.IOException: Cannot create directory 'C:\Users\hudson\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s\.hidden-symlink-dir'.
    at com.gradle.maven.extension.internal.dep.org.apache.commons.io.FileUtils.mkdirs (SourceFile:2289)
    at com.gradle.maven.extension.internal.dep.org.apache.commons.io.FileUtils.forceMkdir (SourceFile:1376)
    at org.gradle.caching.internal.packaging.impl.TarBuildCacheEntryPacker.unpackDirectoryTree (SourceFile:298)
    at org.gradle.caching.internal.packaging.impl.TarBuildCacheEntryPacker.unpackTree (SourceFile:266)
    at org.gradle.caching.internal.packaging.impl.TarBuildCacheEntryPacker.unpack (SourceFile:210)
    at org.gradle.caching.internal.packaging.impl.TarBuildCacheEntryPacker.unpack (SourceFile:172)
    at org.gradle.caching.internal.packaging.impl.GZipBuildCacheEntryPacker.unpack (SourceFile:49)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController$PackOperationExecutor.doUnpack (SourceFile:210)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController$PackOperationExecutor.access$000 (SourceFile:174)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController$PackOperationExecutor$1.call (SourceFile:194)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController$PackOperationExecutor$1.call (SourceFile:189)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute (SourceFile:209)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute (SourceFile:204)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:66)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:166)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.call (SourceFile:53)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController$PackOperationExecutor.unpack (SourceFile:189)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.lambda$loadRemoteAndStoreResultLocally$1 (SourceFile:138)
    at org.gradle.caching.internal.controller.service.BaseRemoteBuildCacheServiceHandle.maybeUnpack (SourceFile:118)
    at org.gradle.caching.internal.controller.service.BaseRemoteBuildCacheServiceHandle.maybeLoad (SourceFile:105)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.lambda$loadRemoteAndStoreResultLocally$2 (SourceFile:138)
    at org.gradle.caching.local.internal.DefaultBuildCacheTempFileStore.withTempFile (SourceFile:37)
    at org.gradle.caching.local.internal.DirectoryBuildCache.lambda$withTempFile$5 (SourceFile:175)
    at org.gradle.cache.internal.DefaultCacheCoordinator.lambda$toSupplier$2 (SourceFile:228)
    at org.gradle.cache.internal.LockOnDemandCrossProcessCacheAccess.withFileLock (SourceFile:90)
    at org.gradle.cache.internal.DefaultCacheCoordinator.withFileLock (SourceFile:218)
    at org.gradle.cache.internal.DefaultPersistentDirectoryStore.withFileLock (SourceFile:154)
    at org.gradle.cache.internal.DefaultCacheFactory$ReferenceTrackingCache.withFileLock (SourceFile:211)
    at org.gradle.caching.local.internal.DirectoryBuildCache.withTempFile (SourceFile:175)
    at org.gradle.caching.local.internal.DirectoryBuildCacheService.withTempFile (SourceFile:65)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.loadRemoteAndStoreResultLocally (SourceFile:135)
    at org.gradle.caching.internal.controller.DefaultBuildCacheController.load (SourceFile:119)
    at com.gradle.maven.cache.extension.b.c.a (SourceFile:32)
    at com.gradle.maven.cache.extension.b.f$a.a (SourceFile:292)
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:85)
    at com.gradle.maven.cache.extension.d.a.b (SourceFile:80)
    at com.gradle.maven.cache.extension.d.a.a (SourceFile:50)
    at com.gradle.maven.cache.extension.d.e.a (SourceFile:27)
    at com.gradle.maven.cache.extension.d.l.a (SourceFile:17)
    at com.gradle.maven.cache.extension.d.d.a (SourceFile:47)
    at com.gradle.maven.cache.extension.d.b.a (SourceFile:26)
    at com.gradle.maven.cache.extension.d.f$1.run (SourceFile:35)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:29)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute (SourceFile:26)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:66)
    at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:166)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.execute (SourceFile:59)
    at org.gradle.internal.operations.DefaultBuildOperationRunner.run (SourceFile:47)
    at com.gradle.maven.cache.extension.d.f.a (SourceFile:31)
    at com.gradle.maven.cache.extension.d.k.a (SourceFile:80)
    at com.gradle.maven.cache.extension.h.b.lambda$createProxy$0 (SourceFile:79)
    at jdk.proxy34.$Proxy144.execute (Unknown Source)
    at com.gradle.maven.scan.extension.internal.d.a.executeMojo (SourceFile:116)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:73)
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:53)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:118)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:261)
    at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:173)
    at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:101)
    at org.apache.maven.cli.MavenCli.execute (MavenCli.java:906)
    at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:283)
    at org.apache.maven.cli.MavenCli.main (MavenCli.java:206)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:255)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:201)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:361)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:314)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:77)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:568)
    at org.apache.maven.wrapper.BootstrapMainStarter.start (BootstrapMainStarter.java:52)
    at org.apache.maven.wrapper.WrapperExecutor.execute (WrapperExecutor.java:161)
    at org.apache.maven.wrapper.MavenWrapperMain.main (MavenWrapperMain.java:73)

How to Reproduce?

Steps to reproduce the issue:

git clone https://github.com/quarkusio/quarkus.git
cd quarkus
cmd /c mvnw.cmd -B -s .github/mvn-settings.xml clean install -Dquickly -Dno-test-modules -Prelocations 

Output of uname -a or ver

Windows Server 2022

Output of java -version

Temurin 17

Quarkus version or git rev

999-SNAPSHOT

Build tool (ie. output of mvnw --version or gradlew --version)

Apache Maven 3.9.9

Additional information

I'd appreciate a workaround as this is blocking me. @gsmet perhaps my build command is not valid anymore?

@michalvavrik michalvavrik added the kind/bug Something isn't working label Aug 26, 2024
@quarkus-bot quarkus-bot bot added area/kubernetes env/windows Impacts Windows machines labels Aug 26, 2024
Copy link

quarkus-bot bot commented Aug 26, 2024

/cc @geoand (kubernetes), @iocanel (kubernetes)

@michalvavrik
Copy link
Member Author

hey, so I just figured that what has changed is that @rsvoboda switched from installed Maven to provided Maven wrapper. When I switched back manually it seems to work. So it's not urgent anymore. Still, it seems like very minor bug.

@rsvoboda
Copy link
Member

What version is the local maven?

@gsmet
Copy link
Member

gsmet commented Aug 27, 2024

@jprinet does it ring a bell?

@michalvavrik
Copy link
Member Author

What version is the local maven?

I have provided information in the issue description :-)

@michalvavrik
Copy link
Member Author

As @rsvoboda pointed out, what I specify is local Maven version

Local Maven version

hudson@EC2AMAZ-2RC4QL7 C:\Users\hudson\quarkus-test-suite>mvn clean verify -V -B -fae -Dlog.nocolor=true -P root-modules -Dinclude.quarkus-cli-tests     -Dquarkus.platform.version=999-SNAPSHOT  
Apache Maven 3.9.7 (8b094c9513efc1b9ce2d952b3b9c8eaedaf8cbf0)
Maven home: C:\ProgramData\chocolatey\lib\maven\apache-maven-3.9.7

Windows Maven wrapper uses 3.9.9:
https://github.com/quarkusio/quarkus/blob/main/.mvn/wrapper/maven-wrapper.properties

My example is using Maven wrapper as steps to reproduce shows.

@jprinet
Copy link
Contributor

jprinet commented Aug 28, 2024

Not familiar with that, let me relay it internally

@jprinet
Copy link
Contributor

jprinet commented Aug 28, 2024

btw a Build Scan would be super helpful, could you produce one @michalvavrik ?
You should be able to get one published just by authenticating to Develocity

Could you also clarify what change is responsible for the failure?
I see this possibly related change 6020131

@jprinet
Copy link
Contributor

jprinet commented Aug 28, 2024

Could you try to comment / remove the .mvn/extensions.xml file and check if the error still occurs @michalvavrik ?

@michalvavrik
Copy link
Member Author

Could you try to comment / remove the .mvn/extensions.xml file and check if the error still occurs @michalvavrik ?

I'll try it tomorrow and report back.

@michalvavrik
Copy link
Member Author

btw a Build Scan would be super helpful, could you produce one @michalvavrik ?
You should be able to get one published just by authenticating to Develocity

I have an account, but it will be harder to do on Windows. I'll check but bit busy ATM. Maybe I can report back next week and provide required context.

Could you also clarify what change is responsible for the failure?
I see this possibly related change 6020131

On our side, the difference is that when we use installed Maven 3.9.7 then it works. When we use Quarkus Maven wrapper, it doesn't. The wrapper uses 3.9.9 but it could also be related to rights? Any proper information will require time investment from me. Please be patient as I will have more time next week.

@lasteris
Copy link
Contributor

lasteris commented Oct 6, 2024

I have the same problem. Maybe I can provide some details to help with the solution ?
What is fascinating, that Cannot create directory 'Cannot create directory 'C:\Users\asus\repo\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s\.hidden-symlink-dir'. sentence. Because as I can see,
this FILE created. But it is not directory, and as I can assume it should fail cause of:

private static File mkdirs(final File directory) throws IOException {
        if (directory != null && !directory.mkdirs() && !directory.isDirectory()) {
            throw new IOException("Cannot create directory '" + directory + "'.");
        }
        return directory;
    }

or am i missing something ?

@michalvavrik
Copy link
Member Author

jeez, I completely forgot about this, thanks @lasteris I will appreciate if you provide as much info to @jprinet as possible

@lasteris
Copy link
Contributor

lasteris commented Oct 6, 2024

Ok.... What I can say for now:
Some time ago, build was successful.
I've just did git fetch upstream and checked onto main, and this error started to pop up on ./mvnw -Dquickly execution.
https://pastebin.com/LTWUJjff

I have Java 17 installed on the PATH and JAVA_HOME.
Windows 11 with fresh updates.
Also, I've installed Maven 3.9.9 locally to try to build not via wrapper. But got same error.
Never tried to use 3.9.7 to see if problem in Maven version.

Also, as @jprinet asked, I have removed the .mvn/extensions.xml file, but got another error:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.5.0:test (default-test) on project quarkus-development-mode-spi: Unable to parse configuration of mojo org.apache.maven.plugins:maven-surefire-plugin:3.5.0:test for parameter properties: Missing name in properties

@lasteris
Copy link
Contributor

lasteris commented Oct 7, 2024

CMD: mvn -Dquickly

Environment 1:

Apache Maven 3.8.8 (4c87b05d9aedce574290d1acc98575ed5eb6cd39)
Maven home: C:\Users\asus\Maven\apache-maven-3.8.8
Java version: 17.0.12, vendor: Eclipse Adoptium, runtime: C:\opt\jdk-17.0.12_7
Default locale: ru_RU, platform encoding: Cp1251
OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"

BUILD: SUCCESS

Environment 2:

Apache Maven 3.9.7 (8b094c9513efc1b9ce2d952b3b9c8eaedaf8cbf0)
Maven home: C:\Users\asus\Maven\apache-maven-3.9.7
Java version: 17.0.12, vendor: Eclipse Adoptium, runtime: C:\opt\jdk-17.0.12_7
Default locale: ru_RU, platform encoding: Cp1251
OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"

BUILD: SUCCESS

Environment 3:

Apache Maven 3.9.8 (36645f6c9b5079805ea5009217e36f2cffd34256)
Maven home: C:\Users\asus\Maven\apache-maven-3.9.8
Java version: 17.0.12, vendor: Eclipse Adoptium, runtime: C:\opt\jdk-17.0.12_7
Default locale: ru_RU, platform encoding: Cp1251
OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"

BUILD: SUCCESS

Environment 4:

Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: C:\Users\asus\Maven\maven-3.9.9
Java version: 17.0.12, vendor: Eclipse Adoptium, runtime: C:\opt\jdk-17.0.12_7
Default locale: ru_RU, platform encoding: Cp1251
OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"

BUILD: ERROR

Environment 5 (Maven Wrapper from Quarkus directory):

Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)
Maven home: C:\Users\asus\.m2\wrapper\dists\apache-maven-3.9.9-bin\33b4b2b4\apache-maven-3.9.9
Java version: 17.0.12, vendor: Eclipse Adoptium, runtime: C:\opt\jdk-17.0.12_7
Default locale: ru_RU, platform encoding: Cp1251
OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"

BUILD: ERROR

I can provide build log, with -X -e, but it is too big.

lasteris added a commit to lasteris/quarkus-project-develocity-extension that referenced this issue Oct 10, 2024
These changes solves quarkusio/quarkus#42756.

What i have done to check ?

1) Made commit changes.
2) ./mvnw clean install (quarkus-project-develocity-extension, 1.1.6-SNAPSHOT to make it visible via local m2)
3) Made some changes to https://github.com/quarkusio/quarkus/blob/main/.mvn/extensions.xml, which is now looking as below:

```
 <extensions>
    <extension>
        <groupId>com.gradle</groupId>
        <artifactId>develocity-maven-extension</artifactId>
        <version>1.22.2</version>
    </extension>
    <extension>
        <groupId>com.gradle</groupId>
        <artifactId>common-custom-user-data-maven-extension</artifactId>
        <version>2.0.1</version>
    </extension>
    <extension>
        <groupId>com.gradle</groupId>
        <artifactId>quarkus-build-caching-extension</artifactId>
        <version>1.8</version>
    </extension>
    <extension>
        <groupId>io.quarkus.develocity</groupId>
        <artifactId>quarkus-project-develocity-extension</artifactId>
        <version>1.1.6-SNAPSHOT</version>
    </extension>
</extensions>
```
4) cd into quarkus project git repository root directory on my disk drive
5) ./mvnw -Dquickly

Result looks like that:

```
...

[INFO] Quarkus - Documentation ............................ SUCCESS [ 10.929 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  35:00 min
[INFO] Finished at: 2024-10-09T17:33:10+03:00
[INFO] ------------------------------------------------------------------------
[INFO] 14725 goals, 14709 executed, 16 from cache
```

This is only way how i finally successfully built Quarkus on my Windows machine via Maven Wrapper or even locally installed Maven of version 3.9.9
@lasteris
Copy link
Contributor

@gsmet looks like this problem fixed now. Please, review, if i am right, this should be you or @jprinet

@lasteris
Copy link
Contributor

lasteris commented Oct 11, 2024

@michalvavrik can you try fetch fresh main and build ? for me it's fixed now.

@lasteris
Copy link
Contributor

@jprinet https://github.com/quarkusio/quarkus/runs/31389427792

is that what you asked for?

@jprinet
Copy link
Contributor

jprinet commented Oct 11, 2024

Not really @lasteris, we need a CI worflow run from main branch (the one which populates the remote cache) to then be able to run a local build against the same exact commit to verify that a remote cache hit is not breaking the build anymore.

Could you please

  • pull this commit
  • empty your local cache (on Linux that would be rm -rf ~/.m2/.develocity/build-cache)
  • rerun a build with debug flags (-Dorg.slf4j.simpleLogger.log.develocity.goal.cache=debug)

to verify that you got a remote cache hit (Remote cache hit should be printed instead of an exception on the faulty goal)?

@lasteris
Copy link
Contributor

My environmental is Windows, but yes, I will do that.

to verify that you got a remote cache hit (Remote cache hit should be printed instead of an exception on the faulty goal)?

@lasteris
Copy link
Contributor

lasteris commented Oct 11, 2024

Unfortunately, the error has returned.

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:testCompile (default-testCompile) on project quarkus-kubernetes-service-binding: Execution default-testCompile of goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:testCompile failed: Internal error in Develocity Maven extension: goal execution: Failed to load cache entry for org.apache.maven.plugins:maven-compiler-plugin:3.13.0:testCompile (default-testCompile) @ io.quarkus:quarkus-kubernetes-service-binding:jar:999-SNAPSHOT: Could not load from remote cache: Cannot create directory 'C:\Users\asus\repo\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s\.hidden-symlink-dir'. -> [Help 1]

How that can be truth ?

So, local cache working, but remote nope ?

I am sad(

@jprinet
Copy link
Contributor

jprinet commented Oct 11, 2024

That was my fear @lasteris, as we have no clear evidence of the problem nor a fix in our latest versions.
When you have a successful local build, is that with a local cache hit (you can use -Dorg.slf4j.simpleLogger.log.develocity.goal.cache=debug to confirm)?

@lasteris
Copy link
Contributor

lasteris commented Oct 11, 2024

@jprinet

[INFO] -----------< io.quarkus:quarkus-kubernetes-service-binding >------------
[INFO] Building Quarkus - Kubernetes Service Binding - Runtime 999-SNAPSHOT [221/1230]
[INFO]   from extensions\kubernetes-service-binding\runtime\pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- clean:3.2.0:clean (clean-cache-dirs) @ quarkus-kubernetes-service-binding ---
[INFO] Deleting C:\Users\asus\repo\quarkus\extensions\kubernetes-service-binding\runtime\target
[INFO] Deleting C:\Users\asus\repo\quarkus\extensions\kubernetes-service-binding\runtime\.cache (includes = [], excludes = [])
[DEBUG] Build caching was not enabled for this goal execution because the 'clean' goal was not supported.
[INFO]
[INFO] --- clean:3.2.0:clean (default-clean) @ quarkus-kubernetes-service-binding ---
[DEBUG] Build caching was not enabled for this goal execution because the 'clean' goal was not supported.
[INFO]
[INFO] --- buildnumber:3.0.0:create (get-scm-revision) @ quarkus-kubernetes-service-binding ---
[DEBUG] Build caching was not enabled for this goal execution because the 'create' goal was not supported.
[INFO]
[INFO] --- formatter:2.24.1:format (default) @ quarkus-kubernetes-service-binding ---
[DEBUG] Local cache miss
[DEBUG] Remote cache miss
[INFO] Processed 9 files in 75ms (Formatted: 0, Skipped: 0, Unchanged: 9, Failed: 0, Readonly: 0)
[DEBUG] Stored outputs in the local build cache

And yes, build successful ( i used quarkus-project-develocity-extension 1.1.6-SNAPSHOT, which i have built previously manually before my PR)

Should i run a second time ?

reference this:

Be sure to include the clean phase because otherwise the extension disables storing goal outputs in the Build Cache. This is done to avoid accidentally adding obsolete files that existed prior to invoking the build to the cached outputs of a goal.

and this

As you can see from the summary line, all goals were executed and none were loaded from cache. That’s not surprising since the build started with an empty cache.

upd.

1.1.16 Error
1.1.16-SNAPSHOT success

@Inithron
Copy link

Hi,
is there any update on this issue? I have the same problem with the current main branch.

@lasteris
Copy link
Contributor

@Inithron Problem still occurs, but you can avoid this problem by applying this (disable remote cache, while it cause of problem) :

  1. find file .mvn/develocity.xml
  2. replace
        <remote>
            <enabled>#{env['RELEASE_GITHUB_TOKEN'] == null and properties['no-build-cache'] == null}</enabled>
            <storeEnabled>#{env['CI'] != null and env['DEVELOCITY_ACCESS_KEY'] != null and env['DEVELOCITY_ACCESS_KEY'] != '' and env['RELEASE_GITHUB_TOKEN'] == null}</storeEnabled>
        </remote>

with:

        <remote>
            <enabled>false</enabled>
            <storeEnabled>false</storeEnabled>
        </remote>

@alextu
Copy link

alextu commented Jan 16, 2025

Hi, we could not reproduce this behavior using GH actions with Windows runners.
From a code perspective, we can see it happening if the resources:testResources goal copies src/test/resources/k8s/test-k8s/.hidden-symlink-dir to a symlink target/test-classes/k8s/test-k8s/.hidden-symlink-dir.
This is not what we see, though, on the windows runners: it actually create a dir. And I could not find a way with Maven to configure the goal so it copies the symlink, as I suspect it does for those failing builds.

@lasteris to verify this theory, could you please run a build locally and then output the result of:
Get-ChildItem -Path "quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s" -Force

@lasteris
Copy link
Contributor

lasteris commented Jan 16, 2025

to verify this theory, could you please run a build locally and then output the result of:\nGet-ChildItem -Path "quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s" -Force

yeah, I will do it in 4-5 hours, just wait me

@lasteris
Copy link
Contributor

@alextu I have failed to reproduce, but remote cache even did not try to work.
What i've done ?

  1. git fetch upstream origin/main
  2. git rebase origin/main
  3. mvn -Dquickly (got BUILD SUCCESS)
  4. deleted all directories inside C:\Users\asus\.m2\.develocity
  5. mvn -Dquickly (got BUILD SUCCESS)
  6. mvn "-Dquickly" "-Dorg.slf4j.simpleLogger.log.develocity.goal.cache=debug" (BUILD SUCCESS)

Note (log details):

[DEBUG] Using the build cache with the following configuration:
  Local build cache: enabled
      storeEnabled: true
      directory: C:\Users\asus\.m2\.develocity\build-cache
      cleanup: enabled
          retention: P7D
          interval: P1D
  Remote build cache: enabled
      url: https://ge.quarkus.io/cache/
      authentication: none
      storeEnabled: false
      allowUntrustedServer: false
      allowInsecureProtocol: false
      useExpectContinue: false

But all i see in problematic block is:

[INFO] --- compiler:3.13.0:compile (default-compile) @ quarkus-kubernetes-service-binding ---
[DEBUG] Local cache hit (11 KB)
[INFO] Loaded from the build cache, saving 0.522s
[INFO]
[INFO] --- resources:3.3.1:testResources (default-testResources) @ quarkus-kubernetes-service-binding ---
[INFO] Copying 11 resources from src\test\resources to target\test-classes
[DEBUG] Build caching was not enabled for this goal execution because the 'testResources' goal was not supported.
[INFO]
[INFO] --- compiler:3.13.0:testCompile (default-testCompile) @ quarkus-kubernetes-service-binding ---
[DEBUG] Local cache hit (4 KB)
[INFO] Loaded from the build cache, saving 0.265s
[INFO]
[INFO] --- surefire:3.5.2:test (default-test) @ quarkus-kubernetes-service-binding ---
[INFO] Skipped

What am I missing ? Why remote cache even not trying to work ?

@alextu
Copy link

alextu commented Jan 17, 2025

What you see is expected:

  • you get local cache hits on cacheable goals, so it won't go to the remote. The bug happened when hitting the remote cache for the testCompile goal.
  • as for the resources:testResources goal, it's not cacheable by design (not worth caching as it's faster to copy files than extracting a cached entry)

But that's ok, even in this state, I just need to see what's in target/test-classes/k8s/test-k8s, it's probably different from what we have, given the logs:

  • yours
[INFO] --- resources:3.3.1:testResources (default-testResources) @ quarkus-kubernetes-service-binding ---
[INFO] Copying 11 resources from src\test\resources to target\test-classes
  • ours
[INFO] --- resources:3.3.1:testResources (default-testResources) @ quarkus-kubernetes-service-binding ---
[INFO] Copying 13 resources from src\test\resources to target\test-classes

@lasteris
Copy link
Contributor

lasteris commented Jan 17, 2025

I just need to see what's in target/test-classes/k8s/test-k8s

PS C:\Users\asus\repo\quarkus> Get-ChildItem -Path "extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s" -Force


    Каталог: C:\Users\asus\repo\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        16.01.2025     23:49                .hidden-dir
-a----        08.08.2024      9:02             12 .hidden-symlink-dir
-a----        08.08.2024      9:02             28 provider
-a----        08.08.2024      9:02             35 test-secret-key
-a----        08.08.2024      9:02             24 type

PS C:\Users\asus\repo\quarkus>

@alextu
Copy link

alextu commented Jan 17, 2025

Thanks, that's very interesting indeed.
One more test: can you please run a build by disabling all caches (and clean): mvn clean -Dquickly -Ddevelocity.cache.local.enabled=false -Ddevelocity.cache.remote.enabled=false and then output the same dir content with Get-ChildItem -Path "extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s" -Force?

@lasteris
Copy link
Contributor

One more test

PS C:\Users\asus\repo\quarkus> Get-ChildItem -Path "extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s" -Force


    Каталог: C:\Users\asus\repo\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        17.01.2025     13:45                .hidden-dir
-a----        08.08.2024      9:02             12 .hidden-symlink-dir
-a----        08.08.2024      9:02             28 provider
-a----        08.08.2024      9:02             35 test-secret-key
-a----        08.08.2024      9:02             24 type


PS C:\Users\asus\repo\quarkus>

@lasteris
Copy link
Contributor

lasteris commented Jan 17, 2025

@alextu About last test i think i need to tell you more details.

[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  50:01 min
[INFO] Finished at: 2025-01-17T14:26:22+03:00

@alextu
Copy link

alextu commented Jan 17, 2025

Thanks, I think I now know what's happening, can you please execute the following to confirm:

  • Get-ChildItem -Path "extensions\kubernetes-service-binding\src\test\resources\k8s\test-k8s" -Force
  • git config --show-origin --get "core.symlinks"

@lasteris
Copy link
Contributor

lasteris commented Jan 17, 2025

* `Get-ChildItem -Path "extensions\kubernetes-service-binding\src\test\resources\k8s\test-k8s" -Force`

I am ready to do it now, but with one clarification. Your path seems not correct.
Is it here instead ? extensions\kubernetes-service-binding\runtime\src\test\resources\k8s\test-k8s

if so:

PS C:\Users\asus\repo\quarkus> git config --show-origin --get "core.symlinks"
file:.git/config        false
PS C:\Users\asus\repo\quarkus>

and:

PS C:\Users\asus\repo\quarkus> Get-ChildItem -Path "extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s" -Force


    Каталог: C:\Users\asus\repo\quarkus\extensions\kubernetes-service-binding\runtime\target\test-classes\k8s\test-k8s


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----        17.01.2025     13:45                .hidden-dir
-a----        08.08.2024      9:02             12 .hidden-symlink-dir
-a----        08.08.2024      9:02             28 provider
-a----        08.08.2024      9:02             35 test-secret-key
-a----        08.08.2024      9:02             24 type

@lasteris
Copy link
Contributor

lasteris commented Jan 18, 2025

@alextu So, am I correctly understood, that root cause of problem for git on Windows, that symlinks disabled by default ?
Or it's not ?

@alextu
Copy link

alextu commented Jan 20, 2025

Yes,
Here's what's happening in detail:

  • the project is built on CI, the core.symlinks is true, so symlinks are checked out, and eventually, a cached entry is populated on the remote cache, containing .hidden-symlink-dir as a dir
  • later, the project is built on your platform where core.symlinks is false, so files are checked out instead of symlinks. The resources:testResources copies to target the .hidden-symlink-dir as a file. Then, if the testCompile goal has a remote cache hit, it will unpack the cached entry containing .hidden-symlink-dir as a dir, failing to do so because there's an existing non-dir file with the same name in target.

To solve this issue, you must re-clone the project with core.symlinks set to true. This could be documented in Quarkus CONTRIBUTING.md.

@lasteris
Copy link
Contributor

To solve this issue, you must re-clone the project with core.symlinks set to true. This could be documented in Quarkus CONTRIBUTING.md.

Thank you for that investigation 💯
Yeah, i have thought about guide. And i think i will do it by myself

@gsmet
Copy link
Member

gsmet commented Jan 20, 2025

I wanted to thank you all for the time you spent on diagnosing this issue!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/kubernetes env/windows Impacts Windows machines kind/bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants
@alextu @rsvoboda @gsmet @jprinet @lasteris @michalvavrik @Inithron and others