apache-airflow-providers-zendesk 4.9.1rc1__tar.gz → 4.10.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.
Files changed (28) hide show
  1. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/PKG-INFO +9 -9
  2. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/README.rst +4 -4
  3. apache_airflow_providers_zendesk-4.10.0rc1/docs/.latest-doc-only-change.txt +1 -0
  4. apache_airflow_providers_zendesk-4.10.0rc1/docs/changelog.rst +397 -0
  5. apache_airflow_providers_zendesk-4.10.0rc1/docs/commits.rst +35 -0
  6. apache_airflow_providers_zendesk-4.10.0rc1/docs/conf.py +27 -0
  7. apache_airflow_providers_zendesk-4.10.0rc1/docs/connections.rst +39 -0
  8. apache_airflow_providers_zendesk-4.10.0rc1/docs/index.rst +104 -0
  9. apache_airflow_providers_zendesk-4.10.0rc1/docs/installing-providers-from-sources.rst +18 -0
  10. apache_airflow_providers_zendesk-4.10.0rc1/docs/integration-logos/Zendesk.png +0 -0
  11. apache_airflow_providers_zendesk-4.10.0rc1/docs/security.rst +18 -0
  12. apache_airflow_providers_zendesk-4.10.0rc1/provider.yaml +68 -0
  13. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/pyproject.toml +22 -7
  14. apache_airflow_providers_zendesk-4.10.0rc1/src/airflow/__init__.py +17 -0
  15. apache_airflow_providers_zendesk-4.10.0rc1/src/airflow/providers/__init__.py +17 -0
  16. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/src/airflow/providers/zendesk/__init__.py +3 -3
  17. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/src/airflow/providers/zendesk/get_provider_info.py +0 -28
  18. apache_airflow_providers_zendesk-4.10.0rc1/tests/conftest.py +19 -0
  19. apache_airflow_providers_zendesk-4.10.0rc1/tests/system/__init__.py +17 -0
  20. apache_airflow_providers_zendesk-4.10.0rc1/tests/system/zendesk/__init__.py +16 -0
  21. apache_airflow_providers_zendesk-4.10.0rc1/tests/system/zendesk/example_zendesk_custom_get.py +51 -0
  22. apache_airflow_providers_zendesk-4.10.0rc1/tests/unit/__init__.py +17 -0
  23. apache_airflow_providers_zendesk-4.10.0rc1/tests/unit/zendesk/__init__.py +16 -0
  24. apache_airflow_providers_zendesk-4.10.0rc1/tests/unit/zendesk/hooks/__init__.py +16 -0
  25. apache_airflow_providers_zendesk-4.10.0rc1/tests/unit/zendesk/hooks/test_zendesk.py +88 -0
  26. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/src/airflow/providers/zendesk/LICENSE +0 -0
  27. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/src/airflow/providers/zendesk/hooks/__init__.py +0 -0
  28. {apache_airflow_providers_zendesk-4.9.1rc1 → apache_airflow_providers_zendesk-4.10.0rc1}/src/airflow/providers/zendesk/hooks/zendesk.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: apache-airflow-providers-zendesk
3
- Version: 4.9.1rc1
3
+ Version: 4.10.0rc1
4
4
  Summary: Provider package apache-airflow-providers-zendesk for Apache Airflow
5
5
  Keywords: airflow-provider,zendesk,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -20,14 +20,14 @@ Classifier: Programming Language :: Python :: 3.10
20
20
  Classifier: Programming Language :: Python :: 3.11
21
21
  Classifier: Programming Language :: Python :: 3.12
22
22
  Classifier: Topic :: System :: Monitoring
23
- Requires-Dist: apache-airflow>=2.9.0rc0
23
+ Requires-Dist: apache-airflow>=2.10.0rc1
24
24
  Requires-Dist: zenpy>=2.0.40
25
25
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
26
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1/changelog.html
27
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1
26
+ Project-URL: Changelog, https://airflow.staged.apache.org/docs/apache-airflow-providers-zendesk/4.10.0/changelog.html
27
+ Project-URL: Documentation, https://airflow.staged.apache.org/docs/apache-airflow-providers-zendesk/4.10.0
28
+ Project-URL: Mastodon, https://fosstodon.org/@airflow
28
29
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
29
30
  Project-URL: Source Code, https://github.com/apache/airflow
30
- Project-URL: Twitter, https://x.com/ApacheAirflow
31
31
  Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
32
32
 
33
33
 
@@ -55,7 +55,7 @@ Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
55
55
 
56
56
  Package ``apache-airflow-providers-zendesk``
57
57
 
58
- Release: ``4.9.1``
58
+ Release: ``4.10.0``
59
59
 
60
60
 
61
61
  `Zendesk <https://www.zendesk.com/>`__
@@ -68,7 +68,7 @@ This is a provider package for ``zendesk`` provider. All classes for this provid
68
68
  are in ``airflow.providers.zendesk`` python package.
69
69
 
70
70
  You can find package information and changelog for the provider
71
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1/>`_.
71
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.10.0/>`_.
72
72
 
73
73
  Installation
74
74
  ------------
@@ -85,10 +85,10 @@ Requirements
85
85
  ================== ==================
86
86
  PIP package Version required
87
87
  ================== ==================
88
- ``apache-airflow`` ``>=2.9.0``
88
+ ``apache-airflow`` ``>=2.10.0``
89
89
  ``zenpy`` ``>=2.0.40``
90
90
  ================== ==================
91
91
 
92
92
  The changelog for the provider package can be found in the
93
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1/changelog.html>`_.
93
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.10.0/changelog.html>`_.
94
94
 
@@ -23,7 +23,7 @@
23
23
 
24
24
  Package ``apache-airflow-providers-zendesk``
25
25
 
26
- Release: ``4.9.1``
26
+ Release: ``4.10.0``
27
27
 
28
28
 
29
29
  `Zendesk <https://www.zendesk.com/>`__
@@ -36,7 +36,7 @@ This is a provider package for ``zendesk`` provider. All classes for this provid
36
36
  are in ``airflow.providers.zendesk`` python package.
37
37
 
38
38
  You can find package information and changelog for the provider
39
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1/>`_.
39
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.10.0/>`_.
40
40
 
41
41
  Installation
42
42
  ------------
@@ -53,9 +53,9 @@ Requirements
53
53
  ================== ==================
54
54
  PIP package Version required
55
55
  ================== ==================
56
- ``apache-airflow`` ``>=2.9.0``
56
+ ``apache-airflow`` ``>=2.10.0``
57
57
  ``zenpy`` ``>=2.0.40``
58
58
  ================== ==================
59
59
 
60
60
  The changelog for the provider package can be found in the
61
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1/changelog.html>`_.
61
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.10.0/changelog.html>`_.
@@ -0,0 +1 @@
1
+ 7b2ec33c7ad4998d9c9735b79593fcdcd3b9dd1f
@@ -0,0 +1,397 @@
1
+ .. Licensed to the Apache Software Foundation (ASF) under one
2
+ or more contributor license agreements. See the NOTICE file
3
+ distributed with this work for additional information
4
+ regarding copyright ownership. The ASF licenses this file
5
+ to you under the Apache License, Version 2.0 (the
6
+ "License"); you may not use this file except in compliance
7
+ with the License. You may obtain a copy of the License at
8
+
9
+ .. http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ .. Unless required by applicable law or agreed to in writing,
12
+ software distributed under the License is distributed on an
13
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ KIND, either express or implied. See the License for the
15
+ specific language governing permissions and limitations
16
+ under the License.
17
+
18
+
19
+ .. NOTE TO CONTRIBUTORS:
20
+ Please, only add notes to the Changelog just below the "Changelog" header when there are some breaking changes
21
+ and you want to add an explanation to the users on how they are supposed to deal with them.
22
+ The changelog is updated and maintained semi-automatically by release manager.
23
+
24
+ ``apache-airflow-providers-zendesk``
25
+
26
+
27
+ Changelog
28
+ ---------
29
+
30
+ 4.10.0
31
+ ......
32
+
33
+ .. note::
34
+ This release of provider is only available for Airflow 2.10+ as explained in the
35
+ Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>_.
36
+
37
+ Misc
38
+ ~~~~
39
+
40
+ * ``Bump min Airflow version in providers to 2.10 (#49843)``
41
+
42
+ .. Below changes are excluded from the changelog. Move them to
43
+ appropriate section above if needed. Do not delete the lines(!):
44
+ * ``Update description of provider.yaml dependencies (#50231)``
45
+ * ``Avoid committing history for providers (#49907)``
46
+ * ``Prepare docs for Apr 2nd wave of providers (#49051)``
47
+ * ``Remove unnecessary entries in get_provider_info and update the schema (#48849)``
48
+ * ``Remove fab from preinstalled providers (#48457)``
49
+ * ``Improve documentation building iteration (#48760)``
50
+ * ``Prepare docs for Apr 1st wave of providers (#48828)``
51
+ * ``Simplify tooling by switching completely to uv (#48223)``
52
+ * ``Prepare docs for Mar 2nd wave of providers (#48383)``
53
+ * ``Upgrade providers flit build requirements to 3.12.0 (#48362)``
54
+ * ``Move airflow sources to airflow-core package (#47798)``
55
+ * ``Remove links to x/twitter.com (#47801)``
56
+
57
+ 4.9.1
58
+ .....
59
+
60
+ Misc
61
+ ~~~~
62
+
63
+ * ``Upgrade flit to 3.11.0 (#46938)``
64
+
65
+ .. Below changes are excluded from the changelog. Move them to
66
+ appropriate section above if needed. Do not delete the lines(!):
67
+ * ``Move tests_common package to devel-common project (#47281)``
68
+ * ``Improve documentation for updating provider dependencies (#47203)``
69
+ * ``Add legacy namespace packages to airflow.providers (#47064)``
70
+ * ``Remove extra whitespace in provider readme template (#46975)``
71
+ * ``Prepare docs for Feb 1st wave of providers (#46893)``
72
+ * ``Move provider_tests to unit folder in provider tests (#46800)``
73
+ * ``Removed the unused provider's distribution (#46608)``
74
+ * ``Fix doc issues found with recent moves (#46372)``
75
+ * ``Move Zendesk provider to new structure (#46047)``
76
+
77
+ 4.9.0
78
+ .....
79
+
80
+ .. note::
81
+ This release of provider is only available for Airflow 2.9+ as explained in the
82
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
83
+
84
+ Misc
85
+ ~~~~
86
+
87
+ * ``Bump minimum Airflow version in providers to Airflow 2.9.0 (#44956)``
88
+ * ``Update DAG example links in multiple providers documents (#44034)``
89
+
90
+
91
+ .. Below changes are excluded from the changelog. Move them to
92
+ appropriate section above if needed. Do not delete the lines(!):
93
+ * ``Prepare docs for Nov 1st wave of providers (#44011)``
94
+ * ``Split providers out of the main "airflow/" tree into a UV workspace project (#42505)``
95
+
96
+ .. Review and move the new changes to one of the sections above:
97
+ * ``Update path of example dags in docs (#45069)``
98
+
99
+ 4.8.0
100
+ .....
101
+
102
+ .. note::
103
+ This release of provider is only available for Airflow 2.8+ as explained in the
104
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
105
+
106
+ Misc
107
+ ~~~~
108
+
109
+ * ``Bump minimum Airflow version in providers to Airflow 2.8.0 (#41396)``
110
+
111
+
112
+ .. Below changes are excluded from the changelog. Move them to
113
+ appropriate section above if needed. Do not delete the lines(!):
114
+
115
+ 4.7.1
116
+ .....
117
+
118
+ Misc
119
+ ~~~~
120
+
121
+ * ``Faster 'airflow_version' imports (#39552)``
122
+ * ``Simplify 'airflow_version' imports (#39497)``
123
+
124
+ .. Below changes are excluded from the changelog. Move them to
125
+ appropriate section above if needed. Do not delete the lines(!):
126
+ * ``Reapply templates for all providers (#39554)``
127
+
128
+ 4.7.0
129
+ .....
130
+
131
+ .. note::
132
+ This release of provider is only available for Airflow 2.7+ as explained in the
133
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
134
+
135
+ Misc
136
+ ~~~~
137
+
138
+ * ``Bump minimum Airflow version in providers to Airflow 2.7.0 (#39240)``
139
+
140
+ .. Below changes are excluded from the changelog. Move them to
141
+ appropriate section above if needed. Do not delete the lines(!):
142
+ * ``Add comment about versions updated by release manager (#37488)``
143
+ * ``Add docs for RC2 wave of providers for 2nd round of Jan 2024 (#37019)``
144
+ * ``Prepare docs 1st wave (RC1) April 2024 (#38863)``
145
+ * ``Bumping minimum version of zenpy to 0.40 (#38110)``
146
+ * ``Prepare docs 1st wave (RC1) March 2024 (#37876)``
147
+ * ``Prepare docs 1st wave of Providers February 2024 (#37326)``
148
+ * ``Revert "Provide the logger_name param in providers hooks in order to override the logger name (#36675)" (#37015)``
149
+ * ``Prepare docs 2nd wave of Providers January 2024 (#36945)``
150
+ * ``Provide the logger_name param in providers hooks in order to override the logger name (#36675)``
151
+ * ``Prepare docs 1st wave of Providers January 2024 (#36640)``
152
+ * ``Speed up autocompletion of Breeze by simplifying provider state (#36499)``
153
+
154
+ 4.6.0
155
+ .....
156
+
157
+ Features
158
+ ~~~~~~~~
159
+
160
+ * ``Add docs about zendesk connection and creating dedicated connection form (#36423)``
161
+
162
+ .. Below changes are excluded from the changelog. Move them to
163
+ appropriate section above if needed. Do not delete the lines(!):
164
+ * ``Re-apply updated version numbers to 2nd wave of providers in December (#36380)``
165
+
166
+ 4.5.0
167
+ .....
168
+
169
+ .. note::
170
+ This release of provider is only available for Airflow 2.6+ as explained in the
171
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
172
+
173
+ Misc
174
+ ~~~~
175
+
176
+ * ``Bump minimum Airflow version in providers to Airflow 2.6.0 (#36017)``
177
+
178
+ .. Below changes are excluded from the changelog. Move them to
179
+ appropriate section above if needed. Do not delete the lines(!):
180
+ * ``Fix and reapply templates for provider documentation (#35686)``
181
+ * ``Prepare docs 3rd wave of Providers October 2023 - FIX (#35233)``
182
+ * ``Prepare docs 2nd wave of Providers November 2023 (#35836)``
183
+ * ``Use reproducible builds for providers (#35693)``
184
+ * ``Prepare docs 1st wave of Providers November 2023 (#35537)``
185
+ * ``Prepare docs 3rd wave of Providers October 2023 (#35187)``
186
+ * ``Pre-upgrade 'ruff==0.0.292' changes in providers (#35053)``
187
+
188
+ 4.4.0
189
+ .....
190
+
191
+ .. note::
192
+ This release of provider is only available for Airflow 2.5+ as explained in the
193
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
194
+
195
+ Misc
196
+ ~~~~
197
+
198
+ * ``Bump min airflow version of providers (#34728)``
199
+
200
+ 4.3.2
201
+ .....
202
+
203
+ Misc
204
+ ~~~~
205
+
206
+ * ``Improve modules import in Airflow providers by some of them into a type-checking block (#33754)``
207
+
208
+
209
+ .. Below changes are excluded from the changelog. Move them to
210
+ appropriate section above if needed. Do not delete the lines(!):
211
+ * ``Prepare docs for Aug 2023 3rd wave of Providers (#33730)``
212
+ * ``Prepare docs for Aug 2023 2nd wave of Providers (#33291)``
213
+ * ``Prepare docs for July 2023 wave of Providers (RC2) (#32381)``
214
+ * ``Remove spurious headers for provider changelogs (#32373)``
215
+ * ``Prepare docs for July 2023 wave of Providers (#32298)``
216
+ * ``Improve provider documentation and README structure (#32125)``
217
+
218
+ 4.3.1
219
+ .....
220
+
221
+ .. note::
222
+ This release dropped support for Python 3.7
223
+
224
+ Misc
225
+ ~~~~
226
+
227
+ * ``Add note about dropping Python 3.7 for providers (#32015)``
228
+
229
+ .. Below changes are excluded from the changelog. Move them to
230
+ appropriate section above if needed. Do not delete the lines(!):
231
+
232
+ 4.3.0
233
+ .....
234
+
235
+ .. note::
236
+ This release of provider is only available for Airflow 2.4+ as explained in the
237
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
238
+
239
+ Misc
240
+ ~~~~
241
+
242
+ * ``Bump minimum Airflow version in providers (#30917)``
243
+
244
+ .. Below changes are excluded from the changelog. Move them to
245
+ appropriate section above if needed. Do not delete the lines(!):
246
+ * ``Add full automation for min Airflow version for providers (#30994)``
247
+ * ``Add mechanism to suspend providers (#30422)``
248
+ * ``Use '__version__' in providers not 'version' (#31393)``
249
+ * ``Fixing circular import error in providers caused by airflow version check (#31379)``
250
+ * ``Prepare docs for May 2023 wave of Providers (#31252)``
251
+
252
+ 4.2.0
253
+ .....
254
+
255
+ Features
256
+ ~~~~~~~~
257
+
258
+ * ``Add Zendesk connection type (#27984)``
259
+
260
+ 4.1.0
261
+ .....
262
+
263
+ .. note::
264
+ This release of provider is only available for Airflow 2.3+ as explained in the
265
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
266
+
267
+ Misc
268
+ ~~~~
269
+
270
+ * ``Move min airflow version to 2.3.0 for all providers (#27196)``
271
+
272
+ Bug Fixes
273
+ ~~~~~~~~~
274
+
275
+ * ``fix zendesk change log (#27363)``
276
+
277
+ .. Below changes are excluded from the changelog. Move them to
278
+ appropriate section above if needed. Do not delete the lines(!):
279
+ * ``Add documentation for July 2022 Provider's release (#25030)``
280
+ * ``Enable string normalization in python formatting - providers (#27205)``
281
+ * ``Update docs for September Provider's release (#26731)``
282
+ * ``Apply PEP-563 (Postponed Evaluation of Annotations) to non-core airflow (#26289)``
283
+ * ``Prepare docs for new providers release (August 2022) (#25618)``
284
+ * ``Move provider dependencies to inside provider folders (#24672)``
285
+
286
+ 4.0.0
287
+ .....
288
+
289
+ Breaking changes
290
+ ~~~~~~~~~~~~~~~~
291
+
292
+ .. note::
293
+ This release of provider is only available for Airflow 2.2+ as explained in the
294
+ `Apache Airflow providers support policy <https://github.com/apache/airflow/blob/main/PROVIDERS.rst#minimum-supported-version-of-airflow-for-community-managed-providers>`_.
295
+
296
+ .. Below changes are excluded from the changelog. Move them to
297
+ appropriate section above if needed. Do not delete the lines(!):
298
+ * ``Add explanatory note for contributors about updating Changelog (#24229)``
299
+ * ``Migrate Zendesk example DAGs to new design #22471 (#24129)``
300
+ * ``Prepare docs for May 2022 provider's release (#24231)``
301
+ * ``Update package description to remove double min-airflow specification (#24292)``
302
+
303
+ 3.0.3
304
+ .....
305
+
306
+ Bug Fixes
307
+ ~~~~~~~~~
308
+
309
+ * ``Fix mistakenly added install_requires for all providers (#22382)``
310
+
311
+ 3.0.2
312
+ .....
313
+
314
+ Misc
315
+ ~~~~~
316
+
317
+ * ``Add Trove classifiers in PyPI (Framework :: Apache Airflow :: Provider)``
318
+
319
+ 3.0.1
320
+ .....
321
+
322
+ Misc
323
+ ~~~~
324
+
325
+ * ``Support for Python 3.10``
326
+ * ``Update Zendesk example DAG to use TaskFlow API (#21411)``
327
+
328
+ .. Below changes are excluded from the changelog. Move them to
329
+ appropriate section above if needed. Do not delete the lines(!):
330
+
331
+ 3.0.0
332
+ .....
333
+
334
+ Misc
335
+ ~~~~
336
+ ``ZendeskHook`` moved from using ``zdesk`` to ``zenpy`` package.
337
+
338
+ Breaking changes
339
+ ~~~~~~~~~~~~~~~~
340
+ Changed the return type of ``ZendeskHook.get_conn`` to return a ``zenpy.Zenpy`` object instead of a ``zdesk.Zendesk`` object.
341
+ Deleted the ``ZendeskHook.call``, alternatively you can use the ``ZendeskHook.get`` method to make custom get calls to Zendesk API.
342
+ ``Zendesk`` and ``ZendeskError`` classes are removed from ``airflow.hooks.zendesk_hook`` imports.
343
+
344
+ * ``Switch from zdesk to zenpy in ZendeskHook (#21349)``
345
+
346
+ .. Below changes are excluded from the changelog. Move them to
347
+ appropriate section above if needed. Do not delete the lines(!):
348
+ * ``Add documentation for January 2021 providers release (#21257)``
349
+ * ``Remove ':type' lines now sphinx-autoapi supports typehints (#20951)``
350
+
351
+ 2.0.1
352
+ .....
353
+
354
+ Misc
355
+ ~~~~
356
+
357
+ * ``Optimise connection importing for Airflow 2.2.0``
358
+
359
+
360
+ .. Below changes are excluded from the changelog. Move them to
361
+ appropriate section above if needed. Do not delete the lines(!):
362
+ * ``Prepares docs for Rc2 release of July providers (#17116)``
363
+ * ``Prepare documentation for July release of providers. (#17015)``
364
+ * ``Removes pylint from our toolchain (#16682)``
365
+
366
+ 2.0.0
367
+ .....
368
+
369
+ Breaking changes
370
+ ~~~~~~~~~~~~~~~~
371
+
372
+ * ``Auto-apply apply_default decorator (#15667)``
373
+
374
+ .. warning:: Due to apply_default decorator removal, this version of the provider requires Airflow 2.1.0+.
375
+ If your Airflow version is < 2.1.0, and you want to install this provider version, first upgrade
376
+ Airflow to at least version 2.1.0. Otherwise your Airflow package version will be upgraded
377
+ automatically and you will have to manually run ``airflow upgrade db`` to complete the migration.
378
+
379
+ .. Below changes are excluded from the changelog. Move them to
380
+ appropriate section above if needed. Do not delete the lines(!):
381
+ * ``Prepares provider release after PIP 21 compatibility (#15576)``
382
+ * ``Update Docstrings of Modules with Missing Params (#15391)``
383
+ * ``Remove Backport Providers (#14886)``
384
+ * ``Update documentation for broken package releases (#14734)``
385
+ * ``Updated documentation for June 2021 provider release (#16294)``
386
+ * ``More documentation update for June providers release (#16405)``
387
+ * ``Synchronizes updated changelog after buggfix release (#16464)``
388
+
389
+ 1.0.1
390
+ .....
391
+
392
+ Updated documentation and readme files.
393
+
394
+ 1.0.0
395
+ .....
396
+
397
+ Initial version of the provider.
@@ -0,0 +1,35 @@
1
+
2
+ .. Licensed to the Apache Software Foundation (ASF) under one
3
+ or more contributor license agreements. See the NOTICE file
4
+ distributed with this work for additional information
5
+ regarding copyright ownership. The ASF licenses this file
6
+ to you under the Apache License, Version 2.0 (the
7
+ "License"); you may not use this file except in compliance
8
+ with the License. You may obtain a copy of the License at
9
+
10
+ .. http://www.apache.org/licenses/LICENSE-2.0
11
+
12
+ .. Unless required by applicable law or agreed to in writing,
13
+ software distributed under the License is distributed on an
14
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ KIND, either express or implied. See the License for the
16
+ specific language governing permissions and limitations
17
+ under the License.
18
+
19
+ .. NOTE! THIS FILE IS AUTOMATICALLY GENERATED AND WILL BE OVERWRITTEN!
20
+
21
+ .. IF YOU WANT TO MODIFY THIS FILE, YOU SHOULD MODIFY THE TEMPLATE
22
+ `PROVIDER_COMMITS_TEMPLATE.rst.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
23
+
24
+ .. THE REMAINDER OF THE FILE IS AUTOMATICALLY GENERATED. IT WILL BE OVERWRITTEN!
25
+
26
+ Package apache-airflow-providers-zendesk
27
+ ------------------------------------------------------
28
+
29
+ `Zendesk <https://www.zendesk.com/>`__
30
+
31
+
32
+ This is detailed commit list of changes for versions provider package: ``zendesk``.
33
+ For high-level changelog, see :doc:`package information including changelog <index>`.
34
+
35
+ .. airflow-providers-commits::
@@ -0,0 +1,27 @@
1
+ # Disable Flake8 because of all the sphinx imports
2
+ #
3
+ # Licensed to the Apache Software Foundation (ASF) under one
4
+ # or more contributor license agreements. See the NOTICE file
5
+ # distributed with this work for additional information
6
+ # regarding copyright ownership. The ASF licenses this file
7
+ # to you under the Apache License, Version 2.0 (the
8
+ # "License"); you may not use this file except in compliance
9
+ # with the License. You may obtain a copy of the License at
10
+ #
11
+ # http://www.apache.org/licenses/LICENSE-2.0
12
+ #
13
+ # Unless required by applicable law or agreed to in writing,
14
+ # software distributed under the License is distributed on an
15
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16
+ # KIND, either express or implied. See the License for the
17
+ # specific language governing permissions and limitations
18
+ # under the License.
19
+ """Configuration of Providers docs building."""
20
+
21
+ from __future__ import annotations
22
+
23
+ import os
24
+
25
+ os.environ["AIRFLOW_PACKAGE_NAME"] = "apache-airflow-providers-zendesk"
26
+
27
+ from docs.provider_conf import * # noqa: F403
@@ -0,0 +1,39 @@
1
+ .. Licensed to the Apache Software Foundation (ASF) under one
2
+ or more contributor license agreements. See the NOTICE file
3
+ distributed with this work for additional information
4
+ regarding copyright ownership. The ASF licenses this file
5
+ to you under the Apache License, Version 2.0 (the
6
+ "License"); you may not use this file except in compliance
7
+ with the License. You may obtain a copy of the License at
8
+
9
+ .. http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ .. Unless required by applicable law or agreed to in writing,
12
+ software distributed under the License is distributed on an
13
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ KIND, either express or implied. See the License for the
15
+ specific language governing permissions and limitations
16
+ under the License.
17
+
18
+ Zendesk Connection
19
+ =========================
20
+
21
+ The Zendesk connection type enables connection to Zendesk.
22
+
23
+ Default Connection IDs
24
+ ----------------------
25
+
26
+ Zendesk Hook uses parameter ``zendesk_conn_id`` for Connection IDs and the value of the
27
+ parameter as ``zendesk_default`` by default.
28
+
29
+ Configuring the Connection
30
+ --------------------------
31
+ Zendesk domain
32
+ The domain of the Zendesk cluster (should be without scheme).
33
+ The domain field can contain the subdomain with a dot as delimiter between the domain and subdomain.
34
+
35
+ Zendesk email
36
+ The email that will be used for authentication against the Zendesk API.
37
+
38
+ Password
39
+ The password corresponding to the email that will be used for authentication against the Zendesk API.
@@ -0,0 +1,104 @@
1
+
2
+ .. Licensed to the Apache Software Foundation (ASF) under one
3
+ or more contributor license agreements. See the NOTICE file
4
+ distributed with this work for additional information
5
+ regarding copyright ownership. The ASF licenses this file
6
+ to you under the Apache License, Version 2.0 (the
7
+ "License"); you may not use this file except in compliance
8
+ with the License. You may obtain a copy of the License at
9
+
10
+ .. http://www.apache.org/licenses/LICENSE-2.0
11
+
12
+ .. Unless required by applicable law or agreed to in writing,
13
+ software distributed under the License is distributed on an
14
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ KIND, either express or implied. See the License for the
16
+ specific language governing permissions and limitations
17
+ under the License.
18
+
19
+ ``apache-airflow-providers-zendesk``
20
+ ====================================
21
+
22
+
23
+ .. toctree::
24
+ :hidden:
25
+ :maxdepth: 1
26
+ :caption: Basics
27
+
28
+ Home <self>
29
+ Changelog <changelog>
30
+ Security <security>
31
+
32
+ .. toctree::
33
+ :hidden:
34
+ :maxdepth: 1
35
+ :caption: Guides
36
+
37
+ Connection types <connections>
38
+
39
+ .. toctree::
40
+ :hidden:
41
+ :maxdepth: 1
42
+ :caption: References
43
+
44
+ Python API <_api/airflow/providers/zendesk/index>
45
+
46
+ .. toctree::
47
+ :hidden:
48
+ :maxdepth: 1
49
+ :caption: System tests
50
+
51
+ System Tests <_api/tests/system/zendesk/index>
52
+
53
+ .. toctree::
54
+ :hidden:
55
+ :maxdepth: 1
56
+ :caption: Resources
57
+
58
+ Example DAGs <https://github.com/apache/airflow/tree/providers-zendesk/|version|/providers/zendesk/tests/system/zendesk/example_zendesk_custom_get.py>
59
+ PyPI Repository <https://pypi.org/project/apache-airflow-providers-zendesk/>
60
+ Installing from sources <installing-providers-from-sources>
61
+
62
+ .. THE REMAINDER OF THE FILE IS AUTOMATICALLY GENERATED. IT WILL BE OVERWRITTEN AT RELEASE TIME!
63
+
64
+
65
+ .. toctree::
66
+ :hidden:
67
+ :maxdepth: 1
68
+ :caption: Commits
69
+
70
+ Detailed list of commits <commits>
71
+
72
+
73
+ apache-airflow-providers-zendesk package
74
+ ------------------------------------------------------
75
+
76
+ `Zendesk <https://www.zendesk.com/>`__
77
+
78
+
79
+ Release: 4.10.0
80
+
81
+ Provider package
82
+ ----------------
83
+
84
+ This package is for the ``zendesk`` provider.
85
+ All classes for this package are included in the ``airflow.providers.zendesk`` python package.
86
+
87
+ Installation
88
+ ------------
89
+
90
+ You can install this package on top of an existing Airflow 2 installation via
91
+ ``pip install apache-airflow-providers-zendesk``.
92
+ For the minimum Airflow version supported, see ``Requirements`` below.
93
+
94
+ Requirements
95
+ ------------
96
+
97
+ The minimum Apache Airflow version supported by this provider distribution is ``2.10.0``.
98
+
99
+ ================== ==================
100
+ PIP package Version required
101
+ ================== ==================
102
+ ``apache-airflow`` ``>=2.10.0``
103
+ ``zenpy`` ``>=2.0.40``
104
+ ================== ==================
@@ -0,0 +1,18 @@
1
+ .. Licensed to the Apache Software Foundation (ASF) under one
2
+ or more contributor license agreements. See the NOTICE file
3
+ distributed with this work for additional information
4
+ regarding copyright ownership. The ASF licenses this file
5
+ to you under the Apache License, Version 2.0 (the
6
+ "License"); you may not use this file except in compliance
7
+ with the License. You may obtain a copy of the License at
8
+
9
+ .. http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ .. Unless required by applicable law or agreed to in writing,
12
+ software distributed under the License is distributed on an
13
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ KIND, either express or implied. See the License for the
15
+ specific language governing permissions and limitations
16
+ under the License.
17
+
18
+ .. include:: /../../../devel-common/src/sphinx_exts/includes/installing-providers-from-sources.rst
@@ -0,0 +1,18 @@
1
+ .. Licensed to the Apache Software Foundation (ASF) under one
2
+ or more contributor license agreements. See the NOTICE file
3
+ distributed with this work for additional information
4
+ regarding copyright ownership. The ASF licenses this file
5
+ to you under the Apache License, Version 2.0 (the
6
+ "License"); you may not use this file except in compliance
7
+ with the License. You may obtain a copy of the License at
8
+
9
+ .. http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ .. Unless required by applicable law or agreed to in writing,
12
+ software distributed under the License is distributed on an
13
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ KIND, either express or implied. See the License for the
15
+ specific language governing permissions and limitations
16
+ under the License.
17
+
18
+ .. include:: /../../../devel-common/src/sphinx_exts/includes/security.rst
@@ -0,0 +1,68 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+
18
+ ---
19
+ package-name: apache-airflow-providers-zendesk
20
+ name: Zendesk
21
+ description: |
22
+ `Zendesk <https://www.zendesk.com/>`__
23
+
24
+ state: ready
25
+ source-date-epoch: 1747134022
26
+ # Note that those versions are maintained by release manager - do not update them manually
27
+ # with the exception of case where other provider in sources has >= new provider version.
28
+ # In such case adding >= NEW_VERSION and bumping to NEW_VERSION in a provider have
29
+ # to be done in the same PR
30
+ versions:
31
+ - 4.10.0
32
+ - 4.9.1
33
+ - 4.9.0
34
+ - 4.8.0
35
+ - 4.7.1
36
+ - 4.7.0
37
+ - 4.6.0
38
+ - 4.5.0
39
+ - 4.4.0
40
+ - 4.3.2
41
+ - 4.3.1
42
+ - 4.3.0
43
+ - 4.2.0
44
+ - 4.1.0
45
+ - 4.0.0
46
+ - 3.0.3
47
+ - 3.0.2
48
+ - 3.0.1
49
+ - 3.0.0
50
+ - 2.0.1
51
+ - 2.0.0
52
+ - 1.0.1
53
+ - 1.0.0
54
+
55
+ integrations:
56
+ - integration-name: Zendesk
57
+ external-doc-url: https://www.zendesk.com/
58
+ logo: /docs/integration-logos/Zendesk.png
59
+ tags: [software]
60
+
61
+ hooks:
62
+ - integration-name: Zendesk
63
+ python-modules:
64
+ - airflow.providers.zendesk.hooks.zendesk
65
+
66
+ connection-types:
67
+ - hook-class-name: airflow.providers.zendesk.hooks.zendesk.ZendeskHook
68
+ connection-type: zendesk
@@ -20,12 +20,12 @@
20
20
  # IF YOU WANT TO MODIFY THIS FILE EXCEPT DEPENDENCIES, YOU SHOULD MODIFY THE TEMPLATE
21
21
  # `pyproject_TEMPLATE.toml.jinja2` IN the `dev/breeze/src/airflow_breeze/templates` DIRECTORY
22
22
  [build-system]
23
- requires = ["flit_core==3.11.0"]
23
+ requires = ["flit_core==3.12.0"]
24
24
  build-backend = "flit_core.buildapi"
25
25
 
26
26
  [project]
27
27
  name = "apache-airflow-providers-zendesk"
28
- version = "4.9.1.rc1"
28
+ version = "4.10.0rc1"
29
29
  description = "Provider package apache-airflow-providers-zendesk for Apache Airflow"
30
30
  readme = "README.rst"
31
31
  authors = [
@@ -57,7 +57,7 @@ requires-python = "~=3.9"
57
57
  # Make sure to run ``breeze static-checks --type update-providers-dependencies --all-files``
58
58
  # After you modify the dependencies, and rebuild your Breeze CI image with ``breeze ci-image build``
59
59
  dependencies = [
60
- "apache-airflow>=2.9.0rc0",
60
+ "apache-airflow>=2.10.0rc1",
61
61
  "zenpy>=2.0.40",
62
62
  ]
63
63
 
@@ -69,6 +69,22 @@ dev = [
69
69
  # Additional devel dependencies (do not remove this line and add extra development dependencies)
70
70
  ]
71
71
 
72
+ # To build docs:
73
+ #
74
+ # uv run --group docs build-docs
75
+ #
76
+ # To enable auto-refreshing build with server:
77
+ #
78
+ # uv run --group docs build-docs --autobuild
79
+ #
80
+ # To see more options:
81
+ #
82
+ # uv run --group docs build-docs --help
83
+ #
84
+ docs = [
85
+ "apache-airflow-devel-common[docs]"
86
+ ]
87
+
72
88
  [tool.uv.sources]
73
89
  # These names must match the names as defined in the pyproject.toml of the workspace items,
74
90
  # *not* the workspace folder paths
@@ -76,16 +92,15 @@ apache-airflow = {workspace = true}
76
92
  apache-airflow-devel-common = {workspace = true}
77
93
  apache-airflow-task-sdk = {workspace = true}
78
94
  apache-airflow-providers-common-sql = {workspace = true}
79
- apache-airflow-providers-fab = {workspace = true}
80
95
  apache-airflow-providers-standard = {workspace = true}
81
96
 
82
97
  [project.urls]
83
- "Documentation" = "https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1"
84
- "Changelog" = "https://airflow.apache.org/docs/apache-airflow-providers-zendesk/4.9.1/changelog.html"
98
+ "Documentation" = "https://airflow.staged.apache.org/docs/apache-airflow-providers-zendesk/4.10.0"
99
+ "Changelog" = "https://airflow.staged.apache.org/docs/apache-airflow-providers-zendesk/4.10.0/changelog.html"
85
100
  "Bug Tracker" = "https://github.com/apache/airflow/issues"
86
101
  "Source Code" = "https://github.com/apache/airflow"
87
102
  "Slack Chat" = "https://s.apache.org/airflow-slack"
88
- "Twitter" = "https://x.com/ApacheAirflow"
103
+ "Mastodon" = "https://fosstodon.org/@airflow"
89
104
  "YouTube" = "https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/"
90
105
 
91
106
  [project.entry-points."apache_airflow_provider"]
@@ -0,0 +1,17 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ __path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
@@ -0,0 +1,17 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ __path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
@@ -29,11 +29,11 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "4.9.1"
32
+ __version__ = "4.10.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
- "2.9.0"
35
+ "2.10.0"
36
36
  ):
37
37
  raise RuntimeError(
38
- f"The package `apache-airflow-providers-zendesk:{__version__}` needs Apache Airflow 2.9.0+"
38
+ f"The package `apache-airflow-providers-zendesk:{__version__}` needs Apache Airflow 2.10.0+"
39
39
  )
@@ -26,32 +26,6 @@ def get_provider_info():
26
26
  "package-name": "apache-airflow-providers-zendesk",
27
27
  "name": "Zendesk",
28
28
  "description": "`Zendesk <https://www.zendesk.com/>`__\n",
29
- "state": "ready",
30
- "source-date-epoch": 1741510082,
31
- "versions": [
32
- "4.9.1",
33
- "4.9.0",
34
- "4.8.0",
35
- "4.7.1",
36
- "4.7.0",
37
- "4.6.0",
38
- "4.5.0",
39
- "4.4.0",
40
- "4.3.2",
41
- "4.3.1",
42
- "4.3.0",
43
- "4.2.0",
44
- "4.1.0",
45
- "4.0.0",
46
- "3.0.3",
47
- "3.0.2",
48
- "3.0.1",
49
- "3.0.0",
50
- "2.0.1",
51
- "2.0.0",
52
- "1.0.1",
53
- "1.0.0",
54
- ],
55
29
  "integrations": [
56
30
  {
57
31
  "integration-name": "Zendesk",
@@ -69,6 +43,4 @@ def get_provider_info():
69
43
  "connection-type": "zendesk",
70
44
  }
71
45
  ],
72
- "dependencies": ["apache-airflow>=2.9.0", "zenpy>=2.0.40"],
73
- "devel-dependencies": [],
74
46
  }
@@ -0,0 +1,19 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ from __future__ import annotations
18
+
19
+ pytest_plugins = "tests_common.pytest_plugin"
@@ -0,0 +1,17 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ __path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
@@ -0,0 +1,16 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
@@ -0,0 +1,51 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ from __future__ import annotations
18
+
19
+ import os
20
+ from datetime import datetime
21
+
22
+ from airflow import DAG
23
+ from airflow.decorators import task
24
+ from airflow.providers.zendesk.hooks.zendesk import ZendeskHook
25
+
26
+ ENV_ID = os.environ.get("SYSTEM_TESTS_ENV_ID")
27
+ DAG_ID = "zendesk_custom_get_dag"
28
+
29
+
30
+ @task
31
+ def fetch_organizations() -> list[dict]:
32
+ hook = ZendeskHook()
33
+ response = hook.get(
34
+ url="https://yourdomain.zendesk.com/api/v2/organizations.json",
35
+ )
36
+ return [org.to_dict() for org in response]
37
+
38
+
39
+ with DAG(
40
+ dag_id=DAG_ID,
41
+ schedule=None,
42
+ start_date=datetime(2021, 1, 1),
43
+ catchup=False,
44
+ ) as dag:
45
+ fetch_organizations()
46
+
47
+
48
+ from tests_common.test_utils.system_tests import get_test_run # noqa: E402
49
+
50
+ # Needed to run the example DAG with pytest (see: tests/system/README.md#run_via_pytest)
51
+ test_run = get_test_run(dag)
@@ -0,0 +1,17 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
17
+ __path__ = __import__("pkgutil").extend_path(__path__, __name__) # type: ignore
@@ -0,0 +1,16 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
@@ -0,0 +1,16 @@
1
+ # Licensed to the Apache Software Foundation (ASF) under one
2
+ # or more contributor license agreements. See the NOTICE file
3
+ # distributed with this work for additional information
4
+ # regarding copyright ownership. The ASF licenses this file
5
+ # to you under the Apache License, Version 2.0 (the
6
+ # "License"); you may not use this file except in compliance
7
+ # with the License. You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing,
12
+ # software distributed under the License is distributed on an
13
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ # KIND, either express or implied. See the License for the
15
+ # specific language governing permissions and limitations
16
+ # under the License.
@@ -0,0 +1,88 @@
1
+ #
2
+ # Licensed to the Apache Software Foundation (ASF) under one
3
+ # or more contributor license agreements. See the NOTICE file
4
+ # distributed with this work for additional information
5
+ # regarding copyright ownership. The ASF licenses this file
6
+ # to you under the Apache License, Version 2.0 (the
7
+ # "License"); you may not use this file except in compliance
8
+ # with the License. You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing,
13
+ # software distributed under the License is distributed on an
14
+ # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ # KIND, either express or implied. See the License for the
16
+ # specific language governing permissions and limitations
17
+ # under the License.
18
+ from __future__ import annotations
19
+
20
+ from unittest.mock import patch
21
+
22
+ import pytest
23
+ from zenpy.lib.api_objects import Ticket
24
+
25
+ from airflow.models import Connection
26
+ from airflow.providers.zendesk.hooks.zendesk import ZendeskHook
27
+ from airflow.utils import db
28
+
29
+ pytestmark = pytest.mark.db_test
30
+
31
+
32
+ class TestZendeskHook:
33
+ conn_id = "zendesk_conn_id_test"
34
+
35
+ @pytest.fixture(autouse=True)
36
+ def init_connection(self):
37
+ db.merge_conn(
38
+ Connection(
39
+ conn_id=self.conn_id,
40
+ conn_type="zendesk",
41
+ host="yoursubdomain.zendesk.com",
42
+ login="user@gmail.com",
43
+ password="eb243592-faa2-4ba2-a551q-1afdf565c889",
44
+ )
45
+ )
46
+ self.hook = ZendeskHook(zendesk_conn_id=self.conn_id)
47
+
48
+ def test_hook_init_and_get_conn(self):
49
+ # Verify config of zenpy APIs
50
+ zenpy_client = self.hook.get_conn()
51
+ assert zenpy_client.users.subdomain == "yoursubdomain"
52
+ assert zenpy_client.users.domain == "zendesk.com"
53
+ assert zenpy_client.users.session.auth == ("user@gmail.com", "eb243592-faa2-4ba2-a551q-1afdf565c889")
54
+ assert not zenpy_client.cache.disabled
55
+ assert self.hook._ZendeskHook__url == "https://yoursubdomain.zendesk.com"
56
+
57
+ def test_get_ticket(self):
58
+ zenpy_client = self.hook.get_conn()
59
+ with patch.object(zenpy_client, "tickets") as tickets_mock:
60
+ self.hook.get_ticket(ticket_id=1)
61
+ tickets_mock.assert_called_once_with(id=1)
62
+
63
+ def test_search_tickets(self):
64
+ zenpy_client = self.hook.get_conn()
65
+ with patch.object(zenpy_client, "search") as search_mock:
66
+ self.hook.search_tickets(status="open", sort_order="desc")
67
+ search_mock.assert_called_once_with(type="ticket", status="open", sort_order="desc")
68
+
69
+ def test_create_tickets(self):
70
+ zenpy_client = self.hook.get_conn()
71
+ ticket = Ticket(subject="This is a test ticket to create")
72
+ with patch.object(zenpy_client.tickets, "create") as search_mock:
73
+ self.hook.create_tickets(ticket, extra_parameter="extra_parameter")
74
+ search_mock.assert_called_once_with(ticket, extra_parameter="extra_parameter")
75
+
76
+ def test_update_tickets(self):
77
+ zenpy_client = self.hook.get_conn()
78
+ ticket = Ticket(subject="This is a test ticket to update")
79
+ with patch.object(zenpy_client.tickets, "update") as search_mock:
80
+ self.hook.update_tickets(ticket, extra_parameter="extra_parameter")
81
+ search_mock.assert_called_once_with(ticket, extra_parameter="extra_parameter")
82
+
83
+ def test_delete_tickets(self):
84
+ zenpy_client = self.hook.get_conn()
85
+ ticket = Ticket(subject="This is a test ticket to delete")
86
+ with patch.object(zenpy_client.tickets, "delete") as search_mock:
87
+ self.hook.delete_tickets(ticket, extra_parameter="extra_parameter")
88
+ search_mock.assert_called_once_with(ticket, extra_parameter="extra_parameter")