marvin_refactor: factory info required only for create-able entities

entities come in to life on 'create', 'deploy', 'associate', 'register'

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
This commit is contained in:
Prasanna Santhanam 2013-01-23 19:38:42 +05:30
parent d6cf83ebb4
commit c03c700a64
69 changed files with 12 additions and 744 deletions

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import AccountFromProject
class AccountFromProjectFactory(factory.Factory):
FACTORY_FOR = AccountFromProject
account = None
projectid = None

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import AccountToProject
class AccountToProjectFactory(factory.Factory):
FACTORY_FOR = AccountToProject
projectid = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import Alerts
class AlertsFactory(factory.Factory):
FACTORY_FOR = Alerts

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import Apis
class ApisFactory(factory.Factory):
FACTORY_FOR = Apis

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import AsyncJobResult
class AsyncJobResultFactory(factory.Factory):
FACTORY_FOR = AsyncJobResult
jobid = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import AsyncJobs
class AsyncJobsFactory(factory.Factory):
FACTORY_FOR = AsyncJobs

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import AutoScalePolicies
class AutoScalePoliciesFactory(factory.Factory):
FACTORY_FOR = AutoScalePolicies

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import Capabilities
class CapabilitiesFactory(factory.Factory):
FACTORY_FOR = Capabilities

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import Capacity
class CapacityFactory(factory.Factory):
FACTORY_FOR = Capacity

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import CloudIdentifier
class CloudIdentifierFactory(factory.Factory):
FACTORY_FOR = CloudIdentifier
userid = None

View File

@ -1,25 +0,0 @@
import factory
from marvin.integration.lib.newbase import Cluster
class ClusterFactory(factory.Factory):
FACTORY_FOR = Cluster
clustername = None
clustertype = None
hypervisor = None
podid = None
zoneid = None
FACTORY_FOR = Cluster
FACTORY_FOR = Cluster
id = None
FACTORY_FOR = Cluster
id = None

View File

@ -1,9 +0,0 @@
import factory
from marvin.integration.lib.newbase import Config
class ConfigFactory(factory.Factory):
FACTORY_FOR = Config
hostname = None
queryfilter = None
searchbase = None

View File

@ -1,11 +0,0 @@
import factory
from marvin.integration.lib.newbase import Configuration
class ConfigurationFactory(factory.Factory):
FACTORY_FOR = Configuration
FACTORY_FOR = Configuration
name = None

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import CustomCertificate
class CustomCertificateFactory(factory.Factory):
FACTORY_FOR = CustomCertificate
certificate = None
domainsuffix = None

View File

@ -1,9 +0,0 @@
import factory
from marvin.integration.lib.newbase import DefaultZoneForAccount
class DefaultZoneForAccountFactory(factory.Factory):
FACTORY_FOR = DefaultZoneForAccount
account = None
domainid = None
zoneid = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import DomainChildren
class DomainChildrenFactory(factory.Factory):
FACTORY_FOR = DomainChildren

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import EventTypes
class EventTypesFactory(factory.Factory):
FACTORY_FOR = EventTypes

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import Events
class EventsFactory(factory.Factory):
FACTORY_FOR = Events

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import FromLoadBalancerRule
class FromLoadBalancerRuleFactory(factory.Factory):
FACTORY_FOR = FromLoadBalancerRule
id = None
virtualmachineids = None

View File

@ -1,31 +0,0 @@
import factory
from marvin.integration.lib.newbase import Host
class HostFactory(factory.Factory):
FACTORY_FOR = Host
hypervisor = None
password = None
podid = None
url = None
username = None
zoneid = None
FACTORY_FOR = Host
FACTORY_FOR = Host
id = None
FACTORY_FOR = Host
id = None
FACTORY_FOR = Host
id = None

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import HostForMaintenance
class HostForMaintenanceFactory(factory.Factory):
FACTORY_FOR = HostForMaintenance
id = None

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import HostMaintenance
class HostMaintenanceFactory(factory.Factory):
FACTORY_FOR = HostMaintenance
id = None

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import HostPassword
class HostPasswordFactory(factory.Factory):
FACTORY_FOR = HostPassword
password = None
username = None

View File

@ -1,9 +0,0 @@
import factory
from marvin.integration.lib.newbase import HypervisorCapabilities
class HypervisorCapabilitiesFactory(factory.Factory):
FACTORY_FOR = HypervisorCapabilities
FACTORY_FOR = HypervisorCapabilities

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import Hypervisors
class HypervisorsFactory(factory.Factory):
FACTORY_FOR = Hypervisors

View File

@ -4,7 +4,3 @@ class IpAddressFactory(factory.Factory):
FACTORY_FOR = IpAddress
id = None
FACTORY_FOR = IpAddress

View File

@ -2,49 +2,9 @@ import factory
from marvin.integration.lib.newbase import Iso
class IsoFactory(factory.Factory):
FACTORY_FOR = Iso
id = None
destzoneid = None
destzoneid = None
sourcezoneid = None
sourcezoneid = None
FACTORY_FOR = Iso
displaytext = None
name = None
url = None
zoneid = None
FACTORY_FOR = Iso
FACTORY_FOR = Iso
id = None
FACTORY_FOR = Iso
id = None
virtualmachineid = None
FACTORY_FOR = Iso
virtualmachineid = None
FACTORY_FOR = Iso
id = None
mode = None
FACTORY_FOR = Iso
id = None

View File

@ -1,12 +0,0 @@
import factory
from marvin.integration.lib.newbase import IsoPermissions
class IsoPermissionsFactory(factory.Factory):
FACTORY_FOR = IsoPermissions
id = None
FACTORY_FOR = IsoPermissions
id = None

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import LBStickinessPolicies
class LBStickinessPoliciesFactory(factory.Factory):
FACTORY_FOR = LBStickinessPolicies
lbruleid = None

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import LoadBalancerRuleInstances
class LoadBalancerRuleInstancesFactory(factory.Factory):
FACTORY_FOR = LoadBalancerRuleInstances
id = None

View File

@ -1,15 +0,0 @@
import factory
from marvin.integration.lib.newbase import NetworkDevice
class NetworkDeviceFactory(factory.Factory):
FACTORY_FOR = NetworkDevice
FACTORY_FOR = NetworkDevice
FACTORY_FOR = NetworkDevice
id = None

View File

@ -1,22 +0,0 @@
import factory
from marvin.integration.lib.newbase import NetworkServiceProvider
class NetworkServiceProviderFactory(factory.Factory):
FACTORY_FOR = NetworkServiceProvider
name = None
physicalnetworkid = None
FACTORY_FOR = NetworkServiceProvider
FACTORY_FOR = NetworkServiceProvider
id = None
FACTORY_FOR = NetworkServiceProvider
id = None

View File

@ -1,20 +0,0 @@
import factory
from marvin.integration.lib.newbase import NiciraNvpDevice
class NiciraNvpDeviceFactory(factory.Factory):
FACTORY_FOR = NiciraNvpDevice
hostname = None
password = None
physicalnetworkid = None
transportzoneuuid = None
username = None
FACTORY_FOR = NiciraNvpDevice
FACTORY_FOR = NiciraNvpDevice
nvpdeviceid = None

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import NiciraNvpDeviceNetworks
class NiciraNvpDeviceNetworksFactory(factory.Factory):
FACTORY_FOR = NiciraNvpDeviceNetworks
nvpdeviceid = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import OsCategories
class OsCategoriesFactory(factory.Factory):
FACTORY_FOR = OsCategories

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import OsTypes
class OsTypesFactory(factory.Factory):
FACTORY_FOR = OsTypes

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import PasswordForVirtualMachine
class PasswordForVirtualMachineFactory(factory.Factory):
FACTORY_FOR = PasswordForVirtualMachine
id = None

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import ProjectAccounts
class ProjectAccountsFactory(factory.Factory):
FACTORY_FOR = ProjectAccounts
projectid = None

View File

@ -1,16 +0,0 @@
import factory
from marvin.integration.lib.newbase import ProjectInvitation
class ProjectInvitationFactory(factory.Factory):
FACTORY_FOR = ProjectInvitation
FACTORY_FOR = ProjectInvitation
projectid = None
FACTORY_FOR = ProjectInvitation
id = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import PublicIpAddresses
class PublicIpAddressesFactory(factory.Factory):
FACTORY_FOR = PublicIpAddresses

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import Remove
class RemoveFactory(factory.Factory):
FACTORY_FOR = Remove

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import ResourceCount
class ResourceCountFactory(factory.Factory):
FACTORY_FOR = ResourceCount
domainid = None

View File

@ -1,11 +0,0 @@
import factory
from marvin.integration.lib.newbase import ResourceLimit
class ResourceLimitFactory(factory.Factory):
FACTORY_FOR = ResourceLimit
FACTORY_FOR = ResourceLimit
resourcetype = None

View File

@ -1,26 +0,0 @@
import factory
from marvin.integration.lib.newbase import Router
class RouterFactory(factory.Factory):
FACTORY_FOR = Router
id = None
FACTORY_FOR = Router
FACTORY_FOR = Router
id = None
FACTORY_FOR = Router
id = None
FACTORY_FOR = Router
id = None

View File

@ -1,12 +0,0 @@
import factory
from marvin.integration.lib.newbase import S3
class S3Factory(factory.Factory):
FACTORY_FOR = S3
accesskey = None
bucket = None
secretkey = None
FACTORY_FOR = S3

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import SecondaryStorage
class SecondaryStorageFactory(factory.Factory):
FACTORY_FOR = SecondaryStorage
url = None

View File

@ -1,11 +0,0 @@
import factory
from marvin.integration.lib.newbase import SecurityGroupEgress
class SecurityGroupEgressFactory(factory.Factory):
FACTORY_FOR = SecurityGroupEgress
FACTORY_FOR = SecurityGroupEgress
id = None

View File

@ -1,11 +0,0 @@
import factory
from marvin.integration.lib.newbase import SecurityGroupIngress
class SecurityGroupIngressFactory(factory.Factory):
FACTORY_FOR = SecurityGroupIngress
FACTORY_FOR = SecurityGroupIngress
id = None

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import ServiceForRouter
class ServiceForRouterFactory(factory.Factory):
FACTORY_FOR = ServiceForRouter
id = None
serviceofferingid = None

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import ServiceForSystemVm
class ServiceForSystemVmFactory(factory.Factory):
FACTORY_FOR = ServiceForSystemVm
id = None
serviceofferingid = None

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import ServiceForVirtualMachine
class ServiceForVirtualMachineFactory(factory.Factory):
FACTORY_FOR = ServiceForVirtualMachine
id = None
serviceofferingid = None

View File

@ -1,10 +0,0 @@
import factory
from marvin.integration.lib.newbase import SnapshotPolicies
class SnapshotPoliciesFactory(factory.Factory):
FACTORY_FOR = SnapshotPolicies
volumeid = None
FACTORY_FOR = SnapshotPolicies

View File

@ -1,13 +0,0 @@
import factory
from marvin.integration.lib.newbase import StaticNat
class StaticNatFactory(factory.Factory):
FACTORY_FOR = StaticNat
ipaddressid = None
virtualmachineid = None
FACTORY_FOR = StaticNat
ipaddressid = None

View File

@ -1,12 +0,0 @@
import factory
from marvin.integration.lib.newbase import StorageMaintenance
class StorageMaintenanceFactory(factory.Factory):
FACTORY_FOR = StorageMaintenance
id = None
FACTORY_FOR = StorageMaintenance
id = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import SupportedNetworkServices
class SupportedNetworkServicesFactory(factory.Factory):
FACTORY_FOR = SupportedNetworkServices

View File

@ -1,10 +0,0 @@
import factory
from marvin.integration.lib.newbase import Swift
class SwiftFactory(factory.Factory):
FACTORY_FOR = Swift
url = None
FACTORY_FOR = Swift

View File

@ -1,32 +0,0 @@
import factory
from marvin.integration.lib.newbase import SystemVm
class SystemVmFactory(factory.Factory):
FACTORY_FOR = SystemVm
hostid = None
virtualmachineid = None
FACTORY_FOR = SystemVm
id = None
FACTORY_FOR = SystemVm
FACTORY_FOR = SystemVm
id = None
FACTORY_FOR = SystemVm
id = None
FACTORY_FOR = SystemVm
id = None

View File

@ -1,12 +0,0 @@
import factory
from marvin.integration.lib.newbase import TemplatePermissions
class TemplatePermissionsFactory(factory.Factory):
FACTORY_FOR = TemplatePermissions
id = None
FACTORY_FOR = TemplatePermissions
id = None

View File

@ -1,8 +0,0 @@
import factory
from marvin.integration.lib.newbase import ToLoadBalancerRule
class ToLoadBalancerRuleFactory(factory.Factory):
FACTORY_FOR = ToLoadBalancerRule
id = None
virtualmachineids = None

View File

@ -1,18 +0,0 @@
import factory
from marvin.integration.lib.newbase import TrafficMonitor
class TrafficMonitorFactory(factory.Factory):
FACTORY_FOR = TrafficMonitor
url = None
zoneid = None
FACTORY_FOR = TrafficMonitor
zoneid = None
FACTORY_FOR = TrafficMonitor
id = None

View File

@ -1,23 +0,0 @@
import factory
from marvin.integration.lib.newbase import TrafficType
class TrafficTypeFactory(factory.Factory):
FACTORY_FOR = TrafficType
physicalnetworkid = None
traffictype = None
FACTORY_FOR = TrafficType
physicalnetworkid = None
FACTORY_FOR = TrafficType
id = None
FACTORY_FOR = TrafficType
id = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import TrafficTypeImplementors
class TrafficTypeImplementorsFactory(factory.Factory):
FACTORY_FOR = TrafficTypeImplementors

View File

@ -1,14 +0,0 @@
import factory
from marvin.integration.lib.newbase import UsageRecords
class UsageRecordsFactory(factory.Factory):
FACTORY_FOR = UsageRecords
enddate = None
startdate = None
FACTORY_FOR = UsageRecords
enddate = None
startdate = None

View File

@ -1,5 +0,0 @@
import factory
from marvin.integration.lib.newbase import UsageTypes
class UsageTypesFactory(factory.Factory):
FACTORY_FOR = UsageTypes

View File

@ -1,7 +0,0 @@
import factory
from marvin.integration.lib.newbase import VMPassword
class VMPasswordFactory(factory.Factory):
FACTORY_FOR = VMPassword
id = None

View File

@ -2,54 +2,8 @@ import factory
from marvin.integration.lib.newbase import VirtualMachine
class VirtualMachineFactory(factory.Factory):
FACTORY_FOR = VirtualMachine
virtualmachineid = None
FACTORY_FOR = VirtualMachine
serviceofferingid = None
templateid = None
zoneid = None
FACTORY_FOR = VirtualMachine
virtualmachineid = None
FACTORY_FOR = VirtualMachine
FACTORY_FOR = VirtualMachine
id = None
FACTORY_FOR = VirtualMachine
id = None
FACTORY_FOR = VirtualMachine
id = None
FACTORY_FOR = VirtualMachine
id = None
FACTORY_FOR = VirtualMachine
id = None
FACTORY_FOR = VirtualMachine
account = None
domainid = None
virtualmachineid = None

View File

@ -1,17 +0,0 @@
import factory
from marvin.integration.lib.newbase import VpnUser
class VpnUserFactory(factory.Factory):
FACTORY_FOR = VpnUser
password = None
username = None
FACTORY_FOR = VpnUser
FACTORY_FOR = VpnUser
username = None

View File

@ -13,4 +13,4 @@
# "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.
# under the License.

View File

@ -118,9 +118,18 @@ def write_entity_factory(entity, actions):
tabspace = ' '
#TODO: Add license header for ASLv2
code = ''
if 'create' not in actions:
factory_defaults = []
if 'create' in actions:
factory_defaults.extend(actions['create'])
elif 'deploy' in actions:
factory_defaults.extend(actions['deploy'])
elif 'associate' in actions:
factory_defaults.extend(actions['associate'])
elif 'register' in actions:
factory_defaults.extend(actions['register'])
else:
return
factory_defaults = actions['create']
if os.path.exists("./factory/%sFactory.py"%entity):
for arg in factory_defaults[0]:
code += tabspace + '%s = None\n'%arg