We have experienced a Linux/Mac OS X case sensitivity issue. Compare oneandone/src/test/resources/sharedstorage in the 2.0.0rc2 jars and git checkouts:
$ find /home/gaul/bin/2.0.0-rc2/jclouds-labs-2.0.0/oneandone/src/ \ /home/gaul/work/jclouds-labs/oneandone/src/ \ -iname sharedstorage /home/gaul/work/2.0.0-rc2/jclouds-labs-2.0.0/oneandone/src/test/resources/sharedStorage /home/gaul/work/jclouds-labs/oneandone/src/test/resources/sharedstorage /home/gaul/work/jclouds-labs/oneandone/src/test/resources/sharedStorage We duplicate the test inputs in the git checkout and the release process on Mac OS X must have created the upper-case directory first. Maybe we should package our release process in a Docker container to ensure repeatable cross-platform builds? I submitted a pull request to address this issue: https://github.com/jclouds/jclouds-labs/pull/335 I do not think we need another release candidate to address this issue. On Sun, Nov 06, 2016 at 08:52:44PM -0800, Andrew Gaul wrote: > I encounter NullPointerExceptions when running the jclouds-labs > oneandone tests. Oddly I do not see these errors when running the tests > from master: > > $ mvn --version > Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; > 2015-11-10T08:41:47-08:00) > Maven home: /usr/local/apache-maven-3.3.9 > Java version: 1.8.0_112, vendor: Oracle Corporation > Java home: /home/gaul/bin/jdk1.8.0_112/jre > Default locale: en_US, platform encoding: UTF-8 > OS name: "linux", version: "3.13.0-100-generic", arch: "amd64", family: "unix" > > $ ./verify_jclouds_release.sh 2.0.0-rc2 > ... > Tests run: 210, Failures: 12, Errors: 0, Skipped: 0, Time elapsed: 17.076 sec > <<< FAILURE! - in TestSuite > testAttachServer(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.021 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testAttachServer(SharedStorageApiMockTest.java:229) > > testChangePassword(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.006 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testChangePassword(SharedStorageApiMockTest.java:286) > > testCreate(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.004 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testCreate(SharedStorageApiMockTest.java:125) > > testDelete(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.002 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testDelete(SharedStorageApiMockTest.java:152) > > testDetachServer(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.001 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testDetachServer(SharedStorageApiMockTest.java:245) > > testGet(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.001 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testGet(SharedStorageApiMockTest.java:101) > > testGetServer(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.003 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testGetServer(SharedStorageApiMockTest.java:205) > > testList(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.002 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testList(SharedStorageApiMockTest.java:41) > > testListAccessCredentials(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.002 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testListAccessCredentials(SharedStorageApiMockTest.java:257) > > testListServers(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.001 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testListServers(SharedStorageApiMockTest.java:175) > > testListWithOption(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.001 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testListWithOption(SharedStorageApiMockTest.java:70) > > testUpdate(org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest) > Time elapsed: 0.002 sec <<< FAILURE! > java.lang.NullPointerException: null > at > com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:82) > at > com.google.common.io.Resources$UrlByteSource.<init>(Resources.java:77) > at com.google.common.io.Resources.asByteSource(Resources.java:71) > at com.google.common.io.Resources.asCharSource(Resources.java:120) > at com.google.common.io.Resources.toString(Resources.java:145) > at > org.apache.jclouds.oneandone.rest.internal.BaseOneAndOneApiMockTest.stringFromResource(BaseOneAndOneApiMockTest.java:83) > at > org.apache.jclouds.oneandone.rest.features.SharedStorageApiMockTest.testUpdate(SharedStorageApiMockTest.java:141) > > > Results : > > Failed tests: > > SharedStorageApiMockTest.testAttachServer:229->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testChangePassword:286->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testCreate:125->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testDelete:152->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testDetachServer:245->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testGet:101->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testGetServer:205->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testList:41->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testListAccessCredentials:257->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testListServers:175->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testListWithOption:70->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > SharedStorageApiMockTest.testUpdate:141->BaseOneAndOneApiMockTest.stringFromResource:83 > » NullPointer > > Tests run: 210, Failures: 12, Errors: 0, Skipped: 0 > > [INFO] > ------------------------------------------------------------------------ > [INFO] Reactor Summary: > [INFO] > [INFO] Apache jclouds labs ................................ SUCCESS [ 4.026 > s] > [INFO] jclouds Azure Compute ARM API ...................... SUCCESS [ 38.625 > s] > [INFO] jclouds azure compute API .......................... SUCCESS [ 17.715 > s] > [INFO] Apache jclouds B2 API .............................. SUCCESS [ 9.020 > s] > [INFO] jclouds cdmi api ................................... SUCCESS [ 4.195 > s] > [INFO] jclouds CloudSigma v2 API .......................... SUCCESS [ 10.809 > s] > [INFO] jclouds CloudSigma v2 Honolulu Provider ............ SUCCESS [ 2.908 > s] > [INFO] jclouds CloudSigma v2 Las Vegas Provider ........... SUCCESS [ 2.488 > s] > [INFO] jclouds CloudSigma v2 Miami Provider ............... SUCCESS [ 2.842 > s] > [INFO] jclouds CloudSigma v2 San Jose Provider ............ SUCCESS [ 2.642 > s] > [INFO] jclouds CloudSigma v2 Washington DC Provider ....... SUCCESS [ 2.674 > s] > [INFO] jclouds CloudSigma v2 Zurich Provider .............. SUCCESS [ 2.432 > s] > [INFO] jclouds jdbc core .................................. SUCCESS [ 59.731 > s] > [INFO] jclouds h2 jdbc provider ........................... SUCCESS [ 17.322 > s] > [INFO] jclouds joyent-cloudapi api ........................ SUCCESS [ 9.322 > s] > [INFO] jclouds joyentcloud provider ....................... SUCCESS [ 3.461 > s] > [INFO] jclouds Abiquo api ................................. SUCCESS [ 4.039 > s] > [INFO] jclouds ProfitBricks REST api ...................... SUCCESS [ 42.911 > s] > [INFO] jclouds OneAndOne REST api ......................... FAILURE [ 19.764 > s] > [INFO] > ------------------------------------------------------------------------ > [INFO] BUILD FAILURE > [INFO] > ------------------------------------------------------------------------ > [INFO] Total time: 04:17 min > [INFO] Finished at: 2016-11-06T19:03:07-08:00 > [INFO] Final Memory: 83M/764M > [INFO] > ------------------------------------------------------------------------ > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-surefire-plugin:2.17:test (default-test) on > project oneandone: There are test failures. > [ERROR] > [ERROR] Please refer to > /home/gaul/bin/2.0.0-rc2/jclouds-labs-2.0.0/oneandone/target/surefire-reports > for the individual test results. > [ERROR] -> [Help 1] > [ERROR] > [ERROR] To see the full stack trace of the errors, re-run Maven with the -e > switch. > [ERROR] Re-run Maven using the -X switch to enable full debug logging. > [ERROR] > [ERROR] For more information about the errors and possible solutions, please > read the following articles: > [ERROR] [Help 1] > http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException > [ERROR] > [ERROR] After correcting the problems, you can resume the build with the > command > [ERROR] mvn <goals> -rf :oneandone > [ > > -- > Andrew Gaul > http://gaul.org/ -- Andrew Gaul http://gaul.org/