From 2c7fadbb5f1327be1d9fb46f1006770e3fdee747 Mon Sep 17 00:00:00 2001 From: Laskaratos Dimitris Date: Tue, 22 Jul 2025 12:31:46 +0300 Subject: [PATCH] For merging --- .../controllers/app_controllers.py | 75 ------------------- .../controllers/edge_cloud_controller.py | 5 -- .../services/federation_services.py | 14 ---- .../specification/openapi.yaml | 20 +---- 4 files changed, 4 insertions(+), 110 deletions(-) diff --git a/edge_cloud_management_api/controllers/app_controllers.py b/edge_cloud_management_api/controllers/app_controllers.py index 3ce787f..604e10d 100644 --- a/edge_cloud_management_api/controllers/app_controllers.py +++ b/edge_cloud_management_api/controllers/app_controllers.py @@ -84,81 +84,6 @@ def delete_app(appId, x_correlator=None): 500, ) - -#def create_app_instance(): - # logger.info("Received request to create app instance") - - # try: - # Step 1: Get request body - # body = request.get_json() - # logger.debug(f"Request body: {body}") - - # Step 2: Validate body format - # app_id = body.get('appId') - # app_zones = body.get('appZones') - - # if not app_id or not app_zones: - # return jsonify({"error": "Missing required fields: appId or appZones"}), 400 - - # Step 3: Connect to Mongo and check if app exists - # with MongoManager() as mongo_manager: - # app_data = mongo_manager.find_document("apps", {"_id": app_id}) - # pi_edge_client_factory = PiEdgeAPIClientFactory() - # pi_edge_client = pi_edge_client_factory.create_pi_edge_api_client() - # app_data = pi_edge_client.get_app(app_id) - - # if len(app_data)<1: - # logger.warning(f"No application found with ID {app_id}") - # return jsonify({"error": "App not found", "details": f"No application found with ID {app_id}"}), 404 - - # logger.info(f"Application {app_id} found in database") - - # Step 4: Deploy app instance using Pi-Edge client - - - #logger.info(f"Preparing to send deployment request to SRM for appId={app_id}") - - # deployment_payload = { - # "appId": app_id, - # "appZones": app_zones - #} - - #Print everything before sending - # print("\n=== Preparing Deployment Request ===") - # print(f"Endpoint: {pi_edge_client.base_url}/deployedServiceFunction") - # print(f"Headers: {pi_edge_client._get_headers()}") - # print(f"Payload: {deployment_payload}") - # print("=== End of Deployment Request ===\n") - - #Try sending to Pi-Edge, catch connection errors separately - # try: - # response = pi_edge_client.deploy_service_function(data=deployment_payload) - - # if isinstance(response, dict) and "error" in response: - # logger.warning(f"Failed to deploy service function: {response}") - # return jsonify({ - # "warning": "Deployment not completed (SRM service unreachable)", - # "details": response - # }), 202 # Still accept the request but warn - - # logger.info(f"Deployment response from SRM: {response}") - - # except Exception as inner_error: - # logger.error(f"Exception while trying to deploy to SRM: {inner_error}") - # return jsonify({ - # "warning": "SRM backend unavailable. Deployment request was built correctly.", - # "details": str(inner_error) - # }), 202 # Still accept it (because your backend worked) - - # return jsonify({"message": f"Application {app_id} instantiation accepted"}), 202 - - # except ValidationError as e: - # logger.error(f"Validation error: {str(e)}") - # return jsonify({"error": "Validation error", "details": str(e)}), 400 - #except Exception as e: - # logger.error(f"Unexpected error in create_app_instance: {str(e)}") - # return jsonify({"error": "An unexpected error occurred", "details": str(e)}), 500 - def create_app_instance(): logger.info("Received request to create app instance") diff --git a/edge_cloud_management_api/controllers/edge_cloud_controller.py b/edge_cloud_management_api/controllers/edge_cloud_controller.py index ce31309..5fe9f5e 100644 --- a/edge_cloud_management_api/controllers/edge_cloud_controller.py +++ b/edge_cloud_management_api/controllers/edge_cloud_controller.py @@ -111,14 +111,9 @@ def get_edge_cloud_zones(x_correlator: str | None = None, region=None, status=No } return jsonify(error_info), 500 -<<<<<<< HEAD def edge_cloud_zone_details(zoneId: str) -> dict: pi_edge_factory = PiEdgeAPIClientFactory() api_client = pi_edge_factory.create_pi_edge_api_client() result = api_client.edge_cloud_zone_details(zone_id=zoneId) return result -======= - def get_zone_details(zoneId:str): - pass ->>>>>>> 1c306f8dd595452cbe7804c3473f2f4b77a0b270 diff --git a/edge_cloud_management_api/services/federation_services.py b/edge_cloud_management_api/services/federation_services.py index 4c671a9..92be7f4 100644 --- a/edge_cloud_management_api/services/federation_services.py +++ b/edge_cloud_management_api/services/federation_services.py @@ -1,18 +1,10 @@ -<<<<<<< HEAD import os -======= ->>>>>>> 1c306f8dd595452cbe7804c3473f2f4b77a0b270 import requests from requests.exceptions import Timeout, ConnectionError from edge_cloud_management_api.configs.env_config import config from edge_cloud_management_api.managers.log_manager import logger -<<<<<<< HEAD from edge_cloud_management_api.services.pi_edge_services import PiEdgeAPIClientFactory - -======= ->>>>>>> 1c306f8dd595452cbe7804c3473f2f4b77a0b270 - class FederationManagerClient: def __init__(self, base_url=None): self.base_url = base_url or config.FEDERATION_MANAGER_HOST @@ -100,7 +92,6 @@ class FederationManagerClient: logger.error(f"GET /fed-context-id unexpected error: {e}") return {"error": str(e)} -<<<<<<< HEAD def onboard_application(self, federation_context_id: str, body: dict): url = f"{self.base_url}/{federation_context_id}/application/onboarding" try: @@ -160,8 +151,6 @@ class FederationManagerClient: return {"error": str(e), "status_code": 500} -======= ->>>>>>> 1c306f8dd595452cbe7804c3473f2f4b77a0b270 class FederationManagerClientFactory: def __init__(self): @@ -171,7 +160,6 @@ class FederationManagerClientFactory: base_url = base_url or self.default_base_url return FederationManagerClient(base_url=base_url) -<<<<<<< HEAD def onboard_application_to_partners(app_id, zones): SOURCE_OP = os.getenv("SOURCE_OP_ID") federation_context_id = os.getenv("FEDERATION_CONTEXT_ID") @@ -219,8 +207,6 @@ class FederationManagerClientFactory: return {"onboardingResults": results}, 202 -======= ->>>>>>> 1c306f8dd595452cbe7804c3473f2f4b77a0b270 if __name__ == "__main__": factory = FederationManagerClientFactory() diff --git a/edge_cloud_management_api/specification/openapi.yaml b/edge_cloud_management_api/specification/openapi.yaml index ab8567e..e2d5c54 100644 --- a/edge_cloud_management_api/specification/openapi.yaml +++ b/edge_cloud_management_api/specification/openapi.yaml @@ -152,15 +152,8 @@ externalDocs: description: Product documentation at Camara url: https://github.com/camaraproject/EdgeCloud -# servers: -# - url: "{apiRoot}/{basePath}" -# variables: -# apiRoot: -# default: http://localhost:443 -# description: API root -# basePath: -# default: edge-application-management/vwip -# description: Base path for the Edge Application Management API +servers: +- url: http://vitrualserver:8080/oeg/1.0.0 tags: - name: Application @@ -629,7 +622,7 @@ paths: # - openId: # - edge-application-management:edge-cloud-zones:read tags: - - Edge Cloud + - Edge Cloud Zones summary: Retrieve a list of the operators Edge Cloud Zones and their status description: | @@ -678,7 +671,7 @@ paths: /edge-cloud-zones/{zoneId}: get: tags: - - Edge Cloud + - Edge Cloud Zones summary: Retrieve the details of an Edge Cloud Zone description: | List of the operators Edge Cloud Zones and their @@ -824,12 +817,7 @@ paths: "405": description: Method not allowed "404": -<<<<<<< HEAD description: Session not found -======= - description: Session not found - ->>>>>>> 1c306f8dd595452cbe7804c3473f2f4b77a0b270 /partner: post: tags: -- GitLab