feat(provider/azure): Add Power BI triggers, operators and tests for dataset and workspace operations#50001
feat(provider/azure): Add Power BI triggers, operators and tests for dataset and workspace operations#50001potiuk merged 2 commits intoapache:mainfrom
Conversation
|
ok i redid the rebase locally and pushed it again, sadly that closed the last PR @jscheffl but thanks for pointing it out, not sure what went wrong there |
eb1861f to
cd5dd65
Compare
|
cc: @ambika-garg -> can you take a look please ? |
1ea5e83 to
2bb40a8
Compare
|
reviewed the code, it looks good to me. Let me know if you'd like me to review anything specific. |
dcf03ed to
99cd0a3
Compare
813c6a3 to
3b8cb8c
Compare
|
fixed the db test issues, was passing an extra argument that i removed from the examples in system tests |
providers/microsoft/azure/src/airflow/providers/microsoft/azure/operators/powerbi.py
Show resolved
Hide resolved
providers/microsoft/azure/src/airflow/providers/microsoft/azure/operators/powerbi.py
Outdated
Show resolved
Hide resolved
providers/microsoft/azure/src/airflow/providers/microsoft/azure/operators/powerbi.py
Outdated
Show resolved
Hide resolved
providers/microsoft/azure/src/airflow/providers/microsoft/azure/operators/powerbi.py
Show resolved
Hide resolved
|
@mvfc overall LGTM, few nits. |
thanks for the review and comments, will resolve asap :-) |
08c5455 to
fee8cb2
Compare
|
all resolved, all tests passed |
|
@ambika-garg uff there had been many changes, can you re-review? I am not an expert but before merge would like to have some expert view on this. Due to re-base I can not see the DIFF to before :-( |
my bad, still new and getting used to this rebase thing |
providers/microsoft/azure/src/airflow/providers/microsoft/azure/triggers/powerbi.py
Show resolved
Hide resolved
providers/microsoft/azure/src/airflow/providers/microsoft/azure/triggers/powerbi.py
Show resolved
Hide resolved
|
Just two nits, rest LGTM. |
a96e90a to
2b13400
Compare
…ors and triggers - Introduce PowerBIWorkspaceListOperator and PowerBIDatasetListOperator that defer using triggers - Implement PowerBIWorkspaceListTrigger and PowerBIDatasetListTrigger for async polling of list endpoints - Hook into the Microsoft Graph API via new async methods on PowerBIHook (get_workspace_list, get_dataset_list) - Add XCom support in execute_complete callbacks for both operators - Include unit tests covering deferral, trigger serialization, run logic, and operator resume paths - Update docs: operator HOWTO for PowerBI workspace/dataset listing
gopidesupavan
left a comment
There was a problem hiding this comment.
Good work, thanks for the changes.
Thanks. Thanks for the help and sharp eye. |
Description
This PR introduces deferrable versions of the Power BI workspace- and dataset-list operators in the Azure provider package. Instead of blocking a worker slot while calling the Power BI REST API, these operators now:
BaseTriggerimplementationsNew Hook methods
PowerBIHook.get_workspace_list()PowerBIHook.get_dataset_list(group_id: str)New Trigger classes
PowerBIWorkspaceListTriggerPowerBIDatasetListTriggerNew Operator classes
PowerBIWorkspaceListOperatorPowerBIDatasetListOperatorUnit tests
serialize())TaskDeferred)execute_complete)Motivation and Context
Long-running or paginated API calls can occupy a worker slot for tens of seconds or more, limiting concurrency and throughput. By deferring:
This change complements existing synchronous operators; it does not remove or alter any blocking behavior, giving users the choice.
How Has This Been Tested?
tests/providers/microsoft/azure/covering all new code paths.Documentation
howto/operator:PowerBIWorkspaceListOperatorandhowto/operator:PowerBIDatasetListOperatorpages.Backwards-Incompatible Changes?
No. Existing synchronous
PowerBIHookmethods and operators remain unchanged and fully supported.New Dependencies?
None. All new code relies on existing Airflow and Azure provider infrastructure.