You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ts...@apache.org on 2013/01/26 17:21:39 UTC

[42/50] [abbrv] marvin-refactor: split base into multiple modules

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/Router.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Router.py b/tools/marvin/marvin/integration/lib/base/Router.py
new file mode 100644
index 0000000..c7e8041
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/Router.py
@@ -0,0 +1,33 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class Router(CloudStackEntity):
+
+    def destroy(self, apiclient, id, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def stop(self, apiclient, id, **kwargs):
+        pass
+
+    def reboot(self, apiclient, id, **kwargs):
+        pass
+
+    def start(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/S3.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/S3.py b/tools/marvin/marvin/integration/lib/base/S3.py
new file mode 100644
index 0000000..58982a6
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/S3.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class S3(CloudStackEntity):
+
+    def add(self, apiclient, secretkey, accesskey, bucket, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py b/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py
new file mode 100644
index 0000000..75f6c1f
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SSHKeyPair.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SSHKeyPair(CloudStackEntity):
+
+    def create(self, apiclient, SSHKeyPairFactory, name, **kwargs):
+        pass
+
+    def register(self, apiclient, publickey, name, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, name, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py b/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py
new file mode 100644
index 0000000..99ce3e7
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SecondaryStorage.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SecondaryStorage(CloudStackEntity):
+
+    def add(self, apiclient, url, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SecurityGroup.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SecurityGroup.py b/tools/marvin/marvin/integration/lib/base/SecurityGroup.py
new file mode 100644
index 0000000..d180396
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SecurityGroup.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SecurityGroup(CloudStackEntity):
+
+    def create(self, apiclient, SecurityGroupFactory, name, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py b/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py
new file mode 100644
index 0000000..c3d8b92
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SecurityGroupEgress.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SecurityGroupEgress(CloudStackEntity):
+
+    def authorize(self, apiclient, **kwargs):
+        pass
+
+    def revoke(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py b/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py
new file mode 100644
index 0000000..c7a8708
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SecurityGroupIngress.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SecurityGroupIngress(CloudStackEntity):
+
+    def authorize(self, apiclient, **kwargs):
+        pass
+
+    def revoke(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py b/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py
new file mode 100644
index 0000000..996680e
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/ServiceForRouter.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class ServiceForRouter(CloudStackEntity):
+
+    def change(self, apiclient, id, serviceofferingid, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py b/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py
new file mode 100644
index 0000000..630bd45
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/ServiceForSystemVm.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class ServiceForSystemVm(CloudStackEntity):
+
+    def change(self, apiclient, id, serviceofferingid, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py b/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py
new file mode 100644
index 0000000..10b69de
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/ServiceForVirtualMachine.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class ServiceForVirtualMachine(CloudStackEntity):
+
+    def change(self, apiclient, id, serviceofferingid, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/ServiceOffering.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ServiceOffering.py b/tools/marvin/marvin/integration/lib/base/ServiceOffering.py
new file mode 100644
index 0000000..2d7369b
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/ServiceOffering.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class ServiceOffering(CloudStackEntity):
+
+    def create(self, apiclient, ServiceOfferingFactory, displaytext, memory, cpunumber, name, cpuspeed, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/Snapshot.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Snapshot.py b/tools/marvin/marvin/integration/lib/base/Snapshot.py
new file mode 100644
index 0000000..dab546f
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/Snapshot.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class Snapshot(CloudStackEntity):
+
+    def create(self, apiclient, SnapshotFactory, volumeid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SnapshotPolicies.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SnapshotPolicies.py b/tools/marvin/marvin/integration/lib/base/SnapshotPolicies.py
new file mode 100644
index 0000000..9305a94
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SnapshotPolicies.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SnapshotPolicies(CloudStackEntity):
+
+    def list(self, apiclient, volumeid, **kwargs):
+        pass
+
+    def delete(self, apiclient, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py b/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py
new file mode 100644
index 0000000..575e3a3
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SnapshotPolicy.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SnapshotPolicy(CloudStackEntity):
+
+    def create(self, apiclient, SnapshotPolicyFactory, timezone, maxsnaps, schedule, volumeid, intervaltype, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/StaticNat.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StaticNat.py b/tools/marvin/marvin/integration/lib/base/StaticNat.py
new file mode 100644
index 0000000..526fb1f
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/StaticNat.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class StaticNat(CloudStackEntity):
+
+    def enable(self, apiclient, ipaddressid, virtualmachineid, **kwargs):
+        pass
+
+    def disable(self, apiclient, ipaddressid, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/StaticRoute.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StaticRoute.py b/tools/marvin/marvin/integration/lib/base/StaticRoute.py
new file mode 100644
index 0000000..cbebd64
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/StaticRoute.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class StaticRoute(CloudStackEntity):
+
+    def create(self, apiclient, StaticRouteFactory, gatewayid, cidr, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py b/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py
new file mode 100644
index 0000000..96f690e
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/StorageMaintenance.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class StorageMaintenance(CloudStackEntity):
+
+    def cancel(self, apiclient, id, **kwargs):
+        pass
+
+    def enable(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py b/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py
new file mode 100644
index 0000000..091eacf
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/StorageNetworkIpRange.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class StorageNetworkIpRange(CloudStackEntity):
+
+    def create(self, apiclient, StorageNetworkIpRangeFactory, startip, netmask, gateway, podid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/StoragePool.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/StoragePool.py b/tools/marvin/marvin/integration/lib/base/StoragePool.py
new file mode 100644
index 0000000..3c54c8b
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/StoragePool.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class StoragePool(CloudStackEntity):
+
+    def create(self, apiclient, StoragePoolFactory, url, zoneid, clusterid, name, podid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py b/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py
new file mode 100644
index 0000000..38da628
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SupportedNetworkServices.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SupportedNetworkServices(CloudStackEntity):
+
+    def list(self, apiclient, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/Swift.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Swift.py b/tools/marvin/marvin/integration/lib/base/Swift.py
new file mode 100644
index 0000000..346834d
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/Swift.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class Swift(CloudStackEntity):
+
+    def add(self, apiclient, url, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/SystemVm.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/SystemVm.py b/tools/marvin/marvin/integration/lib/base/SystemVm.py
new file mode 100644
index 0000000..ba399dd
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/SystemVm.py
@@ -0,0 +1,36 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class SystemVm(CloudStackEntity):
+
+    def migrate(self, apiclient, hostid, virtualmachineid, **kwargs):
+        pass
+
+    def stop(self, apiclient, id, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def reboot(self, apiclient, id, **kwargs):
+        pass
+
+    def start(self, apiclient, id, **kwargs):
+        pass
+
+    def destroy(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/Tags.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Tags.py b/tools/marvin/marvin/integration/lib/base/Tags.py
new file mode 100644
index 0000000..3b717a2
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/Tags.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class Tags(CloudStackEntity):
+
+    def create(self, apiclient, TagsFactory, resourcetype, resourceids, tags, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, resourcetype, resourceids, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/Template.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Template.py b/tools/marvin/marvin/integration/lib/base/Template.py
new file mode 100644
index 0000000..cd784c7
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/Template.py
@@ -0,0 +1,42 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class Template(CloudStackEntity):
+
+    def prepare(self, apiclient, zoneid, templateid, **kwargs):
+        pass
+
+    def create(self, apiclient, TemplateFactory, displaytext, name, ostypeid, **kwargs):
+        pass
+
+    def register(self, apiclient, name, format, url, hypervisor, zoneid, displaytext, ostypeid, **kwargs):
+        pass
+
+    def list(self, apiclient, templatefilter, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def copy(self, apiclient, sourcezoneid, id, destzoneid, **kwargs):
+        pass
+
+    def extract(self, apiclient, id, mode, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/TemplatePermissions.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/TemplatePermissions.py b/tools/marvin/marvin/integration/lib/base/TemplatePermissions.py
new file mode 100644
index 0000000..ab9f395
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/TemplatePermissions.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class TemplatePermissions(CloudStackEntity):
+
+    def list(self, apiclient, id, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py b/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py
new file mode 100644
index 0000000..958e29f
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/ToLoadBalancerRule.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class ToLoadBalancerRule(CloudStackEntity):
+
+    def assign(self, apiclient, id, virtualmachineids, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/TrafficMonitor.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/TrafficMonitor.py b/tools/marvin/marvin/integration/lib/base/TrafficMonitor.py
new file mode 100644
index 0000000..61b2467
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/TrafficMonitor.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class TrafficMonitor(CloudStackEntity):
+
+    def add(self, apiclient, url, zoneid, **kwargs):
+        pass
+
+    def list(self, apiclient, zoneid, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/TrafficType.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/TrafficType.py b/tools/marvin/marvin/integration/lib/base/TrafficType.py
new file mode 100644
index 0000000..13a9140
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/TrafficType.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class TrafficType(CloudStackEntity):
+
+    def add(self, apiclient, traffictype, physicalnetworkid, **kwargs):
+        pass
+
+    def list(self, apiclient, physicalnetworkid, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/TrafficTypeImplementors.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/TrafficTypeImplementors.py b/tools/marvin/marvin/integration/lib/base/TrafficTypeImplementors.py
new file mode 100644
index 0000000..37bd2a8
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/TrafficTypeImplementors.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class TrafficTypeImplementors(CloudStackEntity):
+
+    def list(self, apiclient, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/UsageRecords.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/UsageRecords.py b/tools/marvin/marvin/integration/lib/base/UsageRecords.py
new file mode 100644
index 0000000..7a34615
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/UsageRecords.py
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class UsageRecords(CloudStackEntity):
+
+    def list(self, apiclient, startdate, enddate, **kwargs):
+        pass
+
+    def generate(self, apiclient, startdate, enddate, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/UsageTypes.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/UsageTypes.py b/tools/marvin/marvin/integration/lib/base/UsageTypes.py
new file mode 100644
index 0000000..2e65f5e
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/UsageTypes.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class UsageTypes(CloudStackEntity):
+
+    def list(self, apiclient):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/User.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/User.py b/tools/marvin/marvin/integration/lib/base/User.py
new file mode 100644
index 0000000..6437fb7
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/User.py
@@ -0,0 +1,42 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class User(CloudStackEntity):
+
+    def enable(self, apiclient, id, **kwargs):
+        pass
+
+    def get(self, apiclient, userapikey, **kwargs):
+        pass
+
+    def lock(self, apiclient, id, **kwargs):
+        pass
+
+    def create(self, apiclient, UserFactory, username, account, firstname, lastname, password, email, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def disable(self, apiclient, id, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/UserKeys.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/UserKeys.py b/tools/marvin/marvin/integration/lib/base/UserKeys.py
new file mode 100644
index 0000000..6c22d82
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/UserKeys.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class UserKeys(CloudStackEntity):
+
+    def register(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VMPassword.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VMPassword.py b/tools/marvin/marvin/integration/lib/base/VMPassword.py
new file mode 100644
index 0000000..1baef0e
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VMPassword.py
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VMPassword(CloudStackEntity):
+
+    def get(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VPC.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VPC.py b/tools/marvin/marvin/integration/lib/base/VPC.py
new file mode 100644
index 0000000..a6c865d
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VPC.py
@@ -0,0 +1,33 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VPC(CloudStackEntity):
+
+    def create(self, apiclient, VPCFactory, cidr, zoneid, displaytext, name, vpcofferingid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, **kwargs):
+        pass
+
+    def restart(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VPCOffering.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VPCOffering.py b/tools/marvin/marvin/integration/lib/base/VPCOffering.py
new file mode 100644
index 0000000..ce76077
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VPCOffering.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VPCOffering(CloudStackEntity):
+
+    def create(self, apiclient, VPCOfferingFactory, displaytext, name, supportedservices, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VirtualMachine.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VirtualMachine.py b/tools/marvin/marvin/integration/lib/base/VirtualMachine.py
new file mode 100644
index 0000000..46abe08
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VirtualMachine.py
@@ -0,0 +1,48 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VirtualMachine(CloudStackEntity):
+
+    def restore(self, apiclient, virtualmachineid, **kwargs):
+        pass
+
+    def deploy(self, apiclient, zoneid, serviceofferingid, templateid, **kwargs):
+        pass
+
+    def migrate(self, apiclient, virtualmachineid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def stop(self, apiclient, id, **kwargs):
+        pass
+
+    def reboot(self, apiclient, id, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def start(self, apiclient, id, **kwargs):
+        pass
+
+    def destroy(self, apiclient, id, **kwargs):
+        pass
+
+    def assign(self, apiclient, account, domainid, virtualmachineid, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VirtualRouterElement.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VirtualRouterElement.py b/tools/marvin/marvin/integration/lib/base/VirtualRouterElement.py
new file mode 100644
index 0000000..43ea1be
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VirtualRouterElement.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VirtualRouterElement(CloudStackEntity):
+
+    def create(self, apiclient, VirtualRouterElementFactory, nspid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def configure(self, apiclient, enabled, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VlanIpRange.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VlanIpRange.py b/tools/marvin/marvin/integration/lib/base/VlanIpRange.py
new file mode 100644
index 0000000..66591fe
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VlanIpRange.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VlanIpRange(CloudStackEntity):
+
+    def create(self, apiclient, VlanIpRangeFactory, startip, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/Volume.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Volume.py b/tools/marvin/marvin/integration/lib/base/Volume.py
new file mode 100644
index 0000000..296b2bd
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/Volume.py
@@ -0,0 +1,42 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class Volume(CloudStackEntity):
+
+    def migrate(self, apiclient, storageid, volumeid, **kwargs):
+        pass
+
+    def create(self, apiclient, VolumeFactory, name, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def upload(self, apiclient, url, zoneid, name, format, **kwargs):
+        pass
+
+    def attach(self, apiclient, id, virtualmachineid, **kwargs):
+        pass
+
+    def detach(self, apiclient, **kwargs):
+        pass
+
+    def extract(self, apiclient, zoneid, id, mode, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VpnConnection.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VpnConnection.py b/tools/marvin/marvin/integration/lib/base/VpnConnection.py
new file mode 100644
index 0000000..ebc78cf
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VpnConnection.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VpnConnection(CloudStackEntity):
+
+    def reset(self, apiclient, id, **kwargs):
+        pass
+
+    def create(self, apiclient, VpnConnectionFactory, s2scustomergatewayid, s2svpngatewayid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VpnCustomerGateway.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VpnCustomerGateway.py b/tools/marvin/marvin/integration/lib/base/VpnCustomerGateway.py
new file mode 100644
index 0000000..36e51c3
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VpnCustomerGateway.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VpnCustomerGateway(CloudStackEntity):
+
+    def create(self, apiclient, VpnCustomerGatewayFactory, ipsecpsk, cidrlist, esppolicy, ikepolicy, gateway, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, ikepolicy, cidrlist, gateway, ipsecpsk, esppolicy, id, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VpnGateway.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VpnGateway.py b/tools/marvin/marvin/integration/lib/base/VpnGateway.py
new file mode 100644
index 0000000..bc16935
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VpnGateway.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VpnGateway(CloudStackEntity):
+
+    def create(self, apiclient, VpnGatewayFactory, vpcid, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/VpnUser.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/VpnUser.py b/tools/marvin/marvin/integration/lib/base/VpnUser.py
new file mode 100644
index 0000000..d4bf6cf
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/VpnUser.py
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class VpnUser(CloudStackEntity):
+
+    def add(self, apiclient, username, password, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def remove(self, apiclient, username, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/Zone.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/Zone.py b/tools/marvin/marvin/integration/lib/base/Zone.py
new file mode 100644
index 0000000..11f7428
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/Zone.py
@@ -0,0 +1,30 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+class Zone(CloudStackEntity):
+
+    def create(self, apiclient, ZoneFactory, networktype, dns1, internaldns1, name, **kwargs):
+        pass
+
+    def list(self, apiclient, **kwargs):
+        pass
+
+    def update(self, apiclient, id, **kwargs):
+        pass
+
+    def delete(self, apiclient, id, **kwargs):
+        pass
+

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/base/__init__.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/base/__init__.py b/tools/marvin/marvin/integration/lib/base/__init__.py
new file mode 100644
index 0000000..287f9b1
--- /dev/null
+++ b/tools/marvin/marvin/integration/lib/base/__init__.py
@@ -0,0 +1,16 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/AccountFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/AccountFactory.py b/tools/marvin/marvin/integration/lib/factory/AccountFactory.py
index aeed02a..124d3e0 100644
--- a/tools/marvin/marvin/integration/lib/factory/AccountFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/AccountFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import Account
 class AccountFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/AutoScalePolicyFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/AutoScalePolicyFactory.py b/tools/marvin/marvin/integration/lib/factory/AutoScalePolicyFactory.py
index 22f7eb1..a652968 100644
--- a/tools/marvin/marvin/integration/lib/factory/AutoScalePolicyFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/AutoScalePolicyFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import AutoScalePolicy
 class AutoScalePolicyFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/AutoScaleVmGroupFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/AutoScaleVmGroupFactory.py b/tools/marvin/marvin/integration/lib/factory/AutoScaleVmGroupFactory.py
index ac156e4..3ebe3de 100644
--- a/tools/marvin/marvin/integration/lib/factory/AutoScaleVmGroupFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/AutoScaleVmGroupFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import AutoScaleVmGroup
 class AutoScaleVmGroupFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/AutoScaleVmProfileFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/AutoScaleVmProfileFactory.py b/tools/marvin/marvin/integration/lib/factory/AutoScaleVmProfileFactory.py
index 56a5b78..5215419 100644
--- a/tools/marvin/marvin/integration/lib/factory/AutoScaleVmProfileFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/AutoScaleVmProfileFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import AutoScaleVmProfile
 class AutoScaleVmProfileFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/ConditionFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/ConditionFactory.py b/tools/marvin/marvin/integration/lib/factory/ConditionFactory.py
index 621dc53..c796e7d 100644
--- a/tools/marvin/marvin/integration/lib/factory/ConditionFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/ConditionFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import Condition
 class ConditionFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/CounterFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/CounterFactory.py b/tools/marvin/marvin/integration/lib/factory/CounterFactory.py
index e195227..5fc34a4 100644
--- a/tools/marvin/marvin/integration/lib/factory/CounterFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/CounterFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import Counter
 class CounterFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/DiskOfferingFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/DiskOfferingFactory.py b/tools/marvin/marvin/integration/lib/factory/DiskOfferingFactory.py
index 11fb5c2..c1b36ac 100644
--- a/tools/marvin/marvin/integration/lib/factory/DiskOfferingFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/DiskOfferingFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import DiskOffering
 class DiskOfferingFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/DomainFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/DomainFactory.py b/tools/marvin/marvin/integration/lib/factory/DomainFactory.py
index 0c51f02..cf46d1e 100644
--- a/tools/marvin/marvin/integration/lib/factory/DomainFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/DomainFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import Domain
 class DomainFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/FirewallRuleFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/FirewallRuleFactory.py b/tools/marvin/marvin/integration/lib/factory/FirewallRuleFactory.py
index bdc6a48..81c3366 100644
--- a/tools/marvin/marvin/integration/lib/factory/FirewallRuleFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/FirewallRuleFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import FirewallRule
 class FirewallRuleFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/InstanceGroupFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/InstanceGroupFactory.py b/tools/marvin/marvin/integration/lib/factory/InstanceGroupFactory.py
index b4cca67..b3b81f8 100644
--- a/tools/marvin/marvin/integration/lib/factory/InstanceGroupFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/InstanceGroupFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import InstanceGroup
 class InstanceGroupFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/IpAddressFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/IpAddressFactory.py b/tools/marvin/marvin/integration/lib/factory/IpAddressFactory.py
index 28b82ac..57399af 100644
--- a/tools/marvin/marvin/integration/lib/factory/IpAddressFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/IpAddressFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import IpAddress
 class IpAddressFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/IpForwardingRuleFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/IpForwardingRuleFactory.py b/tools/marvin/marvin/integration/lib/factory/IpForwardingRuleFactory.py
index 2e297c0..35847cc 100644
--- a/tools/marvin/marvin/integration/lib/factory/IpForwardingRuleFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/IpForwardingRuleFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import IpForwardingRule
 class IpForwardingRuleFactory(factory.Factory):

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6595deed/tools/marvin/marvin/integration/lib/factory/IsoFactory.py
----------------------------------------------------------------------
diff --git a/tools/marvin/marvin/integration/lib/factory/IsoFactory.py b/tools/marvin/marvin/integration/lib/factory/IsoFactory.py
index ac4cd2e..534be28 100644
--- a/tools/marvin/marvin/integration/lib/factory/IsoFactory.py
+++ b/tools/marvin/marvin/integration/lib/factory/IsoFactory.py
@@ -1,3 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
 import factory
 from marvin.integration.lib.newbase import Iso
 class IsoFactory(factory.Factory):