Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 1 addition & 13 deletions connect/eaas/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,6 @@
TaskType.ASSET_ADJUSTMENT_REQUEST_PROCESSING: 'process_asset_adjustment_request',
TaskType.ASSET_PURCHASE_REQUEST_VALIDATION: 'validate_asset_purchase_request',
TaskType.ASSET_CHANGE_REQUEST_VALIDATION: 'validate_asset_change_request',
TaskType.ASSET_SUSPEND_REQUEST_VALIDATION: 'validate_asset_suspend_request',
TaskType.ASSET_RESUME_REQUEST_VALIDATION: 'validate_asset_resume_request',
TaskType.ASSET_CANCEL_REQUEST_VALIDATION: 'validate_asset_cancel_request',
TaskType.ASSET_ADJUSTMENT_REQUEST_VALIDATION: 'validate_asset_adjustment_request',
TaskType.PRODUCT_ACTION_EXECUTION: 'execute_product_action',
TaskType.PRODUCT_CUSTOM_EVENT_PROCESSING: 'process_product_custom_event',
TaskType.TIER_CONFIG_SETUP_REQUEST_PROCESSING: 'process_tier_config_setup_request',
Expand All @@ -37,10 +33,6 @@
TaskType.ASSET_ADJUSTMENT_REQUEST_PROCESSING,
TaskType.ASSET_PURCHASE_REQUEST_VALIDATION,
TaskType.ASSET_CHANGE_REQUEST_VALIDATION,
TaskType.ASSET_SUSPEND_REQUEST_VALIDATION,
TaskType.ASSET_RESUME_REQUEST_VALIDATION,
TaskType.ASSET_CANCEL_REQUEST_VALIDATION,
TaskType.ASSET_ADJUSTMENT_REQUEST_VALIDATION,
)

TIER_CONFIG_REQUEST_TASK_TYPES = (
Expand All @@ -64,16 +56,12 @@
INTERACTIVE_TASK_TYPES = (
TaskType.ASSET_PURCHASE_REQUEST_VALIDATION,
TaskType.ASSET_CHANGE_REQUEST_VALIDATION,
TaskType.ASSET_SUSPEND_REQUEST_VALIDATION,
TaskType.ASSET_RESUME_REQUEST_VALIDATION,
TaskType.ASSET_CANCEL_REQUEST_VALIDATION,
TaskType.ASSET_ADJUSTMENT_REQUEST_VALIDATION,
TaskType.TIER_CONFIG_SETUP_REQUEST_VALIDATION,
TaskType.TIER_CONFIG_CHANGE_REQUEST_VALIDATION,
TaskType.PRODUCT_ACTION_EXECUTION,
TaskType.PRODUCT_CUSTOM_EVENT_PROCESSING,
)

BACKGROUND_TASK_MAX_EXECUTION_TIME = 300
INTERACTIVE_TASK_MAX_EXECUTION_TIME = 60
INTERACTIVE_TASK_MAX_EXECUTION_TIME = 120
RESULT_SENDER_MAX_RETRIES = 5
6 changes: 1 addition & 5 deletions connect/eaas/dataclasses.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,13 @@ class TaskType:
ASSET_ADJUSTMENT_REQUEST_PROCESSING = 'asset_adjustment_request_processing'
ASSET_PURCHASE_REQUEST_VALIDATION = 'asset_purchase_request_validation'
ASSET_CHANGE_REQUEST_VALIDATION = 'asset_change_request_validation'
ASSET_SUSPEND_REQUEST_VALIDATION = 'asset_suspend_request_validation'
ASSET_RESUME_REQUEST_VALIDATION = 'asset_resume_request_validation'
ASSET_CANCEL_REQUEST_VALIDATION = 'asset_cancel_request_validation'
ASSET_ADJUSTMENT_REQUEST_VALIDATION = 'asset_adjustment_request_validation'
PRODUCT_ACTION_EXECUTION = 'product_action_execution'
PRODUCT_CUSTOM_EVENT_PROCESSING = 'product_custom_event_processing'
TIER_CONFIG_SETUP_REQUEST_PROCESSING = 'tier_config_setup_request_processing'
TIER_CONFIG_CHANGE_REQUEST_PROCESSING = 'tier_config_change_request_processing'
TIER_CONFIG_ADJUSTMENT_REQUEST_PROCESSING = 'tier_config_adjustment_request_processing'
TIER_CONFIG_SETUP_REQUEST_VALIDATION = 'tier_config_setup_request_validation'
TIER_CONFIG_CHANGE_REQUEST_VALIDATION = 'tier_config_change_request_validation'
TIER_CONFIG_ADJUSTMENT_REQUEST_VALIDATION = 'tier_config_adjustment_request_validation'


class MessageType:
Expand Down Expand Up @@ -68,6 +63,7 @@ def to_json(self):
class ConfigurationPayload:
configuration: dict = None
logging_api_key: str = None
environment_type: str = None

def to_json(self):
return dataclasses.asdict(self)
Expand Down
8 changes: 8 additions & 0 deletions connect/eaas/extension.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,14 @@ def __init__(self, status, http_status, headers, body):
self.headers = headers
self.body = body

@property
def data(self):
return {
'http_status': self.http_status,
'headers': self.headers,
'body': self.body,
}

@classmethod
def done(cls, http_status=200, headers=None, body=None):
return cls(ResultType.SUCCESS, http_status, headers, body)
Expand Down
8 changes: 7 additions & 1 deletion connect/eaas/worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ def __init__(self, secure=True):
self.tasks_manager = None
self.paused = False
self.logging_handler = None
self.environment_type = None

async def ensure_connection(self):
"""
Expand Down Expand Up @@ -114,7 +115,11 @@ def get_extension_logger(self, token):
if self.logging_handler is None and token is not None:
self.logging_handler = ExtensionLogHandler(
token,
default_extra_fields={'instance_id': self.instance_id},
default_extra_fields={
'environment_id': self.environment_id,
'instance_id': self.instance_id,
'environment_type': self.environment_type,
},
)
logger.addHandler(self.logging_handler)
return logger
Expand Down Expand Up @@ -214,6 +219,7 @@ async def configuration(self, data):
"""
self.extension_config = data.configuration
self.logging_api_key = data.logging_api_key
self.environment_type = data.environment_type
logger.info('Extension configuration has been updated.')

async def pause(self):
Expand Down
11 changes: 6 additions & 5 deletions tests/test_worker.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ def get_descriptor(cls):
'var2': 'value2',
},
'token',
'development',
),
).to_json()

Expand Down Expand Up @@ -132,7 +133,7 @@ def process_asset_purchase_request(self, request):

data_to_send = [
Message(MessageType.CONFIGURATION, ConfigurationPayload(
{'var': 'val'}, 'api_key',
{'var': 'val'}, 'api_key', 'development',
)).to_json(),
Message(MessageType.TASK, TaskPayload(
'TQ-000',
Expand Down Expand Up @@ -222,7 +223,7 @@ def process_tier_config_setup_request(self, request):

data_to_send = [
Message(MessageType.CONFIGURATION, ConfigurationPayload(
{'var': 'val'}, 'api_key',
{'var': 'val'}, 'api_key', 'development',
)).to_json(),
Message(MessageType.TASK, TaskPayload(
'TQ-000',
Expand Down Expand Up @@ -300,7 +301,7 @@ def get_descriptor(cls):

data_to_send = [
Message(MessageType.CONFIGURATION, ConfigurationPayload(
{'var': 'val'}, 'api_key',
{'var': 'val'}, 'api_key', 'development',
)).to_json(),
Message(MessageType.PAUSE).to_json(),
]
Expand Down Expand Up @@ -354,7 +355,7 @@ def get_descriptor(cls):

data_to_send = [
Message(MessageType.CONFIGURATION, ConfigurationPayload(
{'var': 'val'}, 'api_key',
{'var': 'val'}, 'api_key', 'development',
)).to_json(),
Message(MessageType.PAUSE).to_json(),
Message(MessageType.RESUME).to_json(),
Expand Down Expand Up @@ -409,7 +410,7 @@ def get_descriptor(cls):

data_to_send = [
Message(MessageType.CONFIGURATION, ConfigurationPayload(
{'var': 'val'}, 'api_key',
{'var': 'val'}, 'api_key', 'development',
)).to_json(),
Message(MessageType.SHUTDOWN).to_json(),
]
Expand Down