Enable User context ingestion
This MR intends to solve the problem mentioned in the ADR : home#52 (closed)
The changes here are to pass on the userId received in the execution context of airflow payload onto python sdk.
This enhancement allows to associate data ingestion activities with specific users, enabling better tracking and access control. Implemented using the x-on-behalf-of
header passed down while triggering the dags.
Related MRs (in the order of merge required) - 2. Python SDK: osdu/platform/system/sdks/common-python-sdk!121 (merged) 3. Ingestion Lib: osdu-ingestion-lib!53 (merged) 4. Airflow(this change): !61 (merged) 5. Csv Parser: osdu/platform/data-flow/ingestion/csv-parser/csv-parser!358 (merged)
Related change in workflow: ingestion-workflow!407 (merged), and os-core-common: osdu/platform/system/lib/core/os-core-common!165 (merged)
UserId is an optional requirement, when its not passed the existing flow shall be used, and we can pass the user information using x-on-behalf-of header.