Loading .gitignore +0 −3 Original line number Original line Diff line number Diff line Loading @@ -36,8 +36,5 @@ docs/testing_with_postman/package-lock.json results results helm/capif/*.lock helm/capif/*.lock <<<<<<< HEAD helm/capif/charts helm/capif/charts ======= helm/capif/charts/tempo* helm/capif/charts/tempo* >>>>>>> staging services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/__main__.py→services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/app.py +4 −18 Original line number Original line Diff line number Diff line Loading @@ -2,13 +2,10 @@ import connexion import connexion import logging import logging from api_invoker_management import encoder import encoder from flask import Flask, jsonify, request from flask_jwt_extended import JWTManager, jwt_required, create_access_token from flask_jwt_extended import JWTManager, jwt_required, create_access_token from pymongo import MongoClient from config import Config from .config import Config from core.consumer_messager import Subscriber from .core.consumer_messager import Subscriber from logging.handlers import RotatingFileHandler from logging.handlers import RotatingFileHandler import os import os from fluent import sender from fluent import sender Loading @@ -23,12 +20,6 @@ from opentelemetry.sdk.trace.export import BatchSpanProcessor from opentelemetry.instrumentation.redis import RedisInstrumentor from opentelemetry.instrumentation.redis import RedisInstrumentor import sys import uuid NAME = "Invoker-Service" NAME = "Invoker-Service" def configure_monitoring(app, config): def configure_monitoring(app, config): Loading Loading @@ -145,8 +136,3 @@ subscriber = Subscriber() @app.app.before_first_request @app.app.before_first_request def create_listener_message(): def create_listener_message(): executor.submit(subscriber.listen) executor.submit(subscriber.listen) No newline at end of file if __name__ == '__main__': import logging app.run(debug=True, port=8080) services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/config.py +1 −1 Original line number Original line Diff line number Diff line Loading @@ -5,7 +5,7 @@ import os class Config: class Config: def __init__(self): def __init__(self): self.cached = 0 self.cached = 0 self.file="./config.yaml" self.file="../config.yaml" self.my_config = {} self.my_config = {} stamp = os.stat(self.file).st_mtime stamp = os.stat(self.file).st_mtime Loading services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/controllers/default_controller.py +1 −4 Original line number Original line Diff line number Diff line import connexion import connexion from api_invoker_management.models.api_invoker_enrolment_details import APIInvokerEnrolmentDetails # noqa: E501 from ..models.api_invoker_enrolment_details import APIInvokerEnrolmentDetails # noqa: E501 from ..core.apiinvokerenrolmentdetails import InvokerManagementOperations from ..core.apiinvokerenrolmentdetails import InvokerManagementOperations from ..core.validate_user import ControlAccess from ..core.validate_user import ControlAccess import json from flask import Response, request, current_app from flask import Response, request, current_app from flask_jwt_extended import jwt_required, get_jwt_identity from flask_jwt_extended import jwt_required, get_jwt_identity from ..encoder import JSONEncoder from ..models.problem_details import ProblemDetails from cryptography import x509 from cryptography import x509 from cryptography.hazmat.backends import default_backend from cryptography.hazmat.backends import default_backend from ..core.publisher import Publisher from ..core.publisher import Publisher Loading services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/core/apiinvokerenrolmentdetails.py +5 −4 Original line number Original line Diff line number Diff line Loading @@ -6,7 +6,7 @@ from .responses import bad_request_error, not_found_error, forbidden_error, inte from flask import current_app, Flask, Response from flask import current_app, Flask, Response import json import json from datetime import datetime from datetime import datetime from ..util import dict_to_camel_case from ..util import dict_to_camel_case, clean_empty from .auth_manager import AuthManager from .auth_manager import AuthManager from .resources import Resource from .resources import Resource from ..config import Config from ..config import Config Loading Loading @@ -74,7 +74,6 @@ class InvokerManagementOperations(Resource): api_invoker_id = 'INV'+str(secrets.token_hex(15)) api_invoker_id = 'INV'+str(secrets.token_hex(15)) cert = self.__sign_cert(apiinvokerenrolmentdetail.onboarding_information.api_invoker_public_key, api_invoker_id) cert = self.__sign_cert(apiinvokerenrolmentdetail.onboarding_information.api_invoker_public_key, api_invoker_id) apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id current_app.logger.debug(cert) current_app.logger.debug(cert) apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] Loading @@ -92,7 +91,7 @@ class InvokerManagementOperations(Resource): self.auth_manager.add_auth_invoker(cert['data']['certificate'], api_invoker_id) self.auth_manager.add_auth_invoker(cert['data']['certificate'], api_invoker_id) res = make_response(object=apiinvokerenrolmentdetail, status=201) res = make_response(object=dict_to_camel_case(clean_empty(apiinvokerenrolmentdetail.to_dict())), status=201) res.headers['Location'] = "/api-invoker-management/v1/onboardedInvokers/" + str(api_invoker_id) res.headers['Location'] = "/api-invoker-management/v1/onboardedInvokers/" + str(api_invoker_id) if res.status_code == 201: if res.status_code == 201: Loading Loading @@ -134,7 +133,9 @@ class InvokerManagementOperations(Resource): current_app.logger.debug("Invoker Resource inserted in database") current_app.logger.debug("Invoker Resource inserted in database") res = make_response(object=APIInvokerEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) invoker_updated = APIInvokerEnrolmentDetails().from_dict(dict_to_camel_case(result)) res = make_response(object=dict_to_camel_case(clean_empty(invoker_updated.to_dict())), status=200) if res.status_code == 200: if res.status_code == 200: current_app.logger.info("Invoker Updated") current_app.logger.info("Invoker Updated") RedisEvent("API_INVOKER_UPDATED", "apiInvokerIds", [onboard_id]).send_event() RedisEvent("API_INVOKER_UPDATED", "apiInvokerIds", [onboard_id]).send_event() Loading Loading
.gitignore +0 −3 Original line number Original line Diff line number Diff line Loading @@ -36,8 +36,5 @@ docs/testing_with_postman/package-lock.json results results helm/capif/*.lock helm/capif/*.lock <<<<<<< HEAD helm/capif/charts helm/capif/charts ======= helm/capif/charts/tempo* helm/capif/charts/tempo* >>>>>>> staging
services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/__main__.py→services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/app.py +4 −18 Original line number Original line Diff line number Diff line Loading @@ -2,13 +2,10 @@ import connexion import connexion import logging import logging from api_invoker_management import encoder import encoder from flask import Flask, jsonify, request from flask_jwt_extended import JWTManager, jwt_required, create_access_token from flask_jwt_extended import JWTManager, jwt_required, create_access_token from pymongo import MongoClient from config import Config from .config import Config from core.consumer_messager import Subscriber from .core.consumer_messager import Subscriber from logging.handlers import RotatingFileHandler from logging.handlers import RotatingFileHandler import os import os from fluent import sender from fluent import sender Loading @@ -23,12 +20,6 @@ from opentelemetry.sdk.trace.export import BatchSpanProcessor from opentelemetry.instrumentation.redis import RedisInstrumentor from opentelemetry.instrumentation.redis import RedisInstrumentor import sys import uuid NAME = "Invoker-Service" NAME = "Invoker-Service" def configure_monitoring(app, config): def configure_monitoring(app, config): Loading Loading @@ -145,8 +136,3 @@ subscriber = Subscriber() @app.app.before_first_request @app.app.before_first_request def create_listener_message(): def create_listener_message(): executor.submit(subscriber.listen) executor.submit(subscriber.listen) No newline at end of file if __name__ == '__main__': import logging app.run(debug=True, port=8080)
services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/config.py +1 −1 Original line number Original line Diff line number Diff line Loading @@ -5,7 +5,7 @@ import os class Config: class Config: def __init__(self): def __init__(self): self.cached = 0 self.cached = 0 self.file="./config.yaml" self.file="../config.yaml" self.my_config = {} self.my_config = {} stamp = os.stat(self.file).st_mtime stamp = os.stat(self.file).st_mtime Loading
services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/controllers/default_controller.py +1 −4 Original line number Original line Diff line number Diff line import connexion import connexion from api_invoker_management.models.api_invoker_enrolment_details import APIInvokerEnrolmentDetails # noqa: E501 from ..models.api_invoker_enrolment_details import APIInvokerEnrolmentDetails # noqa: E501 from ..core.apiinvokerenrolmentdetails import InvokerManagementOperations from ..core.apiinvokerenrolmentdetails import InvokerManagementOperations from ..core.validate_user import ControlAccess from ..core.validate_user import ControlAccess import json from flask import Response, request, current_app from flask import Response, request, current_app from flask_jwt_extended import jwt_required, get_jwt_identity from flask_jwt_extended import jwt_required, get_jwt_identity from ..encoder import JSONEncoder from ..models.problem_details import ProblemDetails from cryptography import x509 from cryptography import x509 from cryptography.hazmat.backends import default_backend from cryptography.hazmat.backends import default_backend from ..core.publisher import Publisher from ..core.publisher import Publisher Loading
services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/core/apiinvokerenrolmentdetails.py +5 −4 Original line number Original line Diff line number Diff line Loading @@ -6,7 +6,7 @@ from .responses import bad_request_error, not_found_error, forbidden_error, inte from flask import current_app, Flask, Response from flask import current_app, Flask, Response import json import json from datetime import datetime from datetime import datetime from ..util import dict_to_camel_case from ..util import dict_to_camel_case, clean_empty from .auth_manager import AuthManager from .auth_manager import AuthManager from .resources import Resource from .resources import Resource from ..config import Config from ..config import Config Loading Loading @@ -74,7 +74,6 @@ class InvokerManagementOperations(Resource): api_invoker_id = 'INV'+str(secrets.token_hex(15)) api_invoker_id = 'INV'+str(secrets.token_hex(15)) cert = self.__sign_cert(apiinvokerenrolmentdetail.onboarding_information.api_invoker_public_key, api_invoker_id) cert = self.__sign_cert(apiinvokerenrolmentdetail.onboarding_information.api_invoker_public_key, api_invoker_id) apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id current_app.logger.debug(cert) current_app.logger.debug(cert) apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] Loading @@ -92,7 +91,7 @@ class InvokerManagementOperations(Resource): self.auth_manager.add_auth_invoker(cert['data']['certificate'], api_invoker_id) self.auth_manager.add_auth_invoker(cert['data']['certificate'], api_invoker_id) res = make_response(object=apiinvokerenrolmentdetail, status=201) res = make_response(object=dict_to_camel_case(clean_empty(apiinvokerenrolmentdetail.to_dict())), status=201) res.headers['Location'] = "/api-invoker-management/v1/onboardedInvokers/" + str(api_invoker_id) res.headers['Location'] = "/api-invoker-management/v1/onboardedInvokers/" + str(api_invoker_id) if res.status_code == 201: if res.status_code == 201: Loading Loading @@ -134,7 +133,9 @@ class InvokerManagementOperations(Resource): current_app.logger.debug("Invoker Resource inserted in database") current_app.logger.debug("Invoker Resource inserted in database") res = make_response(object=APIInvokerEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) invoker_updated = APIInvokerEnrolmentDetails().from_dict(dict_to_camel_case(result)) res = make_response(object=dict_to_camel_case(clean_empty(invoker_updated.to_dict())), status=200) if res.status_code == 200: if res.status_code == 200: current_app.logger.info("Invoker Updated") current_app.logger.info("Invoker Updated") RedisEvent("API_INVOKER_UPDATED", "apiInvokerIds", [onboard_id]).send_event() RedisEvent("API_INVOKER_UPDATED", "apiInvokerIds", [onboard_id]).send_event() Loading