quarkiverse / quarkus-argocd

An ArgoCD extension for Quarkus
https://docs.quarkiverse.io/quarkus-argocd/dev
Apache License 2.0
0 stars 2 forks source link

Cannot invoke "io.quarkiverse.argocd.spi.ArgoCDOutputDirBuildItem$Effective.getOutputDir()" because "outputDir" is null #23

Closed cmoulliard closed 2 days ago

cmoulliard commented 3 days ago

Issue

If we add the quarkus extension

        <dependency>
            <groupId>io.quarkiverse.argocd</groupId>
            <artifactId>quarkus-argocd</artifactId>
            <version>999-SNAPSHOT</version>
        </dependency>

to a new quarkus project created quarkus create app; code-with-quarkus and compile it mvn clean compile, we got such an error

[INFO] Running org.acme.GreetingResourceTest
2024-09-23 11:52:44,588 WARN  [io.qua.arg.dep.ArgoCDProcessor] (build-14) No SCM information found. Skipping argocd deployment generation.
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.471 s <<< FAILURE! -- in org.acme.GreetingResourceTest
[ERROR] org.acme.GreetingResourceTest.testHelloEndpoint -- Time elapsed: 0.002 s <<< ERROR!
java.lang.RuntimeException: 
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
        [error]: Build step io.quarkiverse.argocd.deployment.ArgoCDProcessor#generateApplicationFileSystemResources threw an exception: java.lang.NullPointerException: Cannot invoke "io.quarkiverse.argocd.spi.ArgoCDOutputDirBuildItem$Effective.getOutputDir()" because "outputDir" is null
        at io.quarkiverse.argocd.deployment.ArgoCDProcessor.generateApplicationFileSystemResources(ArgoCDProcessor.java:114)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

        at io.quarkus.test.junit.QuarkusTestExtension.throwBootFailureException(QuarkusTestExtension.java:634)
        at io.quarkus.test.junit.QuarkusTestExtension.interceptTestClassConstructor(QuarkusTestExtension.java:718)
        at java.base/java.util.Optional.orElseGet(Optional.java:364)
        at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
        at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
Caused by: java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
        [error]: Build step io.quarkiverse.argocd.deployment.ArgoCDProcessor#generateApplicationFileSystemResources threw an exception: java.lang.NullPointerException: Cannot invoke "io.quarkiverse.argocd.spi.ArgoCDOutputDirBuildItem$Effective.getOutputDir()" because "outputDir" is null
        at io.quarkiverse.argocd.deployment.ArgoCDProcessor.generateApplicationFileSystemResources(ArgoCDProcessor.java:114)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

        at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:354)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.createInitialRuntimeApplication(AugmentActionImpl.java:272)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.createInitialRuntimeApplication(AugmentActionImpl.java:62)
        at io.quarkus.test.junit.QuarkusTestExtension.doJavaStart(QuarkusTestExtension.java:219)
        at io.quarkus.test.junit.QuarkusTestExtension.ensureStarted(QuarkusTestExtension.java:601)
        at io.quarkus.test.junit.QuarkusTestExtension.beforeAll(QuarkusTestExtension.java:651)
        ... 1 more
Caused by: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
        [error]: Build step io.quarkiverse.argocd.deployment.ArgoCDProcessor#generateApplicationFileSystemResources threw an exception: java.lang.NullPointerException: Cannot invoke "io.quarkiverse.argocd.spi.ArgoCDOutputDirBuildItem$Effective.getOutputDir()" because "outputDir" is null
        at io.quarkiverse.argocd.deployment.ArgoCDProcessor.generateApplicationFileSystemResources(ArgoCDProcessor.java:114)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

        at io.quarkus.builder.Execution.run(Execution.java:123)
        at io.quarkus.builder.BuildExecutionBuilder.execute(BuildExecutionBuilder.java:79)
        at io.quarkus.deployment.QuarkusAugmentor.run(QuarkusAugmentor.java:161)
        at io.quarkus.runner.bootstrap.AugmentActionImpl.runAugment(AugmentActionImpl.java:350)
        ... 6 more
Caused by: java.lang.NullPointerException: Cannot invoke "io.quarkiverse.argocd.spi.ArgoCDOutputDirBuildItem$Effective.getOutputDir()" because "outputDir" is null
        at io.quarkiverse.argocd.deployment.ArgoCDProcessor.generateApplicationFileSystemResources(ArgoCDProcessor.java:114)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

[INFO] 
[INFO] Results:
[INFO] 
[ERROR] Errors: 
[ERROR]   GreetingResourceTest.testHelloEndpoint » Runtime java.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors
        [error]: Build step io.quarkiverse.argocd.deployment.ArgoCDProcessor#generateApplicationFileSystemResources threw an exception: java.lang.NullPointerException: Cannot invoke "io.quarkiverse.argocd.spi.ArgoCDOutputDirBuildItem$Effective.getOutputDir()" because "outputDir" is null
        at io.quarkiverse.argocd.deployment.ArgoCDProcessor.generateApplicationFileSystemResources(ArgoCDProcessor.java:114)
        at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)
        at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
        at io.quarkus.builder.BuildContext.run(BuildContext.java:256)
        at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
        at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2516)
        at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2495)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1521)
        at java.base/java.lang.Thread.run(Thread.java:1583)
        at org.jboss.threads.JBossThread.run(JBossThread.java:483)

[INFO] 
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  5.003 s
[INFO] Finished at: 2024-09-23T11:52:44+02:00
[INFO] ------------------------------------------------------------------------
cmoulliard commented 2 days ago

Fixed with PR #26