diff --git a/README.md b/README.md index a067e96a4279fc281a996b2f974892b7d1b8bca7..50179afa459af4ef6ac4222688dad28f797c1e47 100644 --- a/README.md +++ b/README.md @@ -67,6 +67,7 @@ Follow next steps to perform OpenCAPIF SDK installation: #Commands to install the Python environment pyenv install 3.12 pyenv virtualenv 3.12 Sdkenviroment +source your/path/to/.pyenv/versions/pesp_sdk_env/bin/activate ``` OPTIONAL step: sometimes Apple Mac shells raise issues while finding the shell path. If this happens, try this command: @@ -85,15 +86,15 @@ git clone -b v1 --single-branch https://github.com/Telefonica/pesp_capif_sdk.git ``` ```console -#Then move to the SDK-S6G folder +#Then move to the pesp_capif_sdk folder -cd /your/path/to/SDK-S6G +cd /your/path/to/pesp_capif_sdk ``` 3 - Install the Python requirements listed in requirements.txt file: ```console -cd Safe-6g.egg-info +cd installation python -m pip install --upgrade pip diff --git a/config/config.json b/config/config.json index 76938b804a8f5c13d65e0e22c324c421d77d1f69..8c342fdd4e8016579fc1d564f2043e6d9a9fc1d2 100644 --- a/config/config.json +++ b/config/config.json @@ -1,40 +1,41 @@ { -"invoker_folder": "", +"invoker_folder": "/Users/IDB0128/Documents/OpenCapif/test_invoker_certificate_folder", -"provider_folder": "", +"provider_folder": "/Users/IDB0128/Documents/OpenCapif/test_provider_certificate_folder", -"capif_host": "", +"capif_host": "capif-prev.mobilesandbox.cloud", -"register_host": "", +"register_host": "registercapif-prev.mobilesandbox.cloud", -"capif_https_port": "", +"capif_https_port": "36212", -"capif_register_port": "", +"capif_register_port": "36211", -"capif_callback_url": "", +"capif_callback_url": "http://localhost:5000", -"csr_common_name": "", +"csr_common_name": "test03", -"csr_organizational_unit": "", +"csr_organizational_unit": "test_app_ou", -"csr_organization": "", +"csr_organization": "test_app_o", -"crs_locality": "", +"crs_locality": "Madrid", -"csr_state_or_province_name": "", +"csr_state_or_province_name": "Madrid", -"csr_country_name": "", +"csr_country_name": "ES", -"csr_email_address": "", +"csr_email_address": "test@example.com", -"capif_username": "", +"capif_username": "echeva_0", -"capif_password": "", +"capif_password": "echevapass", -"APFs":"", +"APFs":"1", -"AEFs":"", +"AEFs":"1", -"debug_mode": "" +"debug_mode": "True" } + diff --git a/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg b/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg index 960e4211c929c729994bde46ef81e5458ddb7e4e..bc43e401b97a21ca349f6edf0164a66a4219ed1e 100644 Binary files a/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg and b/doc/images/Flujo completo-OPENCAPIF ACTUAL.jpg differ diff --git a/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg b/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg index 249dd95f7f508893e0f8976d053f4546af349178..ca134cb1b600f24b44cb3cb0dd8e0c52a28a2287 100644 Binary files a/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg and b/doc/images/Flujo completo-SDK ACTUAL CON REGISTER.jpg differ diff --git a/installation/requirements.txt b/installation/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..39034a466171a6f5ac94593a7b800747bdd5e6a3 --- /dev/null +++ b/installation/requirements.txt @@ -0,0 +1,35 @@ +argh==0.31.3 +arrow==1.3.0 +binaryornot==0.4.4 +certifi==2024.7.4 +cffi==1.16.0 +chardet==5.2.0 +charset-normalizer==3.3.2 +click==8.0.1 +cookiecutter==2.1.1 +coverage==4.5.4 +cryptography==38.0.4 +flake8==3.9.2 +idna==3.7 +iniconfig==2.0.0 +invoke==1.6.0 +Jinja2==3.1.4 +jinja2-time==0.2.0 +MarkupSafe==2.1.5 +mccabe==0.6.1 +packaging==24.1 +pluggy==1.5.0 +pycodestyle==2.7.0 +pycparser==2.22 +pyflakes==2.3.1 +pyOpenSSL==22.1.0 +pytest==8.3.2 +python-dateutil==2.9.0.post0 +python-slugify==8.0.4 +PyYAML==6.0.1 +requests==2.32.3 +six==1.16.0 +text-unidecode==1.3 +types-python-dateutil==2.9.0.20240316 +typing-extensions==3.10.0.2 +urllib3==2.2.2 \ No newline at end of file diff --git a/scripts/emulator_utils.py b/scripts/emulator_utils.py index 14408759f2abb58dee937b07fe0c6aa540373b45..02924f298821d929f0c1e6701a600817b246d58b 100755 --- a/scripts/emulator_utils.py +++ b/scripts/emulator_utils.py @@ -1,16 +1,11 @@ def get_config_file()-> str : - return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/Config_files/config.json" + return "/Users/IDB0128/git_repos/pesp_capif_sdk/config/config.json" def get_register_file()-> str : - return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/Config_files/register.json" + return "/Users/IDB0128/git_repos/pesp_capif_sdk/config/register.json" def provider_exposer_get_sample_api_description_path() -> str: - return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/capif_exposer_sample_files/provider_api_description_sample.json" + return "/Users/IDB0128/git_repos/pesp_capif_sdk/api-samples/provider_api_description_sample.json" -def get_provider_config_file()->str: - return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/Functionalities/Config_files/Provider_config.json" - -def get_sdk_folder()-> str: - return "/Users/IDB0128/Documents/OpenCapif/SDK-S6G/" \ No newline at end of file diff --git a/scripts/invoker_capif_connector.py b/scripts/invoker_capif_connector.py index cfd1bccaccb0c8e299b4c4a9149a5d6034a83462..61fd3993cc14470c22d74152acb4aca16c949b17 100755 --- a/scripts/invoker_capif_connector.py +++ b/scripts/invoker_capif_connector.py @@ -1,11 +1,14 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils -# Ahora importa las clases desde tu archivo sdk.py -from sdk import CAPIFInvokerConnector +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) +from sdk import CAPIFInvokerConnector def showcase_capif_connector(): diff --git a/scripts/invoker_capif_connector_offboarding.py b/scripts/invoker_capif_connector_offboarding.py index b30dc77a9381332b752f803adca542228b1fe29f..94660893e4aca5affbae947fcbdeeda189d29792 100755 --- a/scripts/invoker_capif_connector_offboarding.py +++ b/scripts/invoker_capif_connector_offboarding.py @@ -1,18 +1,17 @@ -import sys -import os -# Agrega la ruta del archivo al sys.path -sys.path.append('/Users/IDB0128/Documents/OpenCapif/SDK-S6G') - -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) -# Ahora importa las clases desde tu archivo sdk.py +# Ahora importa la clase CAPIFProviderConnector desde el archivo sdk.py from sdk import CAPIFInvokerConnector -import emulator_utils def showcase_offboard_and_deregister_invoker(): capif_connector = CAPIFInvokerConnector(config_file=emulator_utils.get_config_file()) diff --git a/scripts/invoker_service_discovery.py b/scripts/invoker_service_discovery.py index 0b0d06c742ba6caef6a1ff453dff83eac5d20dfc..744d2a0ba13573ef9c1ab94a1f1155d074295319 100755 --- a/scripts/invoker_service_discovery.py +++ b/scripts/invoker_service_discovery.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import ServiceDiscoverer diff --git a/scripts/invoker_service_get_token.py b/scripts/invoker_service_get_token.py index 4fe52a96ba20361f42d8cbc98ab199bba499e4c2..6621491f9ce7fb48c9b171135bda034df68c96ac 100755 --- a/scripts/invoker_service_get_token.py +++ b/scripts/invoker_service_get_token.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import ServiceDiscoverer diff --git a/scripts/provider_capif_connector.py b/scripts/provider_capif_connector.py index 8fc6bfa9fc8a096f681bb866bb1d9e816eb0c3c5..b2fb5d017251608c19a6ca4b1aac00200e039a20 100755 --- a/scripts/provider_capif_connector.py +++ b/scripts/provider_capif_connector.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import CAPIFProviderConnector diff --git a/scripts/provider_capif_connector_offboarding.py b/scripts/provider_capif_connector_offboarding.py index 8df73594fa68559e57c81c7a2622266384217957..18fc3a7c0634ec5a448931bdeb17976a9c63829b 100755 --- a/scripts/provider_capif_connector_offboarding.py +++ b/scripts/provider_capif_connector_offboarding.py @@ -1,20 +1,21 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) + -# Ahora importa las clases desde tu archivo sdk.py from sdk import CAPIFProviderConnector + def offboard_capif_nef_connector(): """ - """ capif_connector = CAPIFProviderConnector(config_file=emulator_utils.get_config_file()) - capif_connector.offboard_and_deregister_nef() print("COMPLETED") - - if __name__ == "__main__": - #Let's register a NEF to CAPIF. This should happen exactly once offboard_capif_nef_connector() diff --git a/scripts/provider_get_all_published_api.py b/scripts/provider_get_all_published_api.py index 468d87ab58a0db3c7355c13049fcbea4f326251e..64044634242fab23d761ca0d6fced7c9c7cce0a7 100644 --- a/scripts/provider_get_all_published_api.py +++ b/scripts/provider_get_all_published_api.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import CAPIFProviderConnector diff --git a/scripts/provider_get_published_api.py b/scripts/provider_get_published_api.py index 13eb933b3d6c9da821ab88dc491d2a6a566d75c0..aa603c2bbe2863601a870fed7908cf35e113b4fe 100644 --- a/scripts/provider_get_published_api.py +++ b/scripts/provider_get_published_api.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import CAPIFProviderConnector diff --git a/scripts/provider_publish_api.py b/scripts/provider_publish_api.py index 0a3ced1331898ea9a629d52600fe4c501bd3ab25..694326e2ab5a4dade07feb78a2159c75f8f13177 100644 --- a/scripts/provider_publish_api.py +++ b/scripts/provider_publish_api.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import CAPIFProviderConnector diff --git a/scripts/provider_unpublish_api.py b/scripts/provider_unpublish_api.py index 1cc8157e9f68f144fc966c13647ac6b0167821b0..6e9305a5d734553c58f10fd33c881bda14953594 100644 --- a/scripts/provider_unpublish_api.py +++ b/scripts/provider_unpublish_api.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import CAPIFProviderConnector diff --git a/scripts/provider_update_api.py b/scripts/provider_update_api.py index e9cfb276668d5a73422108affb00cf63802a3025..6e7b18ef98a2515b0c145857b086fe4a3b005f38 100644 --- a/scripts/provider_update_api.py +++ b/scripts/provider_update_api.py @@ -1,6 +1,11 @@ -import emulator_utils import sys -sys.path.insert(0, emulator_utils.get_sdk_folder) +import os +import emulator_utils + +# Añadir el directorio del SDK al PYTHONPATH usando una ruta relativa +script_dir = os.path.dirname(os.path.abspath(__file__)) # Directorio actual del script +sdk_path = os.path.join(script_dir, '..', 'sdk') # Subir un nivel y apuntar a 'sdk' +sys.path.insert(0, sdk_path) # Ahora importa las clases desde tu archivo sdk.py from sdk import CAPIFProviderConnector diff --git a/sdk/sdk.py b/sdk/sdk.py index d98df5baf598a6cf93fb7f22e791d441bd4301b0..3429fd10d43d2272d9193a1b37d2fa557bd7ea6e 100644 --- a/sdk/sdk.py +++ b/sdk/sdk.py @@ -31,7 +31,7 @@ logging.basicConfig( level=logging.NOTSET, # Nivel mÃnimo de severidad a registrar format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', # Formato del mensaje de log handlers=[ - logging.FileHandler("sdk_logs.log"), # Registra en un archivo + logging.FileHandler("../Functionalities/sdk_logs.log"), # Registra en un archivo logging.StreamHandler() # También muestra en la consola ] )