apache-airflow-providers-microsoft-azure 10.5.1rc1__tar.gz → 11.0.0rc1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/PKG-INFO +41 -33
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/README.rst +34 -30
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/__init__.py +1 -1
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/get_provider_info.py +7 -1
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/asb.py +27 -15
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/msgraph.py +7 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/asb.py +3 -1
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/msgraph.py +14 -4
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/powerbi.py +4 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/pyproject.toml +7 -3
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/LICENSE +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/fs/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/fs/adls.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/adx.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/base_azure.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/batch.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/container_instance.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/container_registry.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/container_volume.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/cosmos.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/data_factory.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/data_lake.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/fileshare.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/powerbi.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/synapse.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/hooks/wasb.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/log/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/log/wasb_task_handler.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/adls.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/adx.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/batch.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/container_instances.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/cosmos.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/data_factory.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/synapse.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/operators/wasb_delete_blob.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/secrets/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/secrets/key_vault.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/sensors/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/sensors/cosmos.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/sensors/data_factory.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/sensors/msgraph.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/sensors/wasb.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/transfers/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/transfers/azure_blob_to_gcs.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/transfers/local_to_adls.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/transfers/local_to_wasb.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/transfers/oracle_to_azure_data_lake.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/transfers/s3_to_wasb.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/transfers/sftp_to_wasb.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/triggers/__init__.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/triggers/data_factory.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/triggers/msgraph.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/triggers/powerbi.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/triggers/wasb.py +0 -0
- {apache_airflow_providers_microsoft_azure-10.5.1rc1 → apache_airflow_providers_microsoft_azure-11.0.0rc1}/airflow/providers/microsoft/azure/utils.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: apache-airflow-providers-microsoft-azure
|
3
|
-
Version:
|
3
|
+
Version: 11.0.0rc1
|
4
4
|
Summary: Provider package apache-airflow-providers-microsoft-azure for Apache Airflow
|
5
5
|
Keywords: airflow-provider,microsoft.azure,airflow,integration
|
6
6
|
Author-email: Apache Software Foundation <dev@airflow.apache.org>
|
@@ -42,14 +42,18 @@ Requires-Dist: azure-storage-file-datalake>=12.9.1
|
|
42
42
|
Requires-Dist: azure-storage-file-share>=12.7.0
|
43
43
|
Requires-Dist: azure-synapse-artifacts>=0.17.0
|
44
44
|
Requires-Dist: azure-synapse-spark>=0.2.0
|
45
|
+
Requires-Dist: microsoft-kiota-abstractions<1.4.0
|
46
|
+
Requires-Dist: microsoft-kiota-http>=1.3.0,!=1.3.4
|
47
|
+
Requires-Dist: microsoft-kiota-serialization-json==1.0.0
|
48
|
+
Requires-Dist: microsoft-kiota-serialization-text==1.0.0
|
45
49
|
Requires-Dist: msgraph-core>=1.0.0
|
46
50
|
Requires-Dist: apache-airflow-providers-amazon ; extra == "amazon"
|
47
51
|
Requires-Dist: apache-airflow-providers-google ; extra == "google"
|
48
52
|
Requires-Dist: apache-airflow-providers-oracle ; extra == "oracle"
|
49
53
|
Requires-Dist: apache-airflow-providers-sftp ; extra == "sftp"
|
50
54
|
Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
|
51
|
-
Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
52
|
-
Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
55
|
+
Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0/changelog.html
|
56
|
+
Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0
|
53
57
|
Project-URL: Slack Chat, https://s.apache.org/airflow-slack
|
54
58
|
Project-URL: Source Code, https://github.com/apache/airflow
|
55
59
|
Project-URL: Twitter, https://twitter.com/ApacheAirflow
|
@@ -103,7 +107,7 @@ Provides-Extra: sftp
|
|
103
107
|
|
104
108
|
Package ``apache-airflow-providers-microsoft-azure``
|
105
109
|
|
106
|
-
Release: ``
|
110
|
+
Release: ``11.0.0.rc1``
|
107
111
|
|
108
112
|
|
109
113
|
`Microsoft Azure <https://azure.microsoft.com/>`__
|
@@ -116,7 +120,7 @@ This is a provider package for ``microsoft.azure`` provider. All classes for thi
|
|
116
120
|
are in ``airflow.providers.microsoft.azure`` python package.
|
117
121
|
|
118
122
|
You can find package information and changelog for the provider
|
119
|
-
in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
123
|
+
in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0/>`_.
|
120
124
|
|
121
125
|
Installation
|
122
126
|
------------
|
@@ -130,33 +134,37 @@ The package supports the following python versions: 3.9,3.10,3.11,3.12
|
|
130
134
|
Requirements
|
131
135
|
------------
|
132
136
|
|
133
|
-
|
134
|
-
PIP package
|
135
|
-
|
136
|
-
``apache-airflow``
|
137
|
-
``adlfs``
|
138
|
-
``azure-batch``
|
139
|
-
``azure-cosmos``
|
140
|
-
``azure-mgmt-cosmosdb``
|
141
|
-
``azure-datalake-store``
|
142
|
-
``azure-identity``
|
143
|
-
``azure-keyvault-secrets``
|
144
|
-
``azure-mgmt-datalake-store``
|
145
|
-
``azure-mgmt-resource``
|
146
|
-
``azure-storage-blob``
|
147
|
-
``azure-mgmt-storage``
|
148
|
-
``azure-storage-file-share``
|
149
|
-
``azure-servicebus``
|
150
|
-
``azure-synapse-spark``
|
151
|
-
``azure-synapse-artifacts``
|
152
|
-
``adal``
|
153
|
-
``azure-storage-file-datalake``
|
154
|
-
``azure-kusto-data``
|
155
|
-
``azure-mgmt-datafactory``
|
156
|
-
``azure-mgmt-containerregistry``
|
157
|
-
``azure-mgmt-containerinstance``
|
158
|
-
``msgraph-core``
|
159
|
-
|
137
|
+
====================================== ===================
|
138
|
+
PIP package Version required
|
139
|
+
====================================== ===================
|
140
|
+
``apache-airflow`` ``>=2.8.0``
|
141
|
+
``adlfs`` ``>=2023.10.0``
|
142
|
+
``azure-batch`` ``>=8.0.0``
|
143
|
+
``azure-cosmos`` ``>=4.6.0``
|
144
|
+
``azure-mgmt-cosmosdb`` ``>=3.0.0``
|
145
|
+
``azure-datalake-store`` ``>=0.0.45``
|
146
|
+
``azure-identity`` ``>=1.3.1``
|
147
|
+
``azure-keyvault-secrets`` ``>=4.1.0``
|
148
|
+
``azure-mgmt-datalake-store`` ``>=0.5.0``
|
149
|
+
``azure-mgmt-resource`` ``>=2.2.0``
|
150
|
+
``azure-storage-blob`` ``>=12.14.0``
|
151
|
+
``azure-mgmt-storage`` ``>=16.0.0``
|
152
|
+
``azure-storage-file-share`` ``>=12.7.0``
|
153
|
+
``azure-servicebus`` ``>=7.12.1``
|
154
|
+
``azure-synapse-spark`` ``>=0.2.0``
|
155
|
+
``azure-synapse-artifacts`` ``>=0.17.0``
|
156
|
+
``adal`` ``>=1.2.7``
|
157
|
+
``azure-storage-file-datalake`` ``>=12.9.1``
|
158
|
+
``azure-kusto-data`` ``>=4.1.0,!=4.6.0``
|
159
|
+
``azure-mgmt-datafactory`` ``>=2.0.0``
|
160
|
+
``azure-mgmt-containerregistry`` ``>=8.0.0``
|
161
|
+
``azure-mgmt-containerinstance`` ``>=10.1.0``
|
162
|
+
``msgraph-core`` ``>=1.0.0``
|
163
|
+
``microsoft-kiota-http`` ``>=1.3.0,!=1.3.4``
|
164
|
+
``microsoft-kiota-serialization-json`` ``==1.0.0``
|
165
|
+
``microsoft-kiota-serialization-text`` ``==1.0.0``
|
166
|
+
``microsoft-kiota-abstractions`` ``<1.4.0``
|
167
|
+
====================================== ===================
|
160
168
|
|
161
169
|
Cross provider package dependencies
|
162
170
|
-----------------------------------
|
@@ -181,4 +189,4 @@ Dependent package
|
|
181
189
|
==================================================================================================== ==========
|
182
190
|
|
183
191
|
The changelog for the provider package can be found in the
|
184
|
-
`changelog <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
192
|
+
`changelog <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0/changelog.html>`_.
|
@@ -42,7 +42,7 @@
|
|
42
42
|
|
43
43
|
Package ``apache-airflow-providers-microsoft-azure``
|
44
44
|
|
45
|
-
Release: ``
|
45
|
+
Release: ``11.0.0.rc1``
|
46
46
|
|
47
47
|
|
48
48
|
`Microsoft Azure <https://azure.microsoft.com/>`__
|
@@ -55,7 +55,7 @@ This is a provider package for ``microsoft.azure`` provider. All classes for thi
|
|
55
55
|
are in ``airflow.providers.microsoft.azure`` python package.
|
56
56
|
|
57
57
|
You can find package information and changelog for the provider
|
58
|
-
in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
58
|
+
in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0/>`_.
|
59
59
|
|
60
60
|
Installation
|
61
61
|
------------
|
@@ -69,33 +69,37 @@ The package supports the following python versions: 3.9,3.10,3.11,3.12
|
|
69
69
|
Requirements
|
70
70
|
------------
|
71
71
|
|
72
|
-
|
73
|
-
PIP package
|
74
|
-
|
75
|
-
``apache-airflow``
|
76
|
-
``adlfs``
|
77
|
-
``azure-batch``
|
78
|
-
``azure-cosmos``
|
79
|
-
``azure-mgmt-cosmosdb``
|
80
|
-
``azure-datalake-store``
|
81
|
-
``azure-identity``
|
82
|
-
``azure-keyvault-secrets``
|
83
|
-
``azure-mgmt-datalake-store``
|
84
|
-
``azure-mgmt-resource``
|
85
|
-
``azure-storage-blob``
|
86
|
-
``azure-mgmt-storage``
|
87
|
-
``azure-storage-file-share``
|
88
|
-
``azure-servicebus``
|
89
|
-
``azure-synapse-spark``
|
90
|
-
``azure-synapse-artifacts``
|
91
|
-
``adal``
|
92
|
-
``azure-storage-file-datalake``
|
93
|
-
``azure-kusto-data``
|
94
|
-
``azure-mgmt-datafactory``
|
95
|
-
``azure-mgmt-containerregistry``
|
96
|
-
``azure-mgmt-containerinstance``
|
97
|
-
``msgraph-core``
|
98
|
-
|
72
|
+
====================================== ===================
|
73
|
+
PIP package Version required
|
74
|
+
====================================== ===================
|
75
|
+
``apache-airflow`` ``>=2.8.0``
|
76
|
+
``adlfs`` ``>=2023.10.0``
|
77
|
+
``azure-batch`` ``>=8.0.0``
|
78
|
+
``azure-cosmos`` ``>=4.6.0``
|
79
|
+
``azure-mgmt-cosmosdb`` ``>=3.0.0``
|
80
|
+
``azure-datalake-store`` ``>=0.0.45``
|
81
|
+
``azure-identity`` ``>=1.3.1``
|
82
|
+
``azure-keyvault-secrets`` ``>=4.1.0``
|
83
|
+
``azure-mgmt-datalake-store`` ``>=0.5.0``
|
84
|
+
``azure-mgmt-resource`` ``>=2.2.0``
|
85
|
+
``azure-storage-blob`` ``>=12.14.0``
|
86
|
+
``azure-mgmt-storage`` ``>=16.0.0``
|
87
|
+
``azure-storage-file-share`` ``>=12.7.0``
|
88
|
+
``azure-servicebus`` ``>=7.12.1``
|
89
|
+
``azure-synapse-spark`` ``>=0.2.0``
|
90
|
+
``azure-synapse-artifacts`` ``>=0.17.0``
|
91
|
+
``adal`` ``>=1.2.7``
|
92
|
+
``azure-storage-file-datalake`` ``>=12.9.1``
|
93
|
+
``azure-kusto-data`` ``>=4.1.0,!=4.6.0``
|
94
|
+
``azure-mgmt-datafactory`` ``>=2.0.0``
|
95
|
+
``azure-mgmt-containerregistry`` ``>=8.0.0``
|
96
|
+
``azure-mgmt-containerinstance`` ``>=10.1.0``
|
97
|
+
``msgraph-core`` ``>=1.0.0``
|
98
|
+
``microsoft-kiota-http`` ``>=1.3.0,!=1.3.4``
|
99
|
+
``microsoft-kiota-serialization-json`` ``==1.0.0``
|
100
|
+
``microsoft-kiota-serialization-text`` ``==1.0.0``
|
101
|
+
``microsoft-kiota-abstractions`` ``<1.4.0``
|
102
|
+
====================================== ===================
|
99
103
|
|
100
104
|
Cross provider package dependencies
|
101
105
|
-----------------------------------
|
@@ -120,4 +124,4 @@ Dependent package
|
|
120
124
|
==================================================================================================== ==========
|
121
125
|
|
122
126
|
The changelog for the provider package can be found in the
|
123
|
-
`changelog <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
127
|
+
`changelog <https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0/changelog.html>`_.
|
@@ -29,7 +29,7 @@ from airflow import __version__ as airflow_version
|
|
29
29
|
|
30
30
|
__all__ = ["__version__"]
|
31
31
|
|
32
|
-
__version__ = "
|
32
|
+
__version__ = "11.0.0"
|
33
33
|
|
34
34
|
if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
|
35
35
|
"2.8.0"
|
@@ -28,8 +28,9 @@ def get_provider_info():
|
|
28
28
|
"name": "Microsoft Azure",
|
29
29
|
"description": "`Microsoft Azure <https://azure.microsoft.com/>`__\n",
|
30
30
|
"state": "ready",
|
31
|
-
"source-date-epoch":
|
31
|
+
"source-date-epoch": 1730013072,
|
32
32
|
"versions": [
|
33
|
+
"11.0.0",
|
33
34
|
"10.5.1",
|
34
35
|
"10.5.0",
|
35
36
|
"10.4.0",
|
@@ -114,6 +115,10 @@ def get_provider_info():
|
|
114
115
|
"azure-mgmt-containerregistry>=8.0.0",
|
115
116
|
"azure-mgmt-containerinstance>=10.1.0",
|
116
117
|
"msgraph-core>=1.0.0",
|
118
|
+
"microsoft-kiota-http>=1.3.0,!=1.3.4",
|
119
|
+
"microsoft-kiota-serialization-json==1.0.0",
|
120
|
+
"microsoft-kiota-serialization-text==1.0.0",
|
121
|
+
"microsoft-kiota-abstractions<1.4.0",
|
117
122
|
],
|
118
123
|
"devel-dependencies": ["pywinrm"],
|
119
124
|
"integrations": [
|
@@ -213,6 +218,7 @@ def get_provider_info():
|
|
213
218
|
{
|
214
219
|
"integration-name": "Microsoft Power BI",
|
215
220
|
"external-doc-url": "https://learn.microsoft.com/en-us/rest/api/power-bi/",
|
221
|
+
"how-to-guide": ["/docs/apache-airflow-providers-microsoft-azure/operators/powerbi.rst"],
|
216
222
|
"tags": ["azure"],
|
217
223
|
},
|
218
224
|
],
|
@@ -34,12 +34,13 @@ from airflow.providers.microsoft.azure.utils import (
|
|
34
34
|
get_sync_default_azure_credential,
|
35
35
|
)
|
36
36
|
|
37
|
-
MessageCallback = Callable[[ServiceBusMessage], None]
|
38
|
-
|
39
|
-
|
40
37
|
if TYPE_CHECKING:
|
41
38
|
from azure.identity import DefaultAzureCredential
|
42
39
|
|
40
|
+
from airflow.utils.context import Context
|
41
|
+
|
42
|
+
MessageCallback = Callable[[ServiceBusMessage, Context], None]
|
43
|
+
|
43
44
|
|
44
45
|
class BaseAzureServiceBusHook(BaseHook):
|
45
46
|
"""
|
@@ -251,9 +252,11 @@ class MessageHook(BaseAzureServiceBusHook):
|
|
251
252
|
raise TypeError("Queue name cannot be None.")
|
252
253
|
if not messages:
|
253
254
|
raise ValueError("Messages list cannot be empty.")
|
254
|
-
with
|
255
|
-
|
256
|
-
|
255
|
+
with (
|
256
|
+
self.get_conn() as service_bus_client,
|
257
|
+
service_bus_client.get_queue_sender(queue_name=queue_name) as sender,
|
258
|
+
sender,
|
259
|
+
):
|
257
260
|
if isinstance(messages, str):
|
258
261
|
if not batch_message_flag:
|
259
262
|
msg = ServiceBusMessage(messages)
|
@@ -281,6 +284,7 @@ class MessageHook(BaseAzureServiceBusHook):
|
|
281
284
|
def receive_message(
|
282
285
|
self,
|
283
286
|
queue_name: str,
|
287
|
+
context: Context,
|
284
288
|
max_message_count: int | None = 1,
|
285
289
|
max_wait_time: float | None = None,
|
286
290
|
message_callback: MessageCallback | None = None,
|
@@ -298,19 +302,22 @@ class MessageHook(BaseAzureServiceBusHook):
|
|
298
302
|
if queue_name is None:
|
299
303
|
raise TypeError("Queue name cannot be None.")
|
300
304
|
|
301
|
-
with
|
302
|
-
|
303
|
-
|
305
|
+
with (
|
306
|
+
self.get_conn() as service_bus_client,
|
307
|
+
service_bus_client.get_queue_receiver(queue_name=queue_name) as receiver,
|
308
|
+
receiver,
|
309
|
+
):
|
304
310
|
received_msgs = receiver.receive_messages(
|
305
311
|
max_message_count=max_message_count, max_wait_time=max_wait_time
|
306
312
|
)
|
307
313
|
for msg in received_msgs:
|
308
|
-
self._process_message(msg, message_callback, receiver)
|
314
|
+
self._process_message(msg, context, message_callback, receiver)
|
309
315
|
|
310
316
|
def receive_subscription_message(
|
311
317
|
self,
|
312
318
|
topic_name: str,
|
313
319
|
subscription_name: str,
|
320
|
+
context: Context,
|
314
321
|
max_message_count: int | None,
|
315
322
|
max_wait_time: float | None,
|
316
323
|
message_callback: MessageCallback | None = None,
|
@@ -335,18 +342,23 @@ class MessageHook(BaseAzureServiceBusHook):
|
|
335
342
|
raise TypeError("Subscription name cannot be None.")
|
336
343
|
if topic_name is None:
|
337
344
|
raise TypeError("Topic name cannot be None.")
|
338
|
-
with
|
339
|
-
|
340
|
-
|
345
|
+
with (
|
346
|
+
self.get_conn() as service_bus_client,
|
347
|
+
service_bus_client.get_subscription_receiver(
|
348
|
+
topic_name, subscription_name
|
349
|
+
) as subscription_receiver,
|
350
|
+
subscription_receiver,
|
351
|
+
):
|
341
352
|
received_msgs = subscription_receiver.receive_messages(
|
342
353
|
max_message_count=max_message_count, max_wait_time=max_wait_time
|
343
354
|
)
|
344
355
|
for msg in received_msgs:
|
345
|
-
self._process_message(msg, message_callback, subscription_receiver)
|
356
|
+
self._process_message(msg, context, message_callback, subscription_receiver)
|
346
357
|
|
347
358
|
def _process_message(
|
348
359
|
self,
|
349
360
|
msg: ServiceBusReceivedMessage,
|
361
|
+
context: Context,
|
350
362
|
message_callback: MessageCallback | None,
|
351
363
|
receiver: ServiceBusReceiver,
|
352
364
|
):
|
@@ -364,7 +376,7 @@ class MessageHook(BaseAzureServiceBusHook):
|
|
364
376
|
receiver.complete_message(msg)
|
365
377
|
else:
|
366
378
|
try:
|
367
|
-
message_callback(msg)
|
379
|
+
message_callback(msg, context)
|
368
380
|
except Exception as e:
|
369
381
|
self.log.error("Error processing message: %s", e)
|
370
382
|
receiver.abandon_message(msg)
|
@@ -32,11 +32,14 @@ from kiota_abstractions.api_error import APIError
|
|
32
32
|
from kiota_abstractions.method import Method
|
33
33
|
from kiota_abstractions.request_information import RequestInformation
|
34
34
|
from kiota_abstractions.response_handler import ResponseHandler
|
35
|
+
from kiota_abstractions.serialization import ParseNodeFactoryRegistry
|
35
36
|
from kiota_authentication_azure.azure_identity_authentication_provider import (
|
36
37
|
AzureIdentityAuthenticationProvider,
|
37
38
|
)
|
38
39
|
from kiota_http.httpx_request_adapter import HttpxRequestAdapter
|
39
40
|
from kiota_http.middleware.options import ResponseHandlerOption
|
41
|
+
from kiota_serialization_json.json_parse_node_factory import JsonParseNodeFactory
|
42
|
+
from kiota_serialization_text.text_parse_node_factory import TextParseNodeFactory
|
40
43
|
from msgraph_core import APIVersion, GraphClientFactory
|
41
44
|
from msgraph_core._enums import NationalClouds
|
42
45
|
|
@@ -249,8 +252,12 @@ class KiotaRequestAdapterHook(BaseHook):
|
|
249
252
|
scopes=scopes,
|
250
253
|
allowed_hosts=allowed_hosts,
|
251
254
|
)
|
255
|
+
parse_node_factory = ParseNodeFactoryRegistry()
|
256
|
+
parse_node_factory.CONTENT_TYPE_ASSOCIATED_FACTORIES["text/plain"] = TextParseNodeFactory()
|
257
|
+
parse_node_factory.CONTENT_TYPE_ASSOCIATED_FACTORIES["application/json"] = JsonParseNodeFactory()
|
252
258
|
request_adapter = HttpxRequestAdapter(
|
253
259
|
authentication_provider=auth_provider,
|
260
|
+
parse_node_factory=parse_node_factory,
|
254
261
|
http_client=http_client,
|
255
262
|
base_url=base_url,
|
256
263
|
)
|
@@ -31,7 +31,7 @@ if TYPE_CHECKING:
|
|
31
31
|
|
32
32
|
from airflow.utils.context import Context
|
33
33
|
|
34
|
-
MessageCallback = Callable[[ServiceBusMessage], None]
|
34
|
+
MessageCallback = Callable[[ServiceBusMessage, Context], None]
|
35
35
|
|
36
36
|
|
37
37
|
class AzureServiceBusCreateQueueOperator(BaseOperator):
|
@@ -176,6 +176,7 @@ class AzureServiceBusReceiveMessageOperator(BaseOperator):
|
|
176
176
|
# Receive message
|
177
177
|
hook.receive_message(
|
178
178
|
self.queue_name,
|
179
|
+
context,
|
179
180
|
max_message_count=self.max_message_count,
|
180
181
|
max_wait_time=self.max_wait_time,
|
181
182
|
message_callback=self.message_callback,
|
@@ -562,6 +563,7 @@ class ASBReceiveSubscriptionMessageOperator(BaseOperator):
|
|
562
563
|
hook.receive_subscription_message(
|
563
564
|
self.topic_name,
|
564
565
|
self.subscription_name,
|
566
|
+
context,
|
565
567
|
self.max_message_count,
|
566
568
|
self.max_wait_time,
|
567
569
|
message_callback=self.message_callback,
|
@@ -44,6 +44,14 @@ if TYPE_CHECKING:
|
|
44
44
|
from airflow.utils.context import Context
|
45
45
|
|
46
46
|
|
47
|
+
def default_event_handler(context: Context, event: dict[Any, Any] | None = None) -> Any:
|
48
|
+
if event:
|
49
|
+
if event.get("status") == "failure":
|
50
|
+
raise AirflowException(event.get("message"))
|
51
|
+
|
52
|
+
return event.get("response")
|
53
|
+
|
54
|
+
|
47
55
|
class MSGraphAsyncOperator(BaseOperator):
|
48
56
|
"""
|
49
57
|
A Microsoft Graph API operator which allows you to execute REST call to the Microsoft Graph API.
|
@@ -69,6 +77,9 @@ class MSGraphAsyncOperator(BaseOperator):
|
|
69
77
|
:param result_processor: Function to further process the response from MS Graph API
|
70
78
|
(default is lambda: context, response: response). When the response returned by the
|
71
79
|
`KiotaRequestAdapterHook` are bytes, then those will be base64 encoded into a string.
|
80
|
+
:param event_handler: Function to process the event returned from `MSGraphTrigger`. By default, when the
|
81
|
+
event returned by the `MSGraphTrigger` has a failed status, an AirflowException is being raised with
|
82
|
+
the message from the event, otherwise the response from the event payload is returned.
|
72
83
|
:param serializer: Class which handles response serialization (default is ResponseSerializer).
|
73
84
|
Bytes will be base64 encoded into a string, so it can be stored as an XCom.
|
74
85
|
"""
|
@@ -102,6 +113,7 @@ class MSGraphAsyncOperator(BaseOperator):
|
|
102
113
|
api_version: APIVersion | str | None = None,
|
103
114
|
pagination_function: Callable[[MSGraphAsyncOperator, dict, Context], tuple[str, dict]] | None = None,
|
104
115
|
result_processor: Callable[[Context, Any], Any] = lambda context, result: result,
|
116
|
+
event_handler: Callable[[Context, dict[Any, Any] | None], Any] | None = None,
|
105
117
|
serializer: type[ResponseSerializer] = ResponseSerializer,
|
106
118
|
**kwargs: Any,
|
107
119
|
):
|
@@ -121,6 +133,7 @@ class MSGraphAsyncOperator(BaseOperator):
|
|
121
133
|
self.api_version = api_version
|
122
134
|
self.pagination_function = pagination_function or self.paginate
|
123
135
|
self.result_processor = result_processor
|
136
|
+
self.event_handler = event_handler or default_event_handler
|
124
137
|
self.serializer: ResponseSerializer = serializer()
|
125
138
|
|
126
139
|
def execute(self, context: Context) -> None:
|
@@ -158,10 +171,7 @@ class MSGraphAsyncOperator(BaseOperator):
|
|
158
171
|
if event:
|
159
172
|
self.log.debug("%s completed with %s: %s", self.task_id, event.get("status"), event)
|
160
173
|
|
161
|
-
|
162
|
-
raise AirflowException(event.get("message"))
|
163
|
-
|
164
|
-
response = event.get("response")
|
174
|
+
response = self.event_handler(context, event)
|
165
175
|
|
166
176
|
self.log.debug("response: %s", response)
|
167
177
|
|
@@ -52,6 +52,10 @@ class PowerBIDatasetRefreshOperator(BaseOperator):
|
|
52
52
|
"""
|
53
53
|
Refreshes a Power BI dataset.
|
54
54
|
|
55
|
+
.. seealso::
|
56
|
+
For more information on how to use this operator, take a look at the guide:
|
57
|
+
:ref:`howto/operator:PowerBIDatasetRefreshOperator`
|
58
|
+
|
55
59
|
:param dataset_id: The dataset id.
|
56
60
|
:param group_id: The workspace id.
|
57
61
|
:param conn_id: Airflow Connection ID that contains the connection information for the Power BI account used for authentication.
|
@@ -28,7 +28,7 @@ build-backend = "flit_core.buildapi"
|
|
28
28
|
|
29
29
|
[project]
|
30
30
|
name = "apache-airflow-providers-microsoft-azure"
|
31
|
-
version = "
|
31
|
+
version = "11.0.0.rc1"
|
32
32
|
description = "Provider package apache-airflow-providers-microsoft-azure for Apache Airflow"
|
33
33
|
readme = "README.rst"
|
34
34
|
authors = [
|
@@ -77,12 +77,16 @@ dependencies = [
|
|
77
77
|
"azure-storage-file-share>=12.7.0",
|
78
78
|
"azure-synapse-artifacts>=0.17.0",
|
79
79
|
"azure-synapse-spark>=0.2.0",
|
80
|
+
"microsoft-kiota-abstractions<1.4.0",
|
81
|
+
"microsoft-kiota-http>=1.3.0,!=1.3.4",
|
82
|
+
"microsoft-kiota-serialization-json==1.0.0",
|
83
|
+
"microsoft-kiota-serialization-text==1.0.0",
|
80
84
|
"msgraph-core>=1.0.0",
|
81
85
|
]
|
82
86
|
|
83
87
|
[project.urls]
|
84
|
-
"Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
85
|
-
"Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/
|
88
|
+
"Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0"
|
89
|
+
"Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-microsoft-azure/11.0.0/changelog.html"
|
86
90
|
"Bug Tracker" = "https://github.com/apache/airflow/issues"
|
87
91
|
"Source Code" = "https://github.com/apache/airflow"
|
88
92
|
"Slack Chat" = "https://s.apache.org/airflow-slack"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|