
Details: This change is to avoid checking signature file that throws exception on Debian The signature file object has different type in CentOS and Debian (StringIO vs BytesIO). The BytesIO has fileno attribute but file descriptor checking is not supported on Debian. Therefore, we see exception from checking signature file file descriptor. This fix is to make sure we don't check signature file file descriptor. Test Plan: PASS: run system load import on Debian OS PASS: run system load import on CentOS Task: 46094 Story: 2009303 Depends-on: https://review.opendev.org/c/starlingx/config/+/854254 Signed-off-by: Junfeng (Shawn) Li <junfeng.li@windriver.com> Change-Id: I270ae5a463ff4919e0fc10989e3ce3f1db84308d
api
DC Orchestrator API is Web Server Gateway Interface (WSGI) applications to receive and process API calls, including keystonemiddleware to do the authentication, parameter check and validation, convert API calls to job rpc message, and then send the job to DC Orchestrator Engine through the queue. If the job will be processed by DC Orchestrator Engine in synchronous way, the DC Orchestrator API will wait for the response from the DC Orchestrator Engine. Otherwise, the DC Orchestrator API will send response to the API caller first, and then send the job to DC Orchestrator Engine in asynchronous way.
Multiple DC Orchestrator API could run in parallel, and also can work in multi-worker mode.
Multiple DC Orchestrator API will be designed and run in stateless mode, persistent data will be accessed (read and write) from the DC Orchestrator Database through the DAL module.
Setup and encapsulate the API WSGI app
- app.py:
-
Setup and encapsulate the API WSGI app, including integrate the keystonemiddleware app
- apicfg.py:
-
API configuration loading and init
- enforcer.py
-
Enforces policies on the version2 API's