apache-airflow-providers-amazon 9.1.0rc4__py3-none-any.whl → 9.2.0__py3-none-any.whl

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 (116) hide show
  1. airflow/providers/amazon/__init__.py +3 -3
  2. airflow/providers/amazon/aws/auth_manager/avp/facade.py +2 -1
  3. airflow/providers/amazon/aws/auth_manager/aws_auth_manager.py +4 -12
  4. airflow/providers/amazon/aws/executors/batch/batch_executor.py +4 -3
  5. airflow/providers/amazon/aws/executors/batch/utils.py +3 -3
  6. airflow/providers/amazon/aws/executors/ecs/ecs_executor.py +2 -1
  7. airflow/providers/amazon/aws/executors/ecs/utils.py +3 -3
  8. airflow/providers/amazon/aws/fs/s3.py +2 -2
  9. airflow/providers/amazon/aws/hooks/appflow.py +15 -5
  10. airflow/providers/amazon/aws/hooks/athena.py +2 -1
  11. airflow/providers/amazon/aws/hooks/dms.py +161 -0
  12. airflow/providers/amazon/aws/hooks/dynamodb.py +2 -1
  13. airflow/providers/amazon/aws/hooks/eks.py +2 -1
  14. airflow/providers/amazon/aws/hooks/kinesis.py +1 -1
  15. airflow/providers/amazon/aws/hooks/logs.py +2 -1
  16. airflow/providers/amazon/aws/hooks/redshift_cluster.py +4 -3
  17. airflow/providers/amazon/aws/hooks/redshift_data.py +2 -1
  18. airflow/providers/amazon/aws/hooks/redshift_sql.py +2 -6
  19. airflow/providers/amazon/aws/hooks/s3.py +7 -1
  20. airflow/providers/amazon/aws/hooks/sagemaker.py +2 -1
  21. airflow/providers/amazon/aws/hooks/ses.py +2 -1
  22. airflow/providers/amazon/aws/notifications/sns.py +1 -1
  23. airflow/providers/amazon/aws/notifications/sqs.py +1 -1
  24. airflow/providers/amazon/aws/operators/athena.py +2 -1
  25. airflow/providers/amazon/aws/operators/base_aws.py +1 -1
  26. airflow/providers/amazon/aws/operators/batch.py +2 -1
  27. airflow/providers/amazon/aws/operators/bedrock.py +2 -1
  28. airflow/providers/amazon/aws/operators/cloud_formation.py +2 -1
  29. airflow/providers/amazon/aws/operators/comprehend.py +2 -1
  30. airflow/providers/amazon/aws/operators/datasync.py +2 -1
  31. airflow/providers/amazon/aws/operators/dms.py +531 -1
  32. airflow/providers/amazon/aws/operators/ec2.py +2 -1
  33. airflow/providers/amazon/aws/operators/ecs.py +4 -1
  34. airflow/providers/amazon/aws/operators/eks.py +4 -3
  35. airflow/providers/amazon/aws/operators/emr.py +31 -8
  36. airflow/providers/amazon/aws/operators/eventbridge.py +2 -1
  37. airflow/providers/amazon/aws/operators/glacier.py +2 -1
  38. airflow/providers/amazon/aws/operators/glue.py +2 -1
  39. airflow/providers/amazon/aws/operators/glue_crawler.py +2 -1
  40. airflow/providers/amazon/aws/operators/glue_databrew.py +2 -1
  41. airflow/providers/amazon/aws/operators/kinesis_analytics.py +2 -1
  42. airflow/providers/amazon/aws/operators/lambda_function.py +2 -1
  43. airflow/providers/amazon/aws/operators/neptune.py +2 -1
  44. airflow/providers/amazon/aws/operators/quicksight.py +2 -1
  45. airflow/providers/amazon/aws/operators/rds.py +2 -1
  46. airflow/providers/amazon/aws/operators/redshift_cluster.py +2 -1
  47. airflow/providers/amazon/aws/operators/s3.py +7 -1
  48. airflow/providers/amazon/aws/operators/sagemaker.py +2 -1
  49. airflow/providers/amazon/aws/operators/sns.py +2 -1
  50. airflow/providers/amazon/aws/operators/sqs.py +2 -1
  51. airflow/providers/amazon/aws/operators/step_function.py +2 -1
  52. airflow/providers/amazon/aws/sensors/athena.py +2 -1
  53. airflow/providers/amazon/aws/sensors/base_aws.py +1 -1
  54. airflow/providers/amazon/aws/sensors/batch.py +2 -1
  55. airflow/providers/amazon/aws/sensors/bedrock.py +2 -1
  56. airflow/providers/amazon/aws/sensors/cloud_formation.py +2 -1
  57. airflow/providers/amazon/aws/sensors/comprehend.py +2 -1
  58. airflow/providers/amazon/aws/sensors/dms.py +2 -1
  59. airflow/providers/amazon/aws/sensors/dynamodb.py +2 -1
  60. airflow/providers/amazon/aws/sensors/ec2.py +2 -1
  61. airflow/providers/amazon/aws/sensors/ecs.py +2 -1
  62. airflow/providers/amazon/aws/sensors/eks.py +2 -1
  63. airflow/providers/amazon/aws/sensors/emr.py +2 -1
  64. airflow/providers/amazon/aws/sensors/glacier.py +2 -1
  65. airflow/providers/amazon/aws/sensors/glue.py +2 -1
  66. airflow/providers/amazon/aws/sensors/glue_catalog_partition.py +2 -1
  67. airflow/providers/amazon/aws/sensors/glue_crawler.py +2 -1
  68. airflow/providers/amazon/aws/sensors/kinesis_analytics.py +2 -1
  69. airflow/providers/amazon/aws/sensors/lambda_function.py +2 -1
  70. airflow/providers/amazon/aws/sensors/opensearch_serverless.py +2 -1
  71. airflow/providers/amazon/aws/sensors/quicksight.py +2 -1
  72. airflow/providers/amazon/aws/sensors/rds.py +2 -1
  73. airflow/providers/amazon/aws/sensors/redshift_cluster.py +2 -1
  74. airflow/providers/amazon/aws/sensors/s3.py +2 -1
  75. airflow/providers/amazon/aws/sensors/sagemaker.py +2 -1
  76. airflow/providers/amazon/aws/sensors/sqs.py +2 -1
  77. airflow/providers/amazon/aws/sensors/step_function.py +2 -1
  78. airflow/providers/amazon/aws/transfers/azure_blob_to_s3.py +2 -1
  79. airflow/providers/amazon/aws/transfers/base.py +1 -1
  80. airflow/providers/amazon/aws/transfers/dynamodb_to_s3.py +2 -1
  81. airflow/providers/amazon/aws/transfers/exasol_to_s3.py +2 -1
  82. airflow/providers/amazon/aws/transfers/ftp_to_s3.py +2 -1
  83. airflow/providers/amazon/aws/transfers/gcs_to_s3.py +4 -3
  84. airflow/providers/amazon/aws/transfers/glacier_to_gcs.py +2 -1
  85. airflow/providers/amazon/aws/transfers/google_api_to_s3.py +4 -8
  86. airflow/providers/amazon/aws/transfers/hive_to_dynamodb.py +2 -1
  87. airflow/providers/amazon/aws/transfers/imap_attachment_to_s3.py +2 -1
  88. airflow/providers/amazon/aws/transfers/local_to_s3.py +2 -1
  89. airflow/providers/amazon/aws/transfers/mongo_to_s3.py +2 -1
  90. airflow/providers/amazon/aws/transfers/redshift_to_s3.py +2 -1
  91. airflow/providers/amazon/aws/transfers/s3_to_dynamodb.py +2 -1
  92. airflow/providers/amazon/aws/transfers/s3_to_ftp.py +2 -1
  93. airflow/providers/amazon/aws/transfers/s3_to_redshift.py +2 -1
  94. airflow/providers/amazon/aws/transfers/s3_to_sftp.py +2 -1
  95. airflow/providers/amazon/aws/transfers/s3_to_sql.py +2 -1
  96. airflow/providers/amazon/aws/transfers/salesforce_to_s3.py +2 -1
  97. airflow/providers/amazon/aws/transfers/sftp_to_s3.py +14 -1
  98. airflow/providers/amazon/aws/transfers/sql_to_s3.py +2 -1
  99. airflow/providers/amazon/aws/triggers/base.py +2 -1
  100. airflow/providers/amazon/aws/triggers/dms.py +221 -0
  101. airflow/providers/amazon/aws/triggers/glue.py +2 -1
  102. airflow/providers/amazon/aws/triggers/redshift_cluster.py +2 -1
  103. airflow/providers/amazon/aws/triggers/redshift_data.py +2 -1
  104. airflow/providers/amazon/aws/triggers/s3.py +2 -1
  105. airflow/providers/amazon/aws/triggers/sagemaker.py +2 -1
  106. airflow/providers/amazon/aws/triggers/sqs.py +2 -1
  107. airflow/providers/amazon/aws/utils/__init__.py +1 -15
  108. airflow/providers/amazon/aws/utils/task_log_fetcher.py +2 -1
  109. airflow/providers/amazon/aws/utils/waiter.py +20 -0
  110. airflow/providers/amazon/aws/waiters/dms.json +88 -0
  111. airflow/providers/amazon/get_provider_info.py +9 -4
  112. airflow/providers/amazon/version_compat.py +36 -0
  113. {apache_airflow_providers_amazon-9.1.0rc4.dist-info → apache_airflow_providers_amazon-9.2.0.dist-info}/METADATA +13 -19
  114. {apache_airflow_providers_amazon-9.1.0rc4.dist-info → apache_airflow_providers_amazon-9.2.0.dist-info}/RECORD +116 -113
  115. {apache_airflow_providers_amazon-9.1.0rc4.dist-info → apache_airflow_providers_amazon-9.2.0.dist-info}/WHEEL +0 -0
  116. {apache_airflow_providers_amazon-9.1.0rc4.dist-info → apache_airflow_providers_amazon-9.2.0.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,88 @@
1
+ {
2
+ "version": 2,
3
+ "waiters": {
4
+ "replication_deprovisioned": {
5
+ "operation": "DescribeReplications",
6
+ "delay": 30,
7
+ "maxAttempts": 60,
8
+ "acceptors": [
9
+ {
10
+ "matcher": "path",
11
+ "argument": "Replications[0].ProvisionData.ProvisionState",
12
+ "expected": "deprovisioned",
13
+ "state": "success"
14
+ }
15
+ ]
16
+ },
17
+ "replication_terminal_status": {
18
+ "operation": "DescribeReplications",
19
+ "delay": 30,
20
+ "maxAttempts": 60,
21
+ "acceptors": [
22
+ {
23
+ "matcher": "path",
24
+ "argument": "Replications[0].ProvisionData.ProvisionState",
25
+ "expected": "deprovisioning",
26
+ "state": "retry"
27
+ },
28
+ {
29
+ "matcher": "path",
30
+ "argument": "Replications[0].Status",
31
+ "expected": "failed",
32
+ "state": "success"
33
+ },
34
+ {
35
+ "matcher": "path",
36
+ "argument": "Replications[0].Status",
37
+ "expected": "stopped",
38
+ "state": "success"
39
+ }
40
+ ]
41
+ },
42
+ "replication_complete": {
43
+ "operation": "DescribeReplications",
44
+ "delay": 30,
45
+ "maxAttempts": 60,
46
+ "acceptors": [
47
+ {
48
+ "matcher": "path",
49
+ "argument": "Replications[0].Status",
50
+ "expected": "failed",
51
+ "state": "failure"
52
+ },
53
+ {
54
+ "matcher": "path",
55
+ "argument": "Replications[0].Status",
56
+ "expected": "stopped",
57
+ "state": "success"
58
+ }
59
+ ]
60
+ },
61
+ "replication_config_deleted": {
62
+ "operation": "DescribeReplicationConfigs",
63
+ "delay": 5,
64
+ "maxAttempts": 60,
65
+ "acceptors": [
66
+ {
67
+ "matcher": "error",
68
+ "expected": "ResourceNotFoundFault",
69
+ "state": "success",
70
+ "argument": "Error.Code"
71
+ }
72
+ ]
73
+ },
74
+ "replication_stopped": {
75
+ "operation": "DescribeReplications",
76
+ "delay": 5,
77
+ "maxAttempts": 60,
78
+ "acceptors": [
79
+ {
80
+ "matcher": "path",
81
+ "argument": "Replications[0].Status",
82
+ "expected": "stopped",
83
+ "state": "success"
84
+ }
85
+ ]
86
+ }
87
+ }
88
+ }
@@ -28,8 +28,9 @@ def get_provider_info():
28
28
  "name": "Amazon",
29
29
  "description": "Amazon integration (including `Amazon Web Services (AWS) <https://aws.amazon.com/>`__).\n",
30
30
  "state": "ready",
31
- "source-date-epoch": 1730011042,
31
+ "source-date-epoch": 1734527035,
32
32
  "versions": [
33
+ "9.2.0",
33
34
  "9.1.0",
34
35
  "9.0.0",
35
36
  "8.29.0",
@@ -98,8 +99,8 @@ def get_provider_info():
98
99
  "1.0.0",
99
100
  ],
100
101
  "dependencies": [
101
- "apache-airflow>=2.8.0",
102
- "apache-airflow-providers-common-compat>=1.2.1",
102
+ "apache-airflow>=2.9.0",
103
+ "apache-airflow-providers-common-compat>=1.3.0",
103
104
  "apache-airflow-providers-common-sql>=1.20.0",
104
105
  "apache-airflow-providers-http",
105
106
  "boto3>=1.34.90",
@@ -130,7 +131,7 @@ def get_provider_info():
130
131
  "aiobotocore>=2.13.0",
131
132
  "aws_xray_sdk>=2.12.0",
132
133
  "moto[cloudformation,glue]>=5.0.0",
133
- "mypy-boto3-appflow>=1.34.0,<1.35.39",
134
+ "mypy-boto3-appflow>=1.35.39",
134
135
  "mypy-boto3-rds>=1.34.90",
135
136
  "mypy-boto3-redshift-data>=1.34.0",
136
137
  "mypy-boto3-s3>=1.34.90",
@@ -949,6 +950,10 @@ def get_provider_info():
949
950
  "integration-name": "Amazon Neptune",
950
951
  "python-modules": ["airflow.providers.amazon.aws.triggers.neptune"],
951
952
  },
953
+ {
954
+ "integration-name": "AWS Database Migration Service",
955
+ "python-modules": ["airflow.providers.amazon.aws.triggers.dms"],
956
+ },
952
957
  ],
953
958
  "transfers": [
954
959
  {
@@ -0,0 +1,36 @@
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
+ # NOTE! THIS FILE IS COPIED MANUALLY IN OTHER PROVIDERS DELIBERATELY TO AVOID ADDING UNNECESSARY
19
+ # DEPENDENCIES BETWEEN PROVIDERS. IF YOU WANT TO ADD CONDITIONAL CODE IN YOUR PROVIDER THAT DEPENDS
20
+ # ON AIRFLOW VERSION, PLEASE COPY THIS FILE TO THE ROOT PACKAGE OF YOUR PROVIDER AND IMPORT
21
+ # THOSE CONSTANTS FROM IT RATHER THAN IMPORTING THEM FROM ANOTHER PROVIDER OR TEST CODE
22
+ #
23
+ from __future__ import annotations
24
+
25
+
26
+ def get_base_airflow_version_tuple() -> tuple[int, int, int]:
27
+ from packaging.version import Version
28
+
29
+ from airflow import __version__
30
+
31
+ airflow_version = Version(__version__)
32
+ return airflow_version.major, airflow_version.minor, airflow_version.micro
33
+
34
+
35
+ AIRFLOW_V_2_10_PLUS = get_base_airflow_version_tuple() >= (2, 10, 0)
36
+ AIRFLOW_V_3_0_PLUS = get_base_airflow_version_tuple() >= (3, 0, 0)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: apache-airflow-providers-amazon
3
- Version: 9.1.0rc4
3
+ Version: 9.2.0
4
4
  Summary: Provider package apache-airflow-providers-amazon for Apache Airflow
5
5
  Keywords: airflow-provider,amazon,airflow,integration
6
6
  Author-email: Apache Software Foundation <dev@airflow.apache.org>
@@ -21,10 +21,10 @@ Classifier: Programming Language :: Python :: 3.11
21
21
  Classifier: Programming Language :: Python :: 3.12
22
22
  Classifier: Topic :: System :: Monitoring
23
23
  Requires-Dist: PyAthena>=3.0.10
24
- Requires-Dist: apache-airflow-providers-common-compat>=1.2.1rc0
25
- Requires-Dist: apache-airflow-providers-common-sql>=1.20.0rc0
24
+ Requires-Dist: apache-airflow-providers-common-compat>=1.3.0
25
+ Requires-Dist: apache-airflow-providers-common-sql>=1.20.0
26
26
  Requires-Dist: apache-airflow-providers-http
27
- Requires-Dist: apache-airflow>=2.8.0rc0
27
+ Requires-Dist: apache-airflow>=2.9.0
28
28
  Requires-Dist: asgiref>=2.3.0
29
29
  Requires-Dist: boto3>=1.34.90
30
30
  Requires-Dist: botocore>=1.34.90
@@ -36,13 +36,10 @@ Requires-Dist: redshift_connector>=2.0.918
36
36
  Requires-Dist: watchtower>=3.0.0,!=3.3.0,<4
37
37
  Requires-Dist: aiobotocore[boto3]>=2.13.0 ; extra == "aiobotocore"
38
38
  Requires-Dist: apache-airflow-providers-apache-hive ; extra == "apache-hive"
39
- Requires-Dist: apache-airflow-providers-cncf-kubernetes>=7.2.0rc0 ; extra == "cncf-kubernetes"
40
- Requires-Dist: apache-airflow-providers-common-compat ; extra == "common-compat"
41
- Requires-Dist: apache-airflow-providers-common-sql ; extra == "common-sql"
39
+ Requires-Dist: apache-airflow-providers-cncf-kubernetes>=7.2.0 ; extra == "cncf-kubernetes"
42
40
  Requires-Dist: apache-airflow-providers-exasol ; extra == "exasol"
43
41
  Requires-Dist: apache-airflow-providers-ftp ; extra == "ftp"
44
42
  Requires-Dist: apache-airflow-providers-google ; extra == "google"
45
- Requires-Dist: apache-airflow-providers-http ; extra == "http"
46
43
  Requires-Dist: apache-airflow-providers-imap ; extra == "imap"
47
44
  Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == "microsoft-azure"
48
45
  Requires-Dist: apache-airflow-providers-mongo ; extra == "mongo"
@@ -54,21 +51,18 @@ Requires-Dist: s3fs>=2023.10.0 ; extra == "s3fs"
54
51
  Requires-Dist: apache-airflow-providers-salesforce ; extra == "salesforce"
55
52
  Requires-Dist: apache-airflow-providers-ssh ; extra == "ssh"
56
53
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
57
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.1.0/changelog.html
58
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.1.0
54
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.2.0/changelog.html
55
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.2.0
59
56
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
60
57
  Project-URL: Source Code, https://github.com/apache/airflow
61
- Project-URL: Twitter, https://twitter.com/ApacheAirflow
58
+ Project-URL: Twitter, https://x.com/ApacheAirflow
62
59
  Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
63
60
  Provides-Extra: aiobotocore
64
61
  Provides-Extra: apache-hive
65
62
  Provides-Extra: cncf-kubernetes
66
- Provides-Extra: common-compat
67
- Provides-Extra: common-sql
68
63
  Provides-Extra: exasol
69
64
  Provides-Extra: ftp
70
65
  Provides-Extra: google
71
- Provides-Extra: http
72
66
  Provides-Extra: imap
73
67
  Provides-Extra: microsoft-azure
74
68
  Provides-Extra: mongo
@@ -123,7 +117,7 @@ Provides-Extra: ssh
123
117
 
124
118
  Package ``apache-airflow-providers-amazon``
125
119
 
126
- Release: ``9.1.0.rc4``
120
+ Release: ``9.2.0``
127
121
 
128
122
 
129
123
  Amazon integration (including `Amazon Web Services (AWS) <https://aws.amazon.com/>`__).
@@ -136,7 +130,7 @@ This is a provider package for ``amazon`` provider. All classes for this provide
136
130
  are in ``airflow.providers.amazon`` python package.
137
131
 
138
132
  You can find package information and changelog for the provider
139
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.1.0/>`_.
133
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.2.0/>`_.
140
134
 
141
135
  Installation
142
136
  ------------
@@ -153,8 +147,8 @@ Requirements
153
147
  ========================================== ======================
154
148
  PIP package Version required
155
149
  ========================================== ======================
156
- ``apache-airflow`` ``>=2.8.0``
157
- ``apache-airflow-providers-common-compat`` ``>=1.2.1``
150
+ ``apache-airflow`` ``>=2.9.0``
151
+ ``apache-airflow-providers-common-compat`` ``>=1.3.0``
158
152
  ``apache-airflow-providers-common-sql`` ``>=1.20.0``
159
153
  ``apache-airflow-providers-http``
160
154
  ``boto3`` ``>=1.34.90``
@@ -202,4 +196,4 @@ Dependent package
202
196
  ====================================================================================================================== ===================
203
197
 
204
198
  The changelog for the provider package can be found in the
205
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.1.0/changelog.html>`_.
199
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.2.0/changelog.html>`_.