Description
Currently, the Destination directory option in Artifact Dependency can be left as empty.
This does not work when using Oracle.
Producing artifacts works well, but when a job from a later stage tries to use the artifacts and error occurs.
As Oracle cannot handle storing empty strings, the directory is stored as NULL instead.
It looks like Bamboo fails to deal with NULLs for a destination directory when retrieving and using the value:
java.lang.NullPointerException at java.io.File.<init>(File.java:305) at com.atlassian.bamboo.build.artifact.LocalArtifactManager.retrieve(LocalArtifactManager.java:74) at com.atlassian.bamboo.build.pipeline.tasks.PrepareBuildTask.prepareArtifacts(PrepareBuildTask.java:100) at com.atlassian.bamboo.build.pipeline.tasks.PrepareBuildTask.call(PrepareBuildTask.java:50)
The problem happens during execution of the second stage, even though no actual build action is being performed. The bamboo-home/artifacts directory is present, and the artifact is created correctly.
If the directory the artifact should be referenced from in stage 2 is changed, another nullpointerexception happens:
2011-08-29 17:14:30,361 ERROR [qtp470279362-11] [FiveOhOh] 500 Exception was thrown. java.lang.NullPointerException at com.atlassian.bamboo.ww2.actions.build.admin.config.ConfigureArtifactSubscription.isSubscriptionUnique(ConfigureArtifactSubscription.java:158) at com.atlassian.bamboo.ww2.actions.build.admin.config.ConfigureArtifactSubscription.validateSubscription(ConfigureArtifactSubscription.java:147)