Added traffic update capability to Ixload TG
[yardstick.git] / yardstick / common / exceptions.py
index 641c4e1..c9d61e4 100644 (file)
@@ -79,23 +79,33 @@ class FunctionNotImplemented(YardstickException):
                '"%(class_name)" class.')
 
 
+class InvalidType(YardstickException):
+    message = 'Type "%(type_to_convert)s" is not valid'
+
+
+class InvalidRxfFile(YardstickException):
+    message = 'Loaded rxf file has unexpected format'
+
+
 class InfluxDBConfigurationMissing(YardstickException):
     message = ('InfluxDB configuration is not available. Add "influxdb" as '
                'a dispatcher and the configuration section')
 
 
 class YardstickBannedModuleImported(YardstickException):
-    # pragma: no cover
     message = 'Module "%(module)s" cannnot be imported. Reason: "%(reason)s"'
 
 
+class IXIAUnsupportedProtocol(YardstickException):
+    message = 'Protocol "%(protocol)" is not supported in IXIA'
+
+
 class PayloadMissingAttributes(YardstickException):
     message = ('Error instantiating a Payload class, missing attributes: '
                '%(missing_attributes)s')
 
 
 class HeatTemplateError(YardstickException):
-    """Error in Heat during the stack deployment"""
     message = ('Error in Heat during the creation of the OpenStack stack '
                '"%(stack_name)s"')
 
@@ -108,6 +118,10 @@ class TrafficProfileNotImplemented(YardstickException):
     message = 'No implementation for traffic profile %(profile_class)s.'
 
 
+class TrafficProfileRate(YardstickException):
+    message = 'Traffic profile rate must be "<number>[fps|%]"'
+
+
 class DPDKSetupDriverError(YardstickException):
     message = '"igb_uio" driver is not loaded'
 
@@ -210,6 +224,10 @@ class WaitTimeout(YardstickException):
     message = 'Wait timeout while waiting for condition'
 
 
+class PktgenActionError(YardstickException):
+    message = 'Error in "%(action)s" action'
+
+
 class KubernetesApiException(YardstickException):
     message = ('Kubernetes API errors. Action: %(action)s, '
                'resource: %(resource)s')
@@ -223,6 +241,24 @@ class KubernetesTemplateInvalidVolumeType(YardstickException):
     message = 'No valid "volume" types present in %(volume)s'
 
 
+class KubernetesSSHPortNotDefined(YardstickException):
+    message = 'Port 22 needs to be defined'
+
+
+class KubernetesServiceObjectNotDefined(YardstickException):
+    message = 'ServiceObject is not defined'
+
+
+class KubernetesServiceObjectDefinitionError(YardstickException):
+    message = ('Kubernetes Service object definition error, missing '
+               'parameters: %(missing_parameters)s')
+
+
+class KubernetesServiceObjectNameError(YardstickException):
+    message = ('Kubernetes Service object name "%(name)s" does not comply'
+               'naming convention')
+
+
 class KubernetesCRDObjectDefinitionError(YardstickException):
     message = ('Kubernetes Custom Resource Definition Object error, missing '
                'parameters: %(missing_parameters)s')
@@ -245,6 +281,14 @@ class KubernetesContainerPortNotDefined(YardstickException):
     message = 'Container port not defined in "%(port)s"'
 
 
+class KubernetesContainerWrongImagePullPolicy(YardstickException):
+    message = 'Image pull policy must be "Always", "IfNotPresent" or "Never"'
+
+
+class KubernetesContainerCommandType(YardstickException):
+    message = '"args" and "command" must be string or list of strings'
+
+
 class ScenarioCreateNetworkError(YardstickException):
     message = 'Create Neutron Network Scenario failed'
 
@@ -370,5 +414,13 @@ class AclMissingActionArguments(YardstickException):
                '[action=%(action_name)s parameter=%(action_param)s]')
 
 
-class AclUknownActionTemplate(YardstickException):
+class AclUnknownActionTemplate(YardstickException):
     message = 'No ACL CLI template found for "%(action_name)s" action'
+
+
+class InvalidMacAddress(YardstickException):
+    message = 'Mac address "%(mac_address)s" is invalid'
+
+
+class ValueCheckError(YardstickException):
+    message = 'Constraint "%(value1)s %(operator)s %(value2)s" does not hold'