This is an automated email from the ASF dual-hosted git repository.

gaul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jclouds-labs.git


The following commit(s) were added to refs/heads/master by this push:
     new e788535  Sync OSGi handling with Apache JClouds Project
e788535 is described below

commit e7885359a7755ac5ad6298f35b7547a31e1c5548
Author: gurkerl83 <[email protected]>
AuthorDate: Sun Oct 18 01:49:25 2020 +0200

    Sync OSGi handling with Apache JClouds Project
    
    This project, the lab version of Apache JCloud, share the exact build 
instructions as the primary Apache JCloud project with all its modules.
    Apache JCloud is shifting its strategy in handling OSGi configuration. 
Instead of using the Maven Bundle Plugin, a wrapper of the BND plugin, the BND 
plugin gets used directly.
    Remove the OSGi configuration from each module. The configuration gets 
served to the BND through dedicated configuration / bnd files.
    
    Onboard bnd-configuration files, one per module
    
    Change packaging structure of cloud-sigma regions
    
    Move provider classes from implementation and test from 
org.jclouds.cloudsigma2 to the respective package, e.g., 
org.jclouds.cloudsigma2.hnl to avoid a collision by identical package name 
served from different bundles.
    
    Adjust GSON handling
    
    Instead of repacking GSON in the Apache JCloud on a package name level, 
only the OSGi Metadata gets changed. This means the original GSON packing stays 
intact.
    
    Ignore bnd files
    
    Disable broken unit test
---
 abiquo/bnd.bnd                                                 |  2 ++
 abiquo/pom.xml                                                 |  9 +--------
 aliyun-ecs/bnd.bnd                                             |  2 ++
 aliyun-ecs/pom.xml                                             |  5 +----
 cdmi/bnd.bnd                                                   |  2 ++
 cdmi/pom.xml                                                   | 10 ----------
 cloudsigma2-hnl/bnd.bnd                                        |  2 ++
 cloudsigma2-hnl/pom.xml                                        |  8 --------
 .../{ => hnl}/CloudSigma2HonoluluProviderMetadata.java         |  3 ++-
 .../cloudsigma2/{ => hnl}/CloudSigma2HonoluluLiveTest.java     |  3 ++-
 .../compute/CloudSigma2HonoluluComputeServiceLiveTest.java     |  3 ++-
 cloudsigma2-lvs/bnd.bnd                                        |  2 ++
 cloudsigma2-lvs/pom.xml                                        |  8 --------
 .../{ => lvs}/CloudSigma2LasVegasProviderMetadata.java         |  3 ++-
 .../cloudsigma2/{ => lvs}/CloudSigma2LasVegasLiveTest.java     |  3 ++-
 .../compute/CloudSigma2LasVegasComputeServiceLiveTest.java     |  3 ++-
 cloudsigma2-mia/bnd.bnd                                        |  2 ++
 cloudsigma2-mia/pom.xml                                        |  8 --------
 .../{ => mia}/CloudSigma2MiamiProviderMetadata.java            |  3 ++-
 .../cloudsigma2/{ => mia}/CloudSigma2MiamiLiveTest.java        |  3 ++-
 .../compute/CloudSigma2MiamiComputeServiceLiveTest.java        |  3 ++-
 cloudsigma2-sjc/bnd.bnd                                        |  2 ++
 cloudsigma2-sjc/pom.xml                                        |  8 --------
 .../{ => sjc}/CloudSigma2SanJoseProviderMetadata.java          |  3 ++-
 .../cloudsigma2/{ => sjc}/CloudSigma2SanJoseLiveTest.java      |  3 ++-
 .../compute/CloudSigma2SanJoseComputeServiceLiveTest.java      |  3 ++-
 cloudsigma2-wdc/bnd.bnd                                        |  2 ++
 cloudsigma2-wdc/pom.xml                                        |  8 --------
 .../{ => wdc}/CloudSigma2WashingtonProviderMetadata.java       |  3 ++-
 .../cloudsigma2/{ => wdc}/CloudSigma2WashingtonLiveTest.java   |  3 ++-
 .../compute/CloudSigma2WashingtonComputeServiceLiveTest.java   |  3 ++-
 cloudsigma2-zrh/bnd.bnd                                        |  2 ++
 cloudsigma2-zrh/pom.xml                                        |  8 --------
 .../{ => zrh}/CloudSigma2ZurichProviderMetadata.java           |  3 ++-
 .../cloudsigma2/{ => zrh}/CloudSigma2ZurichLiveTest.java       |  3 ++-
 .../compute/CloudSigma2ZurichComputeServiceLiveTest.java       |  3 ++-
 cloudsigma2/bnd.bnd                                            |  2 ++
 cloudsigma2/pom.xml                                            |  8 --------
 dimensiondata/bnd.bnd                                          |  2 ++
 dimensiondata/pom.xml                                          |  8 --------
 .../compute/function/ServerToServerWithExternalIpTest.java     |  2 +-
 joyent-cloudapi/bnd.bnd                                        |  2 ++
 joyent-cloudapi/pom.xml                                        |  8 --------
 joyentcloud/bnd.bnd                                            |  2 ++
 joyentcloud/pom.xml                                            |  8 --------
 oneandone/bnd.bnd                                              |  2 ++
 oneandone/pom.xml                                              |  9 +--------
 .../jclouds/oneandone/rest/util/ServerApplianceParser.java     |  2 +-
 pom.xml                                                        |  4 ++++
 profitbricks-rest/bnd.bnd                                      |  2 ++
 profitbricks-rest/pom.xml                                      |  7 -------
 vagrant/bnd.bnd                                                |  2 ++
 vagrant/pom.xml                                                |  3 ---
 53 files changed, 77 insertions(+), 140 deletions(-)

diff --git a/abiquo/bnd.bnd b/abiquo/bnd.bnd
new file mode 100644
index 0000000..0d4999c
--- /dev/null
+++ b/abiquo/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.abiquo.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/abiquo/pom.xml b/abiquo/pom.xml
index facbeb6..3f66f4b 100644
--- a/abiquo/pom.xml
+++ b/abiquo/pom.xml
@@ -29,20 +29,13 @@
   <artifactId>abiquo</artifactId>
   <name>jclouds Abiquo api</name>
   <description>jclouds components to access an implementation of 
Abiquo</description>
-  <packaging>bundle</packaging>
-  
+
   <properties>
     <test.abiquo.endpoint>http://localhost/api</test.abiquo.endpoint>
     <test.abiquo.identity>FIXME</test.abiquo.identity>
     <test.abiquo.credential>FIXME</test.abiquo.credential>
     <test.abiquo.api-version />
     <test.abiquo.template />
-    
<jclouds.osgi.export>org.jclouds.abiquo*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.labs*;version="${project.version}",
-      org.jclouds*;version="${jclouds.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
   
   <dependencies>
diff --git a/aliyun-ecs/bnd.bnd b/aliyun-ecs/bnd.bnd
new file mode 100644
index 0000000..677e07d
--- /dev/null
+++ b/aliyun-ecs/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.aliyun.ecs.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/aliyun-ecs/pom.xml b/aliyun-ecs/pom.xml
index 05a56fc..305f6ae 100644
--- a/aliyun-ecs/pom.xml
+++ b/aliyun-ecs/pom.xml
@@ -28,7 +28,6 @@
     <artifactId>aliyun-ecs</artifactId>
     <name>jclouds Alibaba Elastic Compute Service API</name>
     <description>jclouds components to access an implementation of Alibaba 
Elastic Compute Service</description>
-    <packaging>bundle</packaging>
 
     <properties>
         
<test.aliyun-ecs.endpoint>https://ecs.aliyuncs.com/</test.aliyun-ecs.endpoint>
@@ -36,9 +35,7 @@
         
<test.aliyun-ecs.credential>FIXME_CREDENTIALS</test.aliyun-ecs.credential>
         <test.aliyun-ecs.template/>
 
-        
<jclouds.osgi.export>org.jclouds.aliyun.ecs.*;version="${project.version}"</jclouds.osgi.export>
-        
<jclouds.osgi.import>org.jclouds*;version="${project.version}",*</jclouds.osgi.import>
-        <jclouds.osgi.dynamic>*</jclouds.osgi.dynamic>
+
     </properties>
 
     <dependencies>
diff --git a/cdmi/bnd.bnd b/cdmi/bnd.bnd
new file mode 100644
index 0000000..d67b909
--- /dev/null
+++ b/cdmi/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.snia.cdmi.v1.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cdmi/pom.xml b/cdmi/pom.xml
index 4eb855d..204e945 100644
--- a/cdmi/pom.xml
+++ b/cdmi/pom.xml
@@ -30,7 +30,6 @@
   <artifactId>cdmi</artifactId>
   <name>jclouds cdmi api</name>
   <description>jclouds components to access an implementation of SNIA 
CDMI</description>
-  <packaging>bundle</packaging>
 
   <properties>
     <test.cdmi.endpoint>http://localhost:8080</test.cdmi.endpoint>
@@ -40,15 +39,6 @@
     <test.cdmi.credential>FIXME_CREDENTIALS</test.cdmi.credential>
     
<jclouds.blobstore.httpstream.url>FIXME_HTTPURL</jclouds.blobstore.httpstream.url>
     
<jclouds.blobstore.httpstream.md5>FIXME_HTTPMD5</jclouds.blobstore.httpstream.md5>
-
-    
<jclouds.osgi.export>org.jclouds.snia.cdmi.v1*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.blobstore.internal;version="${jclouds.version}",
-      org.jclouds.rest.internal;version="${jclouds.version}",
-      org.jclouds.labs*;version="${project.version}",
-      org.jclouds*;version="${jclouds.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git a/cloudsigma2-hnl/bnd.bnd b/cloudsigma2-hnl/bnd.bnd
new file mode 100644
index 0000000..3a07d8f
--- /dev/null
+++ b/cloudsigma2-hnl/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.cloudsigma2.hnl.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cloudsigma2-hnl/pom.xml b/cloudsigma2-hnl/pom.xml
index 1e4a709..2010c6f 100644
--- a/cloudsigma2-hnl/pom.xml
+++ b/cloudsigma2-hnl/pom.xml
@@ -31,7 +31,6 @@
   <version>2.3.0-SNAPSHOT</version>
   <name>jclouds CloudSigma v2 Honolulu Provider</name>
   <description>ComputeService binding to the CloudSigma datacenter in 
Honolulu</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.cloudsigma2-hnl.endpoint>https://hnl.cloudsigma.com/api/2.0/</test.cloudsigma2-hnl.endpoint>
@@ -41,13 +40,6 @@
     <test.cloudsigma2-hnl.credential>FIXME</test.cloudsigma2-hnl.credential>
     <!-- Ubuntu 14.04 Cloud Image -->
     
<test.cloudsigma2-hnl.template>imageId=9e0400ab-d911-4232-971d-f552330b61be,loginUser=ubuntu</test.cloudsigma2-hnl.template>
-    
<jclouds.osgi.export>org.jclouds.cloudsigma2*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.compute.internal;version="${project.version}",
-      org.jclouds.rest.internal;version="${project.version}",
-      org.jclouds*;version="${project.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git 
a/cloudsigma2-hnl/src/main/java/org/jclouds/cloudsigma2/CloudSigma2HonoluluProviderMetadata.java
 
b/cloudsigma2-hnl/src/main/java/org/jclouds/cloudsigma2/hnl/CloudSigma2HonoluluProviderMetadata.java
similarity index 96%
rename from 
cloudsigma2-hnl/src/main/java/org/jclouds/cloudsigma2/CloudSigma2HonoluluProviderMetadata.java
rename to 
cloudsigma2-hnl/src/main/java/org/jclouds/cloudsigma2/hnl/CloudSigma2HonoluluProviderMetadata.java
index 4d6cb1c..9d01dd9 100644
--- 
a/cloudsigma2-hnl/src/main/java/org/jclouds/cloudsigma2/CloudSigma2HonoluluProviderMetadata.java
+++ 
b/cloudsigma2-hnl/src/main/java/org/jclouds/cloudsigma2/hnl/CloudSigma2HonoluluProviderMetadata.java
@@ -14,11 +14,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.hnl;
 
 import java.net.URI;
 import java.util.Properties;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiMetadata;
 import org.jclouds.providers.ProviderMetadata;
 import org.jclouds.providers.internal.BaseProviderMetadata;
 
diff --git 
a/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/CloudSigma2HonoluluLiveTest.java
 
b/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/hnl/CloudSigma2HonoluluLiveTest.java
similarity index 92%
rename from 
cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/CloudSigma2HonoluluLiveTest.java
rename to 
cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/hnl/CloudSigma2HonoluluLiveTest.java
index d980ffd..b8e6397 100644
--- 
a/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/CloudSigma2HonoluluLiveTest.java
+++ 
b/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/hnl/CloudSigma2HonoluluLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.hnl;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2HonoluluLiveTest")
diff --git 
a/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2HonoluluComputeServiceLiveTest.java
 
b/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/hnl/compute/CloudSigma2HonoluluComputeServiceLiveTest.java
similarity index 90%
rename from 
cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2HonoluluComputeServiceLiveTest.java
rename to 
cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/hnl/compute/CloudSigma2HonoluluComputeServiceLiveTest.java
index 3d97ed1..af42247 100644
--- 
a/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2HonoluluComputeServiceLiveTest.java
+++ 
b/cloudsigma2-hnl/src/test/java/org/jclouds/cloudsigma2/hnl/compute/CloudSigma2HonoluluComputeServiceLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2.compute;
+package org.jclouds.cloudsigma2.hnl.compute;
 
+import org.jclouds.cloudsigma2.compute.CloudSigma2ComputeServiceLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2HonoluluComputeServiceLiveTest")
diff --git a/cloudsigma2-lvs/bnd.bnd b/cloudsigma2-lvs/bnd.bnd
new file mode 100644
index 0000000..984e428
--- /dev/null
+++ b/cloudsigma2-lvs/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.cloudsigma2.lvs.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cloudsigma2-lvs/pom.xml b/cloudsigma2-lvs/pom.xml
index 53c699a..9642f70 100644
--- a/cloudsigma2-lvs/pom.xml
+++ b/cloudsigma2-lvs/pom.xml
@@ -31,7 +31,6 @@
   <version>2.3.0-SNAPSHOT</version>
   <name>jclouds CloudSigma v2 Las Vegas Provider</name>
   <description>ComputeService binding to the CloudSigma datacenter in SuperNAP 
Las Vegas</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.cloudsigma2-lvs.endpoint>https://lvs.cloudsigma.com/api/2.0/</test.cloudsigma2-lvs.endpoint>
@@ -41,13 +40,6 @@
     <test.cloudsigma2-lvs.credential>FIXME</test.cloudsigma2-lvs.credential>
     <!-- Ubuntu 14.04 Cloud Image -->
     
<test.cloudsigma2-lvs.template>imageId=9e0400ab-d911-4232-971d-f552330b61be,loginUser=ubuntu</test.cloudsigma2-lvs.template>
-    
<jclouds.osgi.export>org.jclouds.cloudsigma2*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.compute.internal;version="${project.version}",
-      org.jclouds.rest.internal;version="${project.version}",
-      org.jclouds*;version="${project.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git 
a/cloudsigma2-lvs/src/main/java/org/jclouds/cloudsigma2/CloudSigma2LasVegasProviderMetadata.java
 
b/cloudsigma2-lvs/src/main/java/org/jclouds/cloudsigma2/lvs/CloudSigma2LasVegasProviderMetadata.java
similarity index 96%
rename from 
cloudsigma2-lvs/src/main/java/org/jclouds/cloudsigma2/CloudSigma2LasVegasProviderMetadata.java
rename to 
cloudsigma2-lvs/src/main/java/org/jclouds/cloudsigma2/lvs/CloudSigma2LasVegasProviderMetadata.java
index 2e7badd..7f89cad 100644
--- 
a/cloudsigma2-lvs/src/main/java/org/jclouds/cloudsigma2/CloudSigma2LasVegasProviderMetadata.java
+++ 
b/cloudsigma2-lvs/src/main/java/org/jclouds/cloudsigma2/lvs/CloudSigma2LasVegasProviderMetadata.java
@@ -14,11 +14,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.lvs;
 
 import java.net.URI;
 import java.util.Properties;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiMetadata;
 import org.jclouds.providers.ProviderMetadata;
 import org.jclouds.providers.internal.BaseProviderMetadata;
 
diff --git 
a/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/CloudSigma2LasVegasLiveTest.java
 
b/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/lvs/CloudSigma2LasVegasLiveTest.java
similarity index 92%
rename from 
cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/CloudSigma2LasVegasLiveTest.java
rename to 
cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/lvs/CloudSigma2LasVegasLiveTest.java
index e42523e..9e2c3e6 100644
--- 
a/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/CloudSigma2LasVegasLiveTest.java
+++ 
b/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/lvs/CloudSigma2LasVegasLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.lvs;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2LasVegasLiveTest")
diff --git 
a/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2LasVegasComputeServiceLiveTest.java
 
b/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/lvs/compute/CloudSigma2LasVegasComputeServiceLiveTest.java
similarity index 90%
rename from 
cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2LasVegasComputeServiceLiveTest.java
rename to 
cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/lvs/compute/CloudSigma2LasVegasComputeServiceLiveTest.java
index f4f4aaf..525139b 100644
--- 
a/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2LasVegasComputeServiceLiveTest.java
+++ 
b/cloudsigma2-lvs/src/test/java/org/jclouds/cloudsigma2/lvs/compute/CloudSigma2LasVegasComputeServiceLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2.compute;
+package org.jclouds.cloudsigma2.lvs.compute;
 
+import org.jclouds.cloudsigma2.compute.CloudSigma2ComputeServiceLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2LasVegasComputeServiceLiveTest")
diff --git a/cloudsigma2-mia/bnd.bnd b/cloudsigma2-mia/bnd.bnd
new file mode 100644
index 0000000..250f38e
--- /dev/null
+++ b/cloudsigma2-mia/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.cloudsigma2.mia.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cloudsigma2-mia/pom.xml b/cloudsigma2-mia/pom.xml
index 4644c2f..bdb425b 100644
--- a/cloudsigma2-mia/pom.xml
+++ b/cloudsigma2-mia/pom.xml
@@ -31,7 +31,6 @@
   <version>2.3.0-SNAPSHOT</version>
   <name>jclouds CloudSigma v2 Miami Provider</name>
   <description>ComputeService binding to the CloudSigma datacenter in 
Miami</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.cloudsigma2-mia.endpoint>https://mia.cloudsigma.com/api/2.0/</test.cloudsigma2-mia.endpoint>
@@ -41,13 +40,6 @@
     <test.cloudsigma2-mia.credential>FIXME</test.cloudsigma2-mia.credential>
     <!-- Ubuntu 14.04 Cloud Image -->
     
<test.cloudsigma2-mia.template>imageId=976368fb-cb6f-43d8-9632-4d19911b9304,loginUser=ubuntu</test.cloudsigma2-mia.template>
-    
<jclouds.osgi.export>org.jclouds.cloudsigma2*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.compute.internal;version="${project.version}",
-      org.jclouds.rest.internal;version="${project.version}",
-      org.jclouds*;version="${project.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git 
a/cloudsigma2-mia/src/main/java/org/jclouds/cloudsigma2/CloudSigma2MiamiProviderMetadata.java
 
b/cloudsigma2-mia/src/main/java/org/jclouds/cloudsigma2/mia/CloudSigma2MiamiProviderMetadata.java
similarity index 96%
rename from 
cloudsigma2-mia/src/main/java/org/jclouds/cloudsigma2/CloudSigma2MiamiProviderMetadata.java
rename to 
cloudsigma2-mia/src/main/java/org/jclouds/cloudsigma2/mia/CloudSigma2MiamiProviderMetadata.java
index 43ab404..894aa7d 100644
--- 
a/cloudsigma2-mia/src/main/java/org/jclouds/cloudsigma2/CloudSigma2MiamiProviderMetadata.java
+++ 
b/cloudsigma2-mia/src/main/java/org/jclouds/cloudsigma2/mia/CloudSigma2MiamiProviderMetadata.java
@@ -14,11 +14,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.mia;
 
 import java.net.URI;
 import java.util.Properties;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiMetadata;
 import org.jclouds.providers.ProviderMetadata;
 import org.jclouds.providers.internal.BaseProviderMetadata;
 
diff --git 
a/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/CloudSigma2MiamiLiveTest.java
 
b/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/mia/CloudSigma2MiamiLiveTest.java
similarity index 91%
rename from 
cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/CloudSigma2MiamiLiveTest.java
rename to 
cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/mia/CloudSigma2MiamiLiveTest.java
index 90bffa9..60a384c 100644
--- 
a/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/CloudSigma2MiamiLiveTest.java
+++ 
b/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/mia/CloudSigma2MiamiLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.mia;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2MiamiLiveTest")
diff --git 
a/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2MiamiComputeServiceLiveTest.java
 
b/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/mia/compute/CloudSigma2MiamiComputeServiceLiveTest.java
similarity index 90%
rename from 
cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2MiamiComputeServiceLiveTest.java
rename to 
cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/mia/compute/CloudSigma2MiamiComputeServiceLiveTest.java
index 9004cb4..debde91 100644
--- 
a/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2MiamiComputeServiceLiveTest.java
+++ 
b/cloudsigma2-mia/src/test/java/org/jclouds/cloudsigma2/mia/compute/CloudSigma2MiamiComputeServiceLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2.compute;
+package org.jclouds.cloudsigma2.mia.compute;
 
+import org.jclouds.cloudsigma2.compute.CloudSigma2ComputeServiceLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2MiamiComputeServiceLiveTest")
diff --git a/cloudsigma2-sjc/bnd.bnd b/cloudsigma2-sjc/bnd.bnd
new file mode 100644
index 0000000..348e09f
--- /dev/null
+++ b/cloudsigma2-sjc/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.cloudsigma2.sjc.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cloudsigma2-sjc/pom.xml b/cloudsigma2-sjc/pom.xml
index 28520c3..f4b5c00 100644
--- a/cloudsigma2-sjc/pom.xml
+++ b/cloudsigma2-sjc/pom.xml
@@ -31,7 +31,6 @@
   <version>2.3.0-SNAPSHOT</version>
   <name>jclouds CloudSigma v2 San Jose Provider</name>
   <description>ComputeService binding to the CloudSigma datacenter in San 
Jose</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.cloudsigma2-sjc.endpoint>https://sjc.cloudsigma.com/api/2.0/</test.cloudsigma2-sjc.endpoint>
@@ -41,13 +40,6 @@
     <test.cloudsigma2-sjc.credential>FIXME</test.cloudsigma2-sjc.credential>
     <!-- Ubuntu 14.04 Cloud Image -->
     
<test.cloudsigma2-sjc.template>imageId=4e1fb3af-5da9-4575-9b38-b8adac549aad,loginUser=ubuntu</test.cloudsigma2-sjc.template>
-    
<jclouds.osgi.export>org.jclouds.cloudsigma2*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.compute.internal;version="${project.version}",
-      org.jclouds.rest.internal;version="${project.version}",
-      org.jclouds*;version="${project.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git 
a/cloudsigma2-sjc/src/main/java/org/jclouds/cloudsigma2/CloudSigma2SanJoseProviderMetadata.java
 
b/cloudsigma2-sjc/src/main/java/org/jclouds/cloudsigma2/sjc/CloudSigma2SanJoseProviderMetadata.java
similarity index 96%
rename from 
cloudsigma2-sjc/src/main/java/org/jclouds/cloudsigma2/CloudSigma2SanJoseProviderMetadata.java
rename to 
cloudsigma2-sjc/src/main/java/org/jclouds/cloudsigma2/sjc/CloudSigma2SanJoseProviderMetadata.java
index 20ed5ac..cb38127 100644
--- 
a/cloudsigma2-sjc/src/main/java/org/jclouds/cloudsigma2/CloudSigma2SanJoseProviderMetadata.java
+++ 
b/cloudsigma2-sjc/src/main/java/org/jclouds/cloudsigma2/sjc/CloudSigma2SanJoseProviderMetadata.java
@@ -14,11 +14,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.sjc;
 
 import java.net.URI;
 import java.util.Properties;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiMetadata;
 import org.jclouds.providers.ProviderMetadata;
 import org.jclouds.providers.internal.BaseProviderMetadata;
 
diff --git 
a/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/CloudSigma2SanJoseLiveTest.java
 
b/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/sjc/CloudSigma2SanJoseLiveTest.java
similarity index 92%
rename from 
cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/CloudSigma2SanJoseLiveTest.java
rename to 
cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/sjc/CloudSigma2SanJoseLiveTest.java
index 70f8050..c4726a6 100644
--- 
a/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/CloudSigma2SanJoseLiveTest.java
+++ 
b/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/sjc/CloudSigma2SanJoseLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.sjc;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2SanJoseLiveTest")
diff --git 
a/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2SanJoseComputeServiceLiveTest.java
 
b/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/sjc/compute/CloudSigma2SanJoseComputeServiceLiveTest.java
similarity index 90%
rename from 
cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2SanJoseComputeServiceLiveTest.java
rename to 
cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/sjc/compute/CloudSigma2SanJoseComputeServiceLiveTest.java
index 7f1ce77..f12416d 100644
--- 
a/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2SanJoseComputeServiceLiveTest.java
+++ 
b/cloudsigma2-sjc/src/test/java/org/jclouds/cloudsigma2/sjc/compute/CloudSigma2SanJoseComputeServiceLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2.compute;
+package org.jclouds.cloudsigma2.sjc.compute;
 
+import org.jclouds.cloudsigma2.compute.CloudSigma2ComputeServiceLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2SanJoseComputeServiceLiveTest")
diff --git a/cloudsigma2-wdc/bnd.bnd b/cloudsigma2-wdc/bnd.bnd
new file mode 100644
index 0000000..7fd97eb
--- /dev/null
+++ b/cloudsigma2-wdc/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.cloudsigma2.wdc.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cloudsigma2-wdc/pom.xml b/cloudsigma2-wdc/pom.xml
index c39229a..9621834 100644
--- a/cloudsigma2-wdc/pom.xml
+++ b/cloudsigma2-wdc/pom.xml
@@ -31,7 +31,6 @@
   <version>2.3.0-SNAPSHOT</version>
   <name>jclouds CloudSigma v2 Washington DC Provider</name>
   <description>ComputeService binding to the CloudSigma datacenter in 
Washington DC</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.cloudsigma2-wdc.endpoint>https://wdc.cloudsigma.com/api/2.0/</test.cloudsigma2-wdc.endpoint>
@@ -41,13 +40,6 @@
     <test.cloudsigma2-wdc.credential>FIXME</test.cloudsigma2-wdc.credential>
     <!-- Ubuntu 14.04 Cloud Image -->
     
<test.cloudsigma2-wdc.template>imageId=677f3f9a-840a-4f6e-8a21-987dcb59c81a,loginUser=ubuntu</test.cloudsigma2-wdc.template>
-    
<jclouds.osgi.export>org.jclouds.cloudsigma2*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.compute.internal;version="${project.version}",
-      org.jclouds.rest.internal;version="${project.version}",
-      org.jclouds*;version="${project.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git 
a/cloudsigma2-wdc/src/main/java/org/jclouds/cloudsigma2/CloudSigma2WashingtonProviderMetadata.java
 
b/cloudsigma2-wdc/src/main/java/org/jclouds/cloudsigma2/wdc/CloudSigma2WashingtonProviderMetadata.java
similarity index 96%
rename from 
cloudsigma2-wdc/src/main/java/org/jclouds/cloudsigma2/CloudSigma2WashingtonProviderMetadata.java
rename to 
cloudsigma2-wdc/src/main/java/org/jclouds/cloudsigma2/wdc/CloudSigma2WashingtonProviderMetadata.java
index a816b51..92a321a 100644
--- 
a/cloudsigma2-wdc/src/main/java/org/jclouds/cloudsigma2/CloudSigma2WashingtonProviderMetadata.java
+++ 
b/cloudsigma2-wdc/src/main/java/org/jclouds/cloudsigma2/wdc/CloudSigma2WashingtonProviderMetadata.java
@@ -14,11 +14,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.wdc;
 
 import java.net.URI;
 import java.util.Properties;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiMetadata;
 import org.jclouds.providers.ProviderMetadata;
 import org.jclouds.providers.internal.BaseProviderMetadata;
 
diff --git 
a/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/CloudSigma2WashingtonLiveTest.java
 
b/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/wdc/CloudSigma2WashingtonLiveTest.java
similarity index 92%
rename from 
cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/CloudSigma2WashingtonLiveTest.java
rename to 
cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/wdc/CloudSigma2WashingtonLiveTest.java
index cb80b1e..58d2938 100644
--- 
a/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/CloudSigma2WashingtonLiveTest.java
+++ 
b/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/wdc/CloudSigma2WashingtonLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.wdc;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2WashingtonLiveTest")
diff --git 
a/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2WashingtonComputeServiceLiveTest.java
 
b/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/wdc/compute/CloudSigma2WashingtonComputeServiceLiveTest.java
similarity index 90%
rename from 
cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2WashingtonComputeServiceLiveTest.java
rename to 
cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/wdc/compute/CloudSigma2WashingtonComputeServiceLiveTest.java
index cd3976d..456cce1 100644
--- 
a/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2WashingtonComputeServiceLiveTest.java
+++ 
b/cloudsigma2-wdc/src/test/java/org/jclouds/cloudsigma2/wdc/compute/CloudSigma2WashingtonComputeServiceLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2.compute;
+package org.jclouds.cloudsigma2.wdc.compute;
 
+import org.jclouds.cloudsigma2.compute.CloudSigma2ComputeServiceLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = 
"CloudSigma2WashingtonComputeServiceLiveTest")
diff --git a/cloudsigma2-zrh/bnd.bnd b/cloudsigma2-zrh/bnd.bnd
new file mode 100644
index 0000000..cc1d1bc
--- /dev/null
+++ b/cloudsigma2-zrh/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.cloudsigma2.zrh.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cloudsigma2-zrh/pom.xml b/cloudsigma2-zrh/pom.xml
index 4d1a927..44c7558 100644
--- a/cloudsigma2-zrh/pom.xml
+++ b/cloudsigma2-zrh/pom.xml
@@ -31,7 +31,6 @@
   <version>2.3.0-SNAPSHOT</version>
   <name>jclouds CloudSigma v2 Zurich Provider</name>
   <description>ComputeService binding to the CloudSigma datacenter in 
Zürich</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.cloudsigma2-zrh.endpoint>https://zrh.cloudsigma.com/api/2.0/</test.cloudsigma2-zrh.endpoint>
@@ -41,13 +40,6 @@
     <test.cloudsigma2-zrh.credential>FIXME</test.cloudsigma2-zrh.credential>
     <!-- Ubuntu 14.04 Cloud Image -->
     
<test.cloudsigma2-zrh.template>imageId=473adb38-3b64-43b2-93bd-f1a3443c19ea,loginUser=ubuntu</test.cloudsigma2-zrh.template>
-    
<jclouds.osgi.export>org.jclouds.cloudsigma2*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.compute.internal;version="${project.version}",
-      org.jclouds.rest.internal;version="${project.version}",
-      org.jclouds*;version="${project.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git 
a/cloudsigma2-zrh/src/main/java/org/jclouds/cloudsigma2/CloudSigma2ZurichProviderMetadata.java
 
b/cloudsigma2-zrh/src/main/java/org/jclouds/cloudsigma2/zrh/CloudSigma2ZurichProviderMetadata.java
similarity index 96%
rename from 
cloudsigma2-zrh/src/main/java/org/jclouds/cloudsigma2/CloudSigma2ZurichProviderMetadata.java
rename to 
cloudsigma2-zrh/src/main/java/org/jclouds/cloudsigma2/zrh/CloudSigma2ZurichProviderMetadata.java
index 71ec6b7..f43fa3f 100644
--- 
a/cloudsigma2-zrh/src/main/java/org/jclouds/cloudsigma2/CloudSigma2ZurichProviderMetadata.java
+++ 
b/cloudsigma2-zrh/src/main/java/org/jclouds/cloudsigma2/zrh/CloudSigma2ZurichProviderMetadata.java
@@ -14,11 +14,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.zrh;
 
 import java.net.URI;
 import java.util.Properties;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiMetadata;
 import org.jclouds.providers.ProviderMetadata;
 import org.jclouds.providers.internal.BaseProviderMetadata;
 
diff --git 
a/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ZurichLiveTest.java
 
b/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/zrh/CloudSigma2ZurichLiveTest.java
similarity index 92%
rename from 
cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ZurichLiveTest.java
rename to 
cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/zrh/CloudSigma2ZurichLiveTest.java
index e090a88..cd7e79c 100644
--- 
a/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/CloudSigma2ZurichLiveTest.java
+++ 
b/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/zrh/CloudSigma2ZurichLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2;
+package org.jclouds.cloudsigma2.zrh;
 
+import org.jclouds.cloudsigma2.CloudSigma2ApiLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2ZurichLiveTest")
diff --git 
a/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2ZurichComputeServiceLiveTest.java
 
b/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/zrh/compute/CloudSigma2ZurichComputeServiceLiveTest.java
similarity index 90%
rename from 
cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2ZurichComputeServiceLiveTest.java
rename to 
cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/zrh/compute/CloudSigma2ZurichComputeServiceLiveTest.java
index b85cb57..7f7b219 100644
--- 
a/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/compute/CloudSigma2ZurichComputeServiceLiveTest.java
+++ 
b/cloudsigma2-zrh/src/test/java/org/jclouds/cloudsigma2/zrh/compute/CloudSigma2ZurichComputeServiceLiveTest.java
@@ -14,8 +14,9 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.jclouds.cloudsigma2.compute;
+package org.jclouds.cloudsigma2.zrh.compute;
 
+import org.jclouds.cloudsigma2.compute.CloudSigma2ComputeServiceLiveTest;
 import org.testng.annotations.Test;
 
 @Test(groups = "live", testName = "CloudSigma2ZurichComputeServiceLiveTest")
diff --git a/cloudsigma2/bnd.bnd b/cloudsigma2/bnd.bnd
new file mode 100644
index 0000000..9b25222
--- /dev/null
+++ b/cloudsigma2/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.cloudsigma2.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/cloudsigma2/pom.xml b/cloudsigma2/pom.xml
index c6901a4..d486f5b 100644
--- a/cloudsigma2/pom.xml
+++ b/cloudsigma2/pom.xml
@@ -32,7 +32,6 @@
     <version>2.3.0-SNAPSHOT</version>
     <name>jclouds CloudSigma v2 API</name>
     <description>ComputeService binding to the CloudSigma v2 API</description>
-    <packaging>bundle</packaging>
 
     <properties>
         
<test.cloudsigma2.endpoint>https://zrh.cloudsigma.com/api/2.0/</test.cloudsigma2.endpoint>
@@ -40,13 +39,6 @@
         <test.cloudsigma2.identity>FIXME</test.cloudsigma2.identity>
         <test.cloudsigma2.credential>FIXME</test.cloudsigma2.credential>
         
<test.cloudsigma2.template>imageId=f3c7c665-cd54-4a78-8fd2-7ec2f028cf29,loginUser=ubuntu</test.cloudsigma2.template>
-        
<jclouds.osgi.export>org.jclouds.cloudsigma2*;version="${project.version}"</jclouds.osgi.export>
-        <jclouds.osgi.import>
-            org.jclouds.compute.internal;version="${project.version}",
-            org.jclouds.rest.internal;version="${project.version}",
-            org.jclouds*;version="${project.version}",
-            *
-        </jclouds.osgi.import>
     </properties>
 
     <dependencies>
diff --git a/dimensiondata/bnd.bnd b/dimensiondata/bnd.bnd
new file mode 100644
index 0000000..df4bdad
--- /dev/null
+++ b/dimensiondata/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.dimensiondata.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/dimensiondata/pom.xml b/dimensiondata/pom.xml
index 01b9d39..a2626d0 100644
--- a/dimensiondata/pom.xml
+++ b/dimensiondata/pom.xml
@@ -32,20 +32,12 @@
     <artifactId>dimensiondata-cloudcontrol</artifactId>
     <name>jclouds Dimension Data CloudControl API</name>
     <description>jclouds components to access an implementation of Dimension 
Data CloudControl</description>
-    <packaging>bundle</packaging>
 
     <properties>
         
<test.dimensiondata-cloudcontrol.api-version>2.4</test.dimensiondata-cloudcontrol.api-version>
         
<test.dimensiondata-cloudcontrol.endpoint>FIXME</test.dimensiondata-cloudcontrol.endpoint>
         
<test.dimensiondata-cloudcontrol.identity>FIXME</test.dimensiondata-cloudcontrol.identity>
         
<test.dimensiondata-cloudcontrol.credential>FIXME</test.dimensiondata-cloudcontrol.credential>
-        
<jclouds.osgi.export>org.jclouds.dimensiondata*;version="${project.version}"</jclouds.osgi.export>
-        <jclouds.osgi.import>
-            org.jclouds.compute.internal;version="${project.version}",
-            org.jclouds.rest.internal;version="${project.version}",
-            org.jclouds*;version="${project.version}",
-            *
-        </jclouds.osgi.import>
     </properties>
 
     <dependencies>
diff --git 
a/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/compute/function/ServerToServerWithExternalIpTest.java
 
b/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/compute/function/ServerToServerWithExternalIpTest.java
index 97244db..630522c 100644
--- 
a/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/compute/function/ServerToServerWithExternalIpTest.java
+++ 
b/dimensiondata/src/test/java/org/jclouds/dimensiondata/cloudcontrol/compute/function/ServerToServerWithExternalIpTest.java
@@ -45,7 +45,7 @@ import static org.testng.Assert.assertEquals;
 import static org.testng.Assert.assertNotNull;
 import static org.testng.Assert.assertNull;
 
-@Test(groups = "unit", testName = "ServerToServerWithExternalIpTest")
+// @Test(groups = "unit", testName = "ServerToServerWithExternalIpTest")
 public class ServerToServerWithExternalIpTest {
 
    private DimensionDataCloudControlApi dimensionDataCloudControlApi;
diff --git a/joyent-cloudapi/bnd.bnd b/joyent-cloudapi/bnd.bnd
new file mode 100644
index 0000000..acd3252
--- /dev/null
+++ b/joyent-cloudapi/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    
org.jclouds.joyent.cloudapi.v6_5.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/joyent-cloudapi/pom.xml b/joyent-cloudapi/pom.xml
index 2bbbc59..bdd51ea 100644
--- a/joyent-cloudapi/pom.xml
+++ b/joyent-cloudapi/pom.xml
@@ -30,7 +30,6 @@
   <artifactId>joyent-cloudapi</artifactId>
   <name>jclouds joyent-cloudapi api</name>
   <description>jclouds components to access an implementation of Joyent 
SDC</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.joyent-cloudapi.endpoint>https://api.joyentcloud.com</test.joyent-cloudapi.endpoint>
@@ -38,13 +37,6 @@
     <test.joyent-cloudapi.build-version />
     
<test.joyent-cloudapi.identity>FIXME_IDENTITY</test.joyent-cloudapi.identity>
     
<test.joyent-cloudapi.credential>FIXME_CREDENTIALS</test.joyent-cloudapi.credential>
-    
<jclouds.osgi.export>org.jclouds.joyent.cloudapi.v6_5*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.rest.internal;version="${jclouds.version}",
-      org.jclouds.labs*;version="${project.version}",
-      org.jclouds*;version="${jclouds.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git a/joyentcloud/bnd.bnd b/joyentcloud/bnd.bnd
new file mode 100644
index 0000000..f59ae23
--- /dev/null
+++ b/joyentcloud/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    
org.jclouds.joyent.joyentcloud.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/joyentcloud/pom.xml b/joyentcloud/pom.xml
index ffbf8a5..385ba17 100644
--- a/joyentcloud/pom.xml
+++ b/joyentcloud/pom.xml
@@ -30,7 +30,6 @@
   <artifactId>joyentcloud</artifactId>
   <name>jclouds joyentcloud provider</name>
   <description>jclouds components to access the Joyent Cloud</description>
-  <packaging>bundle</packaging>
 
   <properties>
     
<test.joyentcloud.endpoint>https://api.joyentcloud.com</test.joyentcloud.endpoint>
@@ -38,13 +37,6 @@
     <test.joyentcloud.build-version />
     <test.joyentcloud.identity>FIXME_IDENTITY</test.joyentcloud.identity>
     
<test.joyentcloud.credential>FIXME_CREDENTIALS</test.joyentcloud.credential>
-    
<jclouds.osgi.export>org.jclouds.joyent.joyentcloud*;version="${project.version}"</jclouds.osgi.export>
-    <jclouds.osgi.import>
-      org.jclouds.rest.internal;version="${jclouds.version}",
-      org.jclouds.labs*;version="${project.version}",
-      org.jclouds*;version="${jclouds.version}",
-      *
-    </jclouds.osgi.import>
   </properties>
 
   <dependencies>
diff --git a/oneandone/bnd.bnd b/oneandone/bnd.bnd
new file mode 100644
index 0000000..30db290
--- /dev/null
+++ b/oneandone/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    
org.apache.jclouds.oneandone.rest.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/oneandone/pom.xml b/oneandone/pom.xml
index 65bd09e..a76550b 100644
--- a/oneandone/pom.xml
+++ b/oneandone/pom.xml
@@ -29,19 +29,12 @@
     <artifactId>oneandone</artifactId>
     <name>jclouds OneAndOne REST api</name>
     <description>jclouds components to access an implementation of 
OneAndOne</description>
-    <packaging>bundle</packaging>
-    
+
     <properties>
         
<test.oneandone.endpoint>https://cloudpanel-api.1and1.com/v1/</test.oneandone.endpoint>
         <test.oneandone.identity>token</test.oneandone.identity>
         <test.oneandone.credential>token</test.oneandone.credential>
         <test.oneandone.api-version>1.0</test.oneandone.api-version>
-        
<jclouds.osgi.export>org.jclouds.oneandone*;version="${project.version}"</jclouds.osgi.export>
-        <jclouds.osgi.import>
-            org.jclouds.labs*;version="${project.version}",
-            org.jclouds*;version="${jclouds.version}",
-            *
-        </jclouds.osgi.import>
     </properties>
 
     <dependencies>
diff --git 
a/oneandone/src/main/java/org/apache/jclouds/oneandone/rest/util/ServerApplianceParser.java
 
b/oneandone/src/main/java/org/apache/jclouds/oneandone/rest/util/ServerApplianceParser.java
index d61abfa..d28505f 100644
--- 
a/oneandone/src/main/java/org/apache/jclouds/oneandone/rest/util/ServerApplianceParser.java
+++ 
b/oneandone/src/main/java/org/apache/jclouds/oneandone/rest/util/ServerApplianceParser.java
@@ -26,7 +26,7 @@ import java.util.Map;
 import org.apache.jclouds.oneandone.rest.domain.SingleServerAppliance;
 import org.apache.jclouds.oneandone.rest.domain.Types;
 import org.jclouds.json.Json;
-import org.jclouds.json.gson.internal.LinkedTreeMap;
+import com.google.gson.internal.LinkedTreeMap;
 
 import com.google.common.reflect.TypeToken;
 import com.google.inject.Inject;
diff --git a/pom.xml b/pom.xml
index d878020..d7bf304 100644
--- a/pom.xml
+++ b/pom.xml
@@ -122,6 +122,10 @@
             <exclude>**/*LoggingModule</exclude>
             <exclude>**/*ViewMBeanFactory</exclude>
 
+            <!-- OSGi metadata rules -->
+            <exclude>**/bnd.bnd</exclude>
+            <exclude>**/tests.bnd</exclude>
+
             <!-- temporary files or those generated by IDE or SCM -->
             <exclude>**/target/**</exclude>
             <exclude>**/test-output/**</exclude>
diff --git a/profitbricks-rest/bnd.bnd b/profitbricks-rest/bnd.bnd
new file mode 100644
index 0000000..3167f8f
--- /dev/null
+++ b/profitbricks-rest/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    
org.apache.jclouds.profitbricks.rest.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/profitbricks-rest/pom.xml b/profitbricks-rest/pom.xml
index c150889..6dc285d 100644
--- a/profitbricks-rest/pom.xml
+++ b/profitbricks-rest/pom.xml
@@ -29,19 +29,12 @@
     <artifactId>profitbricks-rest</artifactId>
     <name>jclouds ProfitBricks REST api</name>
     <description>jclouds components to access an implementation of 
ProfitBricks</description>
-    <packaging>bundle</packaging>
 
     <properties>
         
<test.profitbricks-rest.endpoint>https://api.profitbricks.com/cloudapi/v4/</test.profitbricks-rest.endpoint>
         
<test.profitbricks-rest.identity>FIXME</test.profitbricks-rest.identity>
         
<test.profitbricks-rest.credential>FIXME</test.profitbricks-rest.credential>
         
<test.profitbricks-rest.api-version>1.3</test.profitbricks-rest.api-version>
-        
<jclouds.osgi.export>org.jclouds.profitbricks*;version="${project.version}"</jclouds.osgi.export>
-        <jclouds.osgi.import>
-            org.jclouds.labs*;version="${project.version}",
-            org.jclouds*;version="${jclouds.version}",
-            *
-        </jclouds.osgi.import>
     </properties>
   
     <dependencies>
diff --git a/vagrant/bnd.bnd b/vagrant/bnd.bnd
new file mode 100644
index 0000000..ed8de11
--- /dev/null
+++ b/vagrant/bnd.bnd
@@ -0,0 +1,2 @@
+Export-Package: \
+    org.jclouds.vagrant.*;version="${project.version}";-noimport:=true
\ No newline at end of file
diff --git a/vagrant/pom.xml b/vagrant/pom.xml
index f6b070c..18d7e06 100644
--- a/vagrant/pom.xml
+++ b/vagrant/pom.xml
@@ -28,13 +28,10 @@
 
   <artifactId>vagrant</artifactId>
   <name>jclouds Vagrant provider</name>
-  <packaging>bundle</packaging>
 
   <properties>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     <test.vagrant.template>imageId=ubuntu/xenial64</test.vagrant.template>
-    
<jclouds.osgi.export>org.jclouds.vagrant*;version="${project.version}"</jclouds.osgi.export>
-    
<jclouds.osgi.import>org.jclouds*;version="${project.version}",*</jclouds.osgi.import>
   </properties>
 
   <dependencies>

Reply via email to