marvin_refactor: some project cleanup.
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/a81600b9 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/a81600b9 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/a81600b9 Branch: refs/heads/marvin-refactor Commit: a81600b9e9ff2d9183243135a35040d235ec4fb3 Parents: 15d4d3f Author: Prasanna Santhanam <[email protected]> Authored: Tue Sep 3 22:17:51 2013 +0530 Committer: Prasanna Santhanam <[email protected]> Committed: Wed Oct 2 20:27:14 2013 +0530 ---------------------------------------------------------------------- tools/marvin/CHANGES.txt | 18 ---------------- tools/marvin/DISCLAIMER.txt | 7 ------- tools/marvin/docs/errata.md | 22 ++++++++++++++++++++ tools/marvin/marvin/docs/__init__.py | 16 -------------- tools/marvin/marvin/docs/errata.md | 22 -------------------- tools/marvin/marvin/factory/data/account.py | 2 +- tools/marvin/marvin/factory/data/cluster.py | 2 +- .../marvin/marvin/factory/data/diskoffering.py | 2 +- .../marvin/marvin/factory/data/firewallrule.py | 2 +- tools/marvin/marvin/factory/data/host.py | 2 +- .../marvin/factory/data/networkoffering.py | 2 +- .../marvin/factory/data/serviceoffering.py | 2 +- tools/marvin/marvin/factory/data/template.py | 2 +- tools/marvin/marvin/factory/data/user.py | 2 +- tools/marvin/marvin/factory/data/vm.py | 2 +- tools/marvin/marvin/factory/data/zone.py | 2 +- tools/marvin/marvin/test/test_factories.py | 2 +- tools/marvin/setup.py | 5 +++-- 18 files changed, 37 insertions(+), 77 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/CHANGES.txt ---------------------------------------------------------------------- diff --git a/tools/marvin/CHANGES.txt b/tools/marvin/CHANGES.txt deleted file mode 100644 index 262c884..0000000 --- a/tools/marvin/CHANGES.txt +++ /dev/null @@ -1,18 +0,0 @@ -# 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. - -v0.1.0 Tuesday, April 10 2012 -- Packaging Marvin http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/DISCLAIMER.txt ---------------------------------------------------------------------- diff --git a/tools/marvin/DISCLAIMER.txt b/tools/marvin/DISCLAIMER.txt deleted file mode 100644 index fa1e926..0000000 --- a/tools/marvin/DISCLAIMER.txt +++ /dev/null @@ -1,7 +0,0 @@ -Apache CloudStack is an effort undergoing incubation at The Apache Software Foundation (ASF), -sponsored by the Apache Incubator. Incubation is required of all newly accepted -projects until a further review indicates that the infrastructure, communications, and -decision making process have stabilized in a manner consistent with other successful ASF -projects. While incubation status is not necessarily a reflection of the completeness or -stability of the code, it does indicate that the project has yet to be fully endorsed by -the ASF. http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/docs/errata.md ---------------------------------------------------------------------- diff --git a/tools/marvin/docs/errata.md b/tools/marvin/docs/errata.md new file mode 100644 index 0000000..f626069 --- /dev/null +++ b/tools/marvin/docs/errata.md @@ -0,0 +1,22 @@ +## Idea Stack + +### Bugs + +- **marvin.sync and xml compilation produce different versions of cloudstackAPI** +- marvin build now requires inflect which will cause -Pdeveloper profile to break for the first time +- Entities should include @docstring for optional arguments in their actions() methods. **kwargs is confusing +- Dissociate the grammar list to make it extensible via a properties file +- Handle APIs that need parameters but dont have a required args list because multiple sets of args form a required list + - eg: disableAccount (either provide id (account) or accoutname and domainid) +- XML precache required for factory and base generation [CLOUDSTACK-4589](https://issues.apache.org/jira//browse/CLOUDSTACK-4589) +- Remove marvin dependency with apidoc build. Provide precache json [CLOUDSTACK-4589](https://issues.apache.org/jira//browse/CLOUDSTACK-4589) +- Better sync functionality +- Bump up version to 0.2.0 +- Improved cleanup support + +### Features +- Export deployment to JSON [CLOUDSTACK-4590](https://issues.apache.org/jira//browse/CLOUDSTACK-4590) +- nose2 and unittest2 support [CLOUDSTACK-4591](https://issues.apache.org/jira//browse/CLOUDSTACK-4591) +- Use distutils +- Python pip repository for cloudstack-marvin +- DSL for marvin using Behave [CLOUDSTACK-1952](https://issues.apache.org/jira/browse/CLOUDSTACK-1952) \ No newline at end of file http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/docs/__init__.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/docs/__init__.py b/tools/marvin/marvin/docs/__init__.py deleted file mode 100644 index d216be4..0000000 --- a/tools/marvin/marvin/docs/__init__.py +++ /dev/null @@ -1,16 +0,0 @@ -# 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/cloudstack/blob/a81600b9/tools/marvin/marvin/docs/errata.md ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/docs/errata.md b/tools/marvin/marvin/docs/errata.md deleted file mode 100644 index f626069..0000000 --- a/tools/marvin/marvin/docs/errata.md +++ /dev/null @@ -1,22 +0,0 @@ -## Idea Stack - -### Bugs - -- **marvin.sync and xml compilation produce different versions of cloudstackAPI** -- marvin build now requires inflect which will cause -Pdeveloper profile to break for the first time -- Entities should include @docstring for optional arguments in their actions() methods. **kwargs is confusing -- Dissociate the grammar list to make it extensible via a properties file -- Handle APIs that need parameters but dont have a required args list because multiple sets of args form a required list - - eg: disableAccount (either provide id (account) or accoutname and domainid) -- XML precache required for factory and base generation [CLOUDSTACK-4589](https://issues.apache.org/jira//browse/CLOUDSTACK-4589) -- Remove marvin dependency with apidoc build. Provide precache json [CLOUDSTACK-4589](https://issues.apache.org/jira//browse/CLOUDSTACK-4589) -- Better sync functionality -- Bump up version to 0.2.0 -- Improved cleanup support - -### Features -- Export deployment to JSON [CLOUDSTACK-4590](https://issues.apache.org/jira//browse/CLOUDSTACK-4590) -- nose2 and unittest2 support [CLOUDSTACK-4591](https://issues.apache.org/jira//browse/CLOUDSTACK-4591) -- Use distutils -- Python pip repository for cloudstack-marvin -- DSL for marvin using Behave [CLOUDSTACK-1952](https://issues.apache.org/jira/browse/CLOUDSTACK-1952) \ No newline at end of file http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/account.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/account.py b/tools/marvin/marvin/factory/data/account.py index 1041cfe..b0fcd7b 100644 --- a/tools/marvin/marvin/factory/data/account.py +++ b/tools/marvin/marvin/factory/data/account.py @@ -16,7 +16,7 @@ # under the License. import factory -from marvin.factory.AccountFactory import AccountFactory +from marvin.factory.account import AccountFactory from marvin.utils import random_gen class UserAccountFactory(AccountFactory): http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/cluster.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/cluster.py b/tools/marvin/marvin/factory/data/cluster.py index f4641cf..321252b 100644 --- a/tools/marvin/marvin/factory/data/cluster.py +++ b/tools/marvin/marvin/factory/data/cluster.py @@ -17,7 +17,7 @@ import factory from marvin.utils import random_gen -from marvin.factory.ClusterFactory import ClusterFactory +from marvin.factory.cluster import ClusterFactory class XenClusterFactory(ClusterFactory): clustername = factory.Sequence(lambda n: "xencluster" + random_gen()) http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/diskoffering.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/diskoffering.py b/tools/marvin/marvin/factory/data/diskoffering.py index 88ae7cb..ee58c27 100644 --- a/tools/marvin/marvin/factory/data/diskoffering.py +++ b/tools/marvin/marvin/factory/data/diskoffering.py @@ -16,7 +16,7 @@ # under the License. import factory -from marvin.factory.DiskOfferingFactory import DiskOfferingFactory +from marvin.factory.diskoffering import DiskOfferingFactory from marvin.utils import random_gen class SharedDiskOfferingFactory(DiskOfferingFactory): http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/firewallrule.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/firewallrule.py b/tools/marvin/marvin/factory/data/firewallrule.py index 1707347..da6284a 100644 --- a/tools/marvin/marvin/factory/data/firewallrule.py +++ b/tools/marvin/marvin/factory/data/firewallrule.py @@ -15,7 +15,7 @@ # specific language governing permissions and limitations # under the License. -from marvin.factory.FirewallRuleFactory import FirewallRuleFactory +from marvin.factory.firewallrule import FirewallRuleFactory class SshFirewallRuleFactory(FirewallRuleFactory): protocol = 'tcp' http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/host.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/host.py b/tools/marvin/marvin/factory/data/host.py index c8b4ab7..726ceb7 100644 --- a/tools/marvin/marvin/factory/data/host.py +++ b/tools/marvin/marvin/factory/data/host.py @@ -15,7 +15,7 @@ # specific language governing permissions and limitations # under the License. -from marvin.factory.HostFactory import HostFactory +from marvin.factory.host import HostFactory class XenserverHostFactory(HostFactory): http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/networkoffering.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/networkoffering.py b/tools/marvin/marvin/factory/data/networkoffering.py index 8d80631..4e54c4b 100644 --- a/tools/marvin/marvin/factory/data/networkoffering.py +++ b/tools/marvin/marvin/factory/data/networkoffering.py @@ -16,7 +16,7 @@ # under the License. import factory -from marvin.factory.NetworkOfferingFactory import NetworkOfferingFactory +from marvin.factory.networkoffering import NetworkOfferingFactory from marvin.utils import random_gen http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/serviceoffering.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/serviceoffering.py b/tools/marvin/marvin/factory/data/serviceoffering.py index a56d4e5..b3a7639 100644 --- a/tools/marvin/marvin/factory/data/serviceoffering.py +++ b/tools/marvin/marvin/factory/data/serviceoffering.py @@ -16,7 +16,7 @@ # under the License. import factory -from marvin.factory.ServiceOfferingFactory import ServiceOfferingFactory +from marvin.factory.serviceoffering import ServiceOfferingFactory from marvin.utils import random_gen class SmallServiceOfferingFactory(ServiceOfferingFactory): http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/template.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/template.py b/tools/marvin/marvin/factory/data/template.py index 033835b..4c576fb 100644 --- a/tools/marvin/marvin/factory/data/template.py +++ b/tools/marvin/marvin/factory/data/template.py @@ -15,7 +15,7 @@ # specific language governing permissions and limitations # under the License. -from marvin.factory.TemplateFactory import TemplateFactory +from marvin.factory.template import TemplateFactory class DefaultBuiltInTemplateFactory(TemplateFactory): ostype = 'CentOS 5.3 (64-bit)' http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/user.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/user.py b/tools/marvin/marvin/factory/data/user.py index ee84644..d3bde0d 100644 --- a/tools/marvin/marvin/factory/data/user.py +++ b/tools/marvin/marvin/factory/data/user.py @@ -16,7 +16,7 @@ # under the License. import factory -from marvin.factory.UserFactory import UserFactory +from marvin.factory.user import UserFactory from marvin.factory.data.account import UserAccountFactory from marvin.utils import random_gen http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/vm.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/vm.py b/tools/marvin/marvin/factory/data/vm.py index 66f15a3..a938603 100644 --- a/tools/marvin/marvin/factory/data/vm.py +++ b/tools/marvin/marvin/factory/data/vm.py @@ -16,7 +16,7 @@ # under the License. import factory -from marvin.factory.VirtualMachineFactory import VirtualMachineFactory +from marvin.factory.virtualmachine import VirtualMachineFactory from marvin.utils import random_gen http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/factory/data/zone.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/factory/data/zone.py b/tools/marvin/marvin/factory/data/zone.py index f4a278a..2936c0b 100644 --- a/tools/marvin/marvin/factory/data/zone.py +++ b/tools/marvin/marvin/factory/data/zone.py @@ -16,7 +16,7 @@ # under the License. import factory -from marvin.factory.ZoneFactory import ZoneFactory +from marvin.factory.zone import ZoneFactory from marvin.utils import random_gen class AdvancedZoneFactory(ZoneFactory): http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/marvin/test/test_factories.py ---------------------------------------------------------------------- diff --git a/tools/marvin/marvin/test/test_factories.py b/tools/marvin/marvin/test/test_factories.py index 5ce8c13..e415231 100644 --- a/tools/marvin/marvin/test/test_factories.py +++ b/tools/marvin/marvin/test/test_factories.py @@ -26,7 +26,7 @@ from marvin.factory.data.template import * from marvin.factory.data.user import * from marvin.factory.data.networkoffering import * -from marvin.factory.VirtualMachineFactory import * +from marvin.factory.virtualmachine import * from marvin.entity.serviceoffering import ServiceOffering from marvin.entity.zone import Zone http://git-wip-us.apache.org/repos/asf/cloudstack/blob/a81600b9/tools/marvin/setup.py ---------------------------------------------------------------------- diff --git a/tools/marvin/setup.py b/tools/marvin/setup.py index b499671..cbaa157 100644 --- a/tools/marvin/setup.py +++ b/tools/marvin/setup.py @@ -43,14 +43,15 @@ setup(name="Marvin", long_description="Marvin is the Apache CloudStack python client written around the unittest framework", platforms=("Any",), packages=["marvin", "marvin.cloudstackAPI", "marvin.entity", "marvin.factory", "marvin.factory.data", - "marvin.docs", "marvin.generate", "marvin.legacy", "marvin.sandbox", - "marvin.sandbox.advanced", "marvin.sandbox.advancedsg", "marvin.sandbox.basic"], + "marvin.generate", "marvin.legacy", "marvin.sandbox", "marvin.sandbox.advanced", + "marvin.sandbox.advancedsg", "marvin.sandbox.basic"], license="LICENSE.txt", install_requires=[ "mysql-connector-python", "requests", "paramiko", "nose", + "simplejson", "factory_boy", "should-dsl", "inflect",
