apache-airflow-providers-amazon 9.1.0rc3__tar.gz → 9.2.0__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 (258) hide show
  1. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/PKG-INFO +20 -26
  2. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/README.rst +6 -6
  3. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/__init__.py +3 -3
  4. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/avp/facade.py +2 -1
  5. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/aws_auth_manager.py +4 -12
  6. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/batch/batch_executor.py +4 -3
  7. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/batch/utils.py +3 -3
  8. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/ecs/ecs_executor.py +2 -1
  9. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/ecs/utils.py +3 -3
  10. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/fs/s3.py +2 -2
  11. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/appflow.py +15 -5
  12. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/athena.py +2 -1
  13. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/dms.py +161 -0
  14. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/dynamodb.py +2 -1
  15. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/eks.py +4 -3
  16. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/glue.py +5 -1
  17. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/kinesis.py +1 -1
  18. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/logs.py +2 -1
  19. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/redshift_cluster.py +4 -3
  20. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/redshift_data.py +2 -1
  21. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/redshift_sql.py +2 -6
  22. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/s3.py +9 -3
  23. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/sagemaker.py +2 -1
  24. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/ses.py +2 -1
  25. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/notifications/sns.py +1 -1
  26. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/notifications/sqs.py +1 -1
  27. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/athena.py +5 -2
  28. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/base_aws.py +1 -1
  29. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/batch.py +2 -1
  30. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/bedrock.py +2 -1
  31. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/cloud_formation.py +2 -1
  32. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/comprehend.py +2 -1
  33. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/datasync.py +2 -1
  34. apache_airflow_providers_amazon-9.2.0/airflow/providers/amazon/aws/operators/dms.py +809 -0
  35. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/ec2.py +2 -1
  36. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/ecs.py +15 -4
  37. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/eks.py +8 -5
  38. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/emr.py +31 -8
  39. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/eventbridge.py +2 -1
  40. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/glacier.py +2 -1
  41. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/glue.py +12 -2
  42. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/glue_crawler.py +2 -1
  43. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/glue_databrew.py +2 -1
  44. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/kinesis_analytics.py +2 -1
  45. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/lambda_function.py +2 -1
  46. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/neptune.py +2 -1
  47. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/quicksight.py +2 -1
  48. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/rds.py +2 -1
  49. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/redshift_cluster.py +2 -1
  50. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/s3.py +7 -1
  51. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/sagemaker.py +2 -1
  52. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/sns.py +2 -1
  53. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/sqs.py +2 -1
  54. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/step_function.py +2 -1
  55. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/athena.py +2 -1
  56. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/base_aws.py +1 -1
  57. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/batch.py +2 -1
  58. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/bedrock.py +2 -1
  59. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/cloud_formation.py +2 -1
  60. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/comprehend.py +2 -1
  61. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/dms.py +2 -1
  62. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/dynamodb.py +2 -1
  63. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/ec2.py +2 -1
  64. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/ecs.py +2 -1
  65. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/eks.py +2 -1
  66. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/emr.py +2 -1
  67. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/glacier.py +2 -1
  68. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/glue.py +2 -1
  69. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/glue_catalog_partition.py +2 -1
  70. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/glue_crawler.py +2 -1
  71. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/kinesis_analytics.py +2 -1
  72. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/lambda_function.py +2 -1
  73. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/opensearch_serverless.py +2 -1
  74. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/quicksight.py +2 -1
  75. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/rds.py +2 -1
  76. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/redshift_cluster.py +2 -1
  77. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/s3.py +2 -1
  78. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/sagemaker.py +2 -1
  79. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/sqs.py +2 -1
  80. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/step_function.py +2 -1
  81. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/azure_blob_to_s3.py +2 -1
  82. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/base.py +1 -1
  83. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/dynamodb_to_s3.py +2 -1
  84. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/exasol_to_s3.py +2 -1
  85. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/ftp_to_s3.py +2 -1
  86. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/gcs_to_s3.py +4 -3
  87. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/glacier_to_gcs.py +2 -1
  88. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/google_api_to_s3.py +4 -8
  89. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/hive_to_dynamodb.py +2 -1
  90. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/imap_attachment_to_s3.py +2 -1
  91. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/local_to_s3.py +2 -1
  92. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/mongo_to_s3.py +2 -1
  93. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/redshift_to_s3.py +2 -1
  94. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/s3_to_dynamodb.py +3 -2
  95. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/s3_to_ftp.py +2 -1
  96. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/s3_to_redshift.py +2 -1
  97. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/s3_to_sftp.py +2 -1
  98. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/s3_to_sql.py +2 -1
  99. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/salesforce_to_s3.py +2 -1
  100. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/sftp_to_s3.py +14 -1
  101. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/sql_to_s3.py +2 -1
  102. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/athena.py +1 -2
  103. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/base.py +2 -1
  104. apache_airflow_providers_amazon-9.2.0/airflow/providers/amazon/aws/triggers/dms.py +221 -0
  105. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/glue.py +3 -2
  106. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/redshift_cluster.py +2 -1
  107. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/redshift_data.py +2 -1
  108. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/s3.py +2 -1
  109. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/sagemaker.py +2 -1
  110. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/sqs.py +2 -1
  111. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/__init__.py +1 -15
  112. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/task_log_fetcher.py +2 -1
  113. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/waiter.py +20 -0
  114. apache_airflow_providers_amazon-9.2.0/airflow/providers/amazon/aws/waiters/dms.json +88 -0
  115. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/get_provider_info.py +10 -5
  116. apache_airflow_providers_amazon-9.2.0/airflow/providers/amazon/version_compat.py +36 -0
  117. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/pyproject.toml +9 -19
  118. apache_airflow_providers_amazon-9.1.0rc3/airflow/providers/amazon/aws/operators/dms.py +0 -279
  119. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/LICENSE +0 -0
  120. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/__init__.py +0 -0
  121. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/assets/__init__.py +0 -0
  122. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/assets/s3.py +0 -0
  123. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/__init__.py +0 -0
  124. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/avp/__init__.py +0 -0
  125. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/avp/entities.py +0 -0
  126. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/avp/schema.json +0 -0
  127. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/cli/__init__.py +0 -0
  128. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/cli/avp_commands.py +0 -0
  129. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/cli/definition.py +0 -0
  130. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/constants.py +0 -0
  131. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/security_manager/__init__.py +0 -0
  132. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/security_manager/aws_security_manager_override.py +0 -0
  133. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/user.py +0 -0
  134. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/views/__init__.py +0 -0
  135. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/auth_manager/views/auth.py +0 -0
  136. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/exceptions.py +0 -0
  137. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/Dockerfile +0 -0
  138. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/__init__.py +0 -0
  139. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/batch/__init__.py +0 -0
  140. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/batch/batch_executor_config.py +0 -0
  141. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/batch/boto_schema.py +0 -0
  142. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/ecs/__init__.py +0 -0
  143. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/ecs/boto_schema.py +0 -0
  144. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/ecs/ecs_executor_config.py +0 -0
  145. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/utils/__init__.py +0 -0
  146. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/utils/base_config_keys.py +0 -0
  147. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/executors/utils/exponential_backoff_retry.py +0 -0
  148. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/fs/__init__.py +0 -0
  149. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/__init__.py +0 -0
  150. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/athena_sql.py +0 -0
  151. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/base_aws.py +0 -0
  152. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/batch_client.py +0 -0
  153. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/batch_waiters.json +0 -0
  154. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/batch_waiters.py +0 -0
  155. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/bedrock.py +0 -0
  156. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/chime.py +0 -0
  157. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/cloud_formation.py +0 -0
  158. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/comprehend.py +0 -0
  159. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/datasync.py +0 -0
  160. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/ec2.py +0 -0
  161. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/ecr.py +0 -0
  162. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/ecs.py +0 -0
  163. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/elasticache_replication_group.py +0 -0
  164. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/emr.py +0 -0
  165. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/eventbridge.py +0 -0
  166. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/glacier.py +0 -0
  167. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/glue_catalog.py +0 -0
  168. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/glue_crawler.py +0 -0
  169. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/glue_databrew.py +0 -0
  170. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/kinesis_analytics.py +0 -0
  171. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/lambda_function.py +0 -0
  172. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/neptune.py +0 -0
  173. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/opensearch_serverless.py +0 -0
  174. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/quicksight.py +0 -0
  175. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/rds.py +0 -0
  176. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/secrets_manager.py +0 -0
  177. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/sns.py +0 -0
  178. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/sqs.py +0 -0
  179. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/ssm.py +0 -0
  180. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/step_function.py +0 -0
  181. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/sts.py +0 -0
  182. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/hooks/verified_permissions.py +0 -0
  183. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/__init__.py +0 -0
  184. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/athena.py +0 -0
  185. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/base_aws.py +0 -0
  186. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/batch.py +0 -0
  187. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/emr.py +0 -0
  188. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/glue.py +0 -0
  189. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/logs.py +0 -0
  190. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/links/step_function.py +0 -0
  191. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/log/__init__.py +0 -0
  192. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/log/cloudwatch_task_handler.py +0 -0
  193. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/log/s3_task_handler.py +0 -0
  194. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/notifications/__init__.py +0 -0
  195. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/notifications/chime.py +0 -0
  196. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/__init__.py +0 -0
  197. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/appflow.py +0 -0
  198. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/operators/redshift_data.py +0 -0
  199. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/secrets/__init__.py +0 -0
  200. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/secrets/secrets_manager.py +0 -0
  201. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/secrets/systems_manager.py +0 -0
  202. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/sensors/__init__.py +0 -0
  203. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/__init__.py +0 -0
  204. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/transfers/http_to_s3.py +0 -0
  205. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/README.md +0 -0
  206. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/__init__.py +0 -0
  207. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/batch.py +0 -0
  208. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/bedrock.py +0 -0
  209. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/comprehend.py +0 -0
  210. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/ec2.py +0 -0
  211. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/ecs.py +0 -0
  212. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/eks.py +0 -0
  213. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/emr.py +0 -0
  214. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/glue_crawler.py +0 -0
  215. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/glue_databrew.py +0 -0
  216. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/kinesis_analytics.py +0 -0
  217. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/lambda_function.py +0 -0
  218. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/neptune.py +0 -0
  219. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/opensearch_serverless.py +0 -0
  220. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/rds.py +0 -0
  221. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/triggers/step_function.py +0 -0
  222. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/connection_wrapper.py +0 -0
  223. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/eks_get_token.py +0 -0
  224. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/emailer.py +0 -0
  225. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/identifiers.py +0 -0
  226. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/mixins.py +0 -0
  227. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/openlineage.py +0 -0
  228. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/rds.py +0 -0
  229. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/redshift.py +0 -0
  230. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/sagemaker.py +0 -0
  231. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/sqs.py +0 -0
  232. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/suppress.py +0 -0
  233. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/tags.py +0 -0
  234. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/utils/waiter_with_logging.py +0 -0
  235. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/README.md +0 -0
  236. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/__init__.py +0 -0
  237. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/appflow.json +0 -0
  238. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/athena.json +0 -0
  239. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/base_waiter.py +0 -0
  240. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/batch.json +0 -0
  241. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/bedrock-agent.json +0 -0
  242. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/bedrock.json +0 -0
  243. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/comprehend.json +0 -0
  244. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/databrew.json +0 -0
  245. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/dynamodb.json +0 -0
  246. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/ecs.json +0 -0
  247. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/eks.json +0 -0
  248. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/emr-containers.json +0 -0
  249. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/emr-serverless.json +0 -0
  250. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/emr.json +0 -0
  251. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/glue.json +0 -0
  252. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/kinesisanalyticsv2.json +0 -0
  253. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/neptune.json +0 -0
  254. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/opensearchserverless.json +0 -0
  255. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/rds.json +0 -0
  256. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/redshift.json +0 -0
  257. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/sagemaker.json +0 -0
  258. {apache_airflow_providers_amazon-9.1.0rc3 → apache_airflow_providers_amazon-9.2.0}/airflow/providers/amazon/aws/waiters/stepfunctions.json +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: apache-airflow-providers-amazon
3
- Version: 9.1.0rc3
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.3.1rc0
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
@@ -35,16 +35,13 @@ Requires-Dist: python3-saml>=1.16.0
35
35
  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
- 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"
38
+ Requires-Dist: apache-airflow-providers-apache-hive ; extra == "apache-hive"
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
- Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == "microsoft.azure"
44
+ Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == "microsoft-azure"
48
45
  Requires-Dist: apache-airflow-providers-mongo ; extra == "mongo"
49
46
  Requires-Dist: apache-airflow-providers-openlineage ; extra == "openlineage"
50
47
  Requires-Dist: pandas>=2.1.2,<2.2 ; extra == "pandas" and (python_version>="3.9")
@@ -54,23 +51,20 @@ 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
- Provides-Extra: apache.hive
65
- Provides-Extra: cncf.kubernetes
66
- Provides-Extra: common.compat
67
- Provides-Extra: common.sql
61
+ Provides-Extra: apache-hive
62
+ Provides-Extra: cncf-kubernetes
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
- Provides-Extra: microsoft.azure
67
+ Provides-Extra: microsoft-azure
74
68
  Provides-Extra: mongo
75
69
  Provides-Extra: openlineage
76
70
  Provides-Extra: pandas
@@ -123,7 +117,7 @@ Provides-Extra: ssh
123
117
 
124
118
  Package ``apache-airflow-providers-amazon``
125
119
 
126
- Release: ``9.1.0.rc3``
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,9 +147,9 @@ 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``
158
- ``apache-airflow-providers-common-sql`` ``>=1.3.1``
150
+ ``apache-airflow`` ``>=2.9.0``
151
+ ``apache-airflow-providers-common-compat`` ``>=1.3.0``
152
+ ``apache-airflow-providers-common-sql`` ``>=1.20.0``
159
153
  ``apache-airflow-providers-http``
160
154
  ``boto3`` ``>=1.34.90``
161
155
  ``botocore`` ``>=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>`_.
@@ -42,7 +42,7 @@
42
42
 
43
43
  Package ``apache-airflow-providers-amazon``
44
44
 
45
- Release: ``9.1.0.rc3``
45
+ Release: ``9.2.0``
46
46
 
47
47
 
48
48
  Amazon integration (including `Amazon Web Services (AWS) <https://aws.amazon.com/>`__).
@@ -55,7 +55,7 @@ This is a provider package for ``amazon`` provider. All classes for this provide
55
55
  are in ``airflow.providers.amazon`` 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-amazon/9.1.0/>`_.
58
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.2.0/>`_.
59
59
 
60
60
  Installation
61
61
  ------------
@@ -72,9 +72,9 @@ Requirements
72
72
  ========================================== ======================
73
73
  PIP package Version required
74
74
  ========================================== ======================
75
- ``apache-airflow`` ``>=2.8.0``
76
- ``apache-airflow-providers-common-compat`` ``>=1.2.1``
77
- ``apache-airflow-providers-common-sql`` ``>=1.3.1``
75
+ ``apache-airflow`` ``>=2.9.0``
76
+ ``apache-airflow-providers-common-compat`` ``>=1.3.0``
77
+ ``apache-airflow-providers-common-sql`` ``>=1.20.0``
78
78
  ``apache-airflow-providers-http``
79
79
  ``boto3`` ``>=1.34.90``
80
80
  ``botocore`` ``>=1.34.90``
@@ -121,4 +121,4 @@ Dependent package
121
121
  ====================================================================================================================== ===================
122
122
 
123
123
  The changelog for the provider package can be found in the
124
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.1.0/changelog.html>`_.
124
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/9.2.0/changelog.html>`_.
@@ -29,11 +29,11 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "9.1.0"
32
+ __version__ = "9.2.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
- "2.8.0"
35
+ "2.9.0"
36
36
  ):
37
37
  raise RuntimeError(
38
- f"The package `apache-airflow-providers-amazon:{__version__}` needs Apache Airflow 2.8.0+"
38
+ f"The package `apache-airflow-providers-amazon:{__version__}` needs Apache Airflow 2.9.0+"
39
39
  )
@@ -17,9 +17,10 @@
17
17
  from __future__ import annotations
18
18
 
19
19
  import json
20
+ from collections.abc import Sequence
20
21
  from functools import cached_property
21
22
  from pathlib import Path
22
- from typing import TYPE_CHECKING, Sequence, TypedDict
23
+ from typing import TYPE_CHECKING, TypedDict
23
24
 
24
25
  from airflow.configuration import conf
25
26
  from airflow.exceptions import AirflowException
@@ -19,8 +19,9 @@ from __future__ import annotations
19
19
  import argparse
20
20
  import warnings
21
21
  from collections import defaultdict
22
+ from collections.abc import Container, Sequence
22
23
  from functools import cached_property
23
- from typing import TYPE_CHECKING, Container, Sequence, cast
24
+ from typing import TYPE_CHECKING, cast
24
25
 
25
26
  from flask import session, url_for
26
27
 
@@ -80,16 +81,6 @@ class AwsAuthManager(BaseAuthManager):
80
81
  """
81
82
 
82
83
  def __init__(self, appbuilder: AirflowAppBuilder) -> None:
83
- from packaging.version import Version
84
-
85
- from airflow.version import version
86
-
87
- # TODO: remove this if block when min_airflow_version is set to higher than 2.9.0
88
- if Version(version) < Version("2.9"):
89
- raise AirflowOptionalProviderFeatureException(
90
- "``AwsAuthManager`` is compatible with Airflow versions >= 2.9."
91
- )
92
-
93
84
  super().__init__(appbuilder)
94
85
  self._check_avp_schema_version()
95
86
 
@@ -430,7 +421,8 @@ class AwsAuthManager(BaseAuthManager):
430
421
  ]
431
422
 
432
423
  def register_views(self) -> None:
433
- self.appbuilder.add_view_no_menu(AwsAuthManagerAuthenticationViews())
424
+ if self.appbuilder:
425
+ self.appbuilder.add_view_no_menu(AwsAuthManagerAuthenticationViews())
434
426
 
435
427
  @staticmethod
436
428
  def _get_menu_item_request(resource_name: str) -> IsAuthorizedRequest:
@@ -21,9 +21,10 @@ from __future__ import annotations
21
21
 
22
22
  import time
23
23
  from collections import deque
24
+ from collections.abc import Sequence
24
25
  from contextlib import suppress
25
26
  from copy import deepcopy
26
- from typing import TYPE_CHECKING, Any, Dict, List, Sequence
27
+ from typing import TYPE_CHECKING, Any
27
28
 
28
29
  from botocore.exceptions import ClientError, NoCredentialsError
29
30
 
@@ -55,8 +56,8 @@ from airflow.providers.amazon.aws.executors.batch.utils import (
55
56
  )
56
57
  from airflow.utils.state import State
57
58
 
58
- CommandType = List[str]
59
- ExecutorConfigType = Dict[str, Any]
59
+ CommandType = list[str]
60
+ ExecutorConfigType = dict[str, Any]
60
61
 
61
62
  INVALID_CREDENTIALS_EXCEPTIONS = [
62
63
  "ExpiredTokenException",
@@ -19,7 +19,7 @@ from __future__ import annotations
19
19
  import datetime
20
20
  from collections import defaultdict
21
21
  from dataclasses import dataclass
22
- from typing import TYPE_CHECKING, Any, Dict, List
22
+ from typing import TYPE_CHECKING, Any
23
23
 
24
24
  from airflow.providers.amazon.aws.executors.utils.base_config_keys import BaseConfigKeys
25
25
  from airflow.utils.state import State
@@ -27,8 +27,8 @@ from airflow.utils.state import State
27
27
  if TYPE_CHECKING:
28
28
  from airflow.models.taskinstance import TaskInstanceKey
29
29
 
30
- CommandType = List[str]
31
- ExecutorConfigType = Dict[str, Any]
30
+ CommandType = list[str]
31
+ ExecutorConfigType = dict[str, Any]
32
32
 
33
33
  CONFIG_GROUP_NAME = "aws_batch_executor"
34
34
 
@@ -25,9 +25,10 @@ from __future__ import annotations
25
25
 
26
26
  import time
27
27
  from collections import defaultdict, deque
28
+ from collections.abc import Sequence
28
29
  from contextlib import suppress
29
30
  from copy import deepcopy
30
- from typing import TYPE_CHECKING, Sequence
31
+ from typing import TYPE_CHECKING
31
32
 
32
33
  from botocore.exceptions import ClientError, NoCredentialsError
33
34
 
@@ -26,7 +26,7 @@ from __future__ import annotations
26
26
  import datetime
27
27
  from collections import defaultdict
28
28
  from dataclasses import dataclass
29
- from typing import TYPE_CHECKING, Any, Callable, Dict, List
29
+ from typing import TYPE_CHECKING, Any, Callable
30
30
 
31
31
  from inflection import camelize
32
32
 
@@ -36,9 +36,9 @@ from airflow.utils.state import State
36
36
  if TYPE_CHECKING:
37
37
  from airflow.models.taskinstance import TaskInstanceKey
38
38
 
39
- CommandType = List[str]
39
+ CommandType = list[str]
40
40
  ExecutorConfigFunctionType = Callable[[CommandType], dict]
41
- ExecutorConfigType = Dict[str, Any]
41
+ ExecutorConfigType = dict[str, Any]
42
42
 
43
43
  ECS_LAUNCH_TYPE_EC2 = "EC2"
44
44
  ECS_LAUNCH_TYPE_FARGATE = "FARGATE"
@@ -19,7 +19,7 @@ from __future__ import annotations
19
19
  import asyncio
20
20
  import logging
21
21
  from functools import partial
22
- from typing import TYPE_CHECKING, Any, Callable, Dict
22
+ from typing import TYPE_CHECKING, Any, Callable
23
23
 
24
24
  import requests
25
25
  from botocore import UNSIGNED
@@ -32,7 +32,7 @@ if TYPE_CHECKING:
32
32
  from fsspec import AbstractFileSystem
33
33
 
34
34
 
35
- Properties = Dict[str, str]
35
+ Properties = dict[str, str]
36
36
 
37
37
  S3_PROXY_URI = "proxy-uri"
38
38
 
@@ -16,7 +16,15 @@
16
16
  # under the License.
17
17
  from __future__ import annotations
18
18
 
19
- from typing import TYPE_CHECKING
19
+ from collections.abc import Sequence
20
+ from typing import TYPE_CHECKING, cast
21
+
22
+ from mypy_boto3_appflow.type_defs import (
23
+ DestinationFlowConfigTypeDef,
24
+ SourceFlowConfigTypeDef,
25
+ TaskTypeDef,
26
+ TriggerConfigTypeDef,
27
+ )
20
28
 
21
29
  from airflow.providers.amazon.aws.hooks.base_aws import AwsGenericHook
22
30
  from airflow.providers.amazon.aws.utils.waiter_with_logging import wait
@@ -117,9 +125,11 @@ class AppflowHook(AwsGenericHook["AppflowClient"]):
117
125
 
118
126
  self.conn.update_flow(
119
127
  flowName=response["flowName"],
120
- destinationFlowConfigList=response["destinationFlowConfigList"],
121
- sourceFlowConfig=response["sourceFlowConfig"],
122
- triggerConfig=response["triggerConfig"],
128
+ destinationFlowConfigList=cast(
129
+ Sequence[DestinationFlowConfigTypeDef], response["destinationFlowConfigList"]
130
+ ),
131
+ sourceFlowConfig=cast(SourceFlowConfigTypeDef, response["sourceFlowConfig"]),
132
+ triggerConfig=cast(TriggerConfigTypeDef, response["triggerConfig"]),
123
133
  description=response.get("description", "Flow description."),
124
- tasks=tasks,
134
+ tasks=cast(Sequence[TaskTypeDef], tasks),
125
135
  )
@@ -25,7 +25,8 @@ This module contains AWS Athena hook.
25
25
 
26
26
  from __future__ import annotations
27
27
 
28
- from typing import TYPE_CHECKING, Any, Collection
28
+ from collections.abc import Collection
29
+ from typing import TYPE_CHECKING, Any
29
30
 
30
31
  from airflow.exceptions import AirflowException
31
32
  from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
@@ -18,7 +18,12 @@
18
18
  from __future__ import annotations
19
19
 
20
20
  import json
21
+ from datetime import datetime
21
22
  from enum import Enum
23
+ from typing import Any
24
+
25
+ from botocore.exceptions import ClientError
26
+ from dateutil import parser
22
27
 
23
28
  from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
24
29
 
@@ -219,3 +224,159 @@ class DmsHook(AwsBaseHook):
219
224
  ],
220
225
  WithoutSettings=True,
221
226
  )
227
+
228
+ def describe_replication_configs(self, filters: list[dict] | None = None, **kwargs) -> list[dict]:
229
+ """
230
+ Return list of serverless replication configs.
231
+
232
+ .. seealso::
233
+ - :external+boto3:py:meth:`DatabaseMigrationService.Client.describe_replication_configs`
234
+
235
+ :param filters: List of filter objects
236
+ :return: List of replication tasks
237
+ """
238
+ filters = filters if filters is not None else []
239
+
240
+ try:
241
+ resp = self.conn.describe_replication_configs(Filters=filters, **kwargs)
242
+ return resp.get("ReplicationConfigs", [])
243
+ except Exception as ex:
244
+ self.log.error("Error while describing replication configs: %s", str(ex))
245
+ raise ex
246
+
247
+ def create_replication_config(
248
+ self,
249
+ replication_config_id: str,
250
+ source_endpoint_arn: str,
251
+ target_endpoint_arn: str,
252
+ compute_config: dict[str, Any],
253
+ replication_type: str,
254
+ table_mappings: str,
255
+ additional_config_kwargs: dict[str, Any] | None = None,
256
+ **kwargs,
257
+ ):
258
+ """
259
+ Create an AWS DMS Serverless configuration that can be used to start an DMS Serverless replication.
260
+
261
+ .. seealso::
262
+ - :external+boto3:py:meth:`DatabaseMigrationService.Client.create_replication_config`
263
+
264
+ :param replicationConfigId: Unique identifier used to create a ReplicationConfigArn.
265
+ :param sourceEndpointArn: ARN of the source endpoint
266
+ :param targetEndpointArn: ARN of the target endpoint
267
+ :param computeConfig: Parameters for provisioning an DMS Serverless replication.
268
+ :param replicationType: type of DMS Serverless replication
269
+ :param tableMappings: JSON table mappings
270
+ :param tags: Key-value tag pairs
271
+ :param resourceId: Unique value or name that you set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource.
272
+ :param supplementalSettings: JSON settings for specifying supplemental data
273
+ :param replicationSettings: JSON settings for DMS Serverless replications
274
+
275
+ :return: ReplicationConfigArn
276
+
277
+ """
278
+ if additional_config_kwargs is None:
279
+ additional_config_kwargs = {}
280
+ try:
281
+ resp = self.conn.create_replication_config(
282
+ ReplicationConfigIdentifier=replication_config_id,
283
+ SourceEndpointArn=source_endpoint_arn,
284
+ TargetEndpointArn=target_endpoint_arn,
285
+ ComputeConfig=compute_config,
286
+ ReplicationType=replication_type,
287
+ TableMappings=table_mappings,
288
+ **additional_config_kwargs,
289
+ )
290
+ arn = resp.get("ReplicationConfig", {}).get("ReplicationConfigArn")
291
+ self.log.info("Successfully created replication config: %s", arn)
292
+ return arn
293
+
294
+ except ClientError as err:
295
+ err_str = f"Error: {err.get('Error','').get('Code','')}: {err.get('Error','').get('Message','')}"
296
+ self.log.error("Error while creating replication config: %s", err_str)
297
+ raise err
298
+
299
+ def describe_replications(self, filters: list[dict[str, Any]] | None = None, **kwargs) -> list[dict]:
300
+ """
301
+ Return list of serverless replications.
302
+
303
+ .. seealso::
304
+ - :external+boto3:py:meth:`DatabaseMigrationService.Client.describe_replications`
305
+
306
+ :param filters: List of filter objects
307
+ :return: List of replications
308
+ """
309
+ filters = filters if filters is not None else []
310
+ try:
311
+ resp = self.conn.describe_replications(Filters=filters, **kwargs)
312
+ return resp.get("Replications", [])
313
+ except Exception as ex:
314
+ self.log.error("Error while describing replications: %s", str(ex))
315
+ raise ex
316
+
317
+ def delete_replication_config(
318
+ self, replication_config_arn: str, delay: int = 60, max_attempts: int = 120
319
+ ):
320
+ """
321
+ Delete an AWS DMS Serverless configuration.
322
+
323
+ .. seealso::
324
+ - :external+boto3:py:meth:`DatabaseMigrationService.Client.delete_replication_config`
325
+
326
+ :param replication_config_arn: ReplicationConfigArn
327
+ """
328
+ try:
329
+ self.log.info("Deleting replication config: %s", replication_config_arn)
330
+
331
+ self.conn.delete_replication_config(ReplicationConfigArn=replication_config_arn)
332
+
333
+ except ClientError as err:
334
+ err_str = (
335
+ f"Error: {err.get('Error', '').get('Code', '')}: {err.get('Error', '').get('Message', '')}"
336
+ )
337
+ self.log.error("Error while deleting replication config: %s", err_str)
338
+ raise err
339
+
340
+ def start_replication(
341
+ self,
342
+ replication_config_arn: str,
343
+ start_replication_type: str,
344
+ cdc_start_time: datetime | str | None = None,
345
+ cdc_start_pos: str | None = None,
346
+ cdc_stop_pos: str | None = None,
347
+ ):
348
+ additional_args: dict[str, Any] = {}
349
+
350
+ if cdc_start_time:
351
+ additional_args["CdcStartTime"] = (
352
+ cdc_start_time if isinstance(cdc_start_time, datetime) else parser.parse(cdc_start_time)
353
+ )
354
+ if cdc_start_pos:
355
+ additional_args["CdcStartPosition"] = cdc_start_pos
356
+ if cdc_stop_pos:
357
+ additional_args["CdcStopPosition"] = cdc_stop_pos
358
+
359
+ try:
360
+ resp = self.conn.start_replication(
361
+ ReplicationConfigArn=replication_config_arn,
362
+ StartReplicationType=start_replication_type,
363
+ **additional_args,
364
+ )
365
+
366
+ return resp
367
+ except Exception as ex:
368
+ self.log.error("Error while starting replication: %s", str(ex))
369
+ raise ex
370
+
371
+ def stop_replication(self, replication_config_arn: str):
372
+ resp = self.conn.stop_replication(ReplicationConfigArn=replication_config_arn)
373
+ return resp
374
+
375
+ def get_provision_status(self, replication_config_arn: str) -> str:
376
+ """Get the provisioning status for a serverless replication."""
377
+ result = self.describe_replications(
378
+ filters=[{"Name": "replication-config-arn", "Values": [replication_config_arn]}]
379
+ )
380
+
381
+ provision_status = result[0].get("ProvisionData", {}).get("ProvisionState", "")
382
+ return provision_status
@@ -19,8 +19,9 @@
19
19
 
20
20
  from __future__ import annotations
21
21
 
22
+ from collections.abc import Iterable
22
23
  from functools import cached_property
23
- from typing import TYPE_CHECKING, Iterable
24
+ from typing import TYPE_CHECKING
24
25
 
25
26
  from botocore.exceptions import ClientError
26
27
 
@@ -22,10 +22,11 @@ import base64
22
22
  import json
23
23
  import sys
24
24
  import tempfile
25
+ from collections.abc import Generator
25
26
  from contextlib import contextmanager
26
27
  from enum import Enum
27
28
  from functools import partial
28
- from typing import Callable, Generator
29
+ from typing import Callable
29
30
 
30
31
  from botocore.exceptions import ClientError
31
32
  from botocore.signers import RequestSigner
@@ -85,8 +86,8 @@ COMMAND = """
85
86
  exit 1
86
87
  fi
87
88
 
88
- expiration_timestamp=$(echo "$output" | grep -oP 'expirationTimestamp:\s*\K[^,]+')
89
- token=$(echo "$output" | grep -oP 'token:\s*\K[^,]+')
89
+ expiration_timestamp=$(echo "$output" | grep -oP 'expirationTimestamp: \\K[^,]+')
90
+ token=$(echo "$output" | grep -oP 'token: \\K[^,]+')
90
91
 
91
92
  json_string=$(printf '{{"kind": "ExecCredential","apiVersion": \
92
93
  "client.authentication.k8s.io/v1alpha1","spec": {{}},"status": \
@@ -282,13 +282,16 @@ class GlueJobHook(AwsBaseHook):
282
282
  log_group_error, continuation_tokens.error_stream_continuation
283
283
  )
284
284
 
285
- def job_completion(self, job_name: str, run_id: str, verbose: bool = False) -> dict[str, str]:
285
+ def job_completion(
286
+ self, job_name: str, run_id: str, verbose: bool = False, sleep_before_return: int = 0
287
+ ) -> dict[str, str]:
286
288
  """
287
289
  Wait until Glue job with job_name finishes; return final state if finished or raises AirflowException.
288
290
 
289
291
  :param job_name: unique job name per AWS account
290
292
  :param run_id: The job-run ID of the predecessor job run
291
293
  :param verbose: If True, more Glue Job Run logs show in the Airflow Task Logs. (default: False)
294
+ :param sleep_before_return: time in seconds to wait before returning final status.
292
295
  :return: Dict of JobRunState and JobRunId
293
296
  """
294
297
  next_log_tokens = self.LogContinuationTokens()
@@ -296,6 +299,7 @@ class GlueJobHook(AwsBaseHook):
296
299
  job_run_state = self.get_job_state(job_name, run_id)
297
300
  ret = self._handle_state(job_run_state, job_name, run_id, verbose, next_log_tokens)
298
301
  if ret:
302
+ time.sleep(sleep_before_return)
299
303
  return ret
300
304
  else:
301
305
  time.sleep(self.job_poll_interval)
@@ -19,7 +19,7 @@
19
19
 
20
20
  from __future__ import annotations
21
21
 
22
- from typing import Iterable
22
+ from collections.abc import Iterable
23
23
 
24
24
  from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
25
25
 
@@ -18,7 +18,8 @@
18
18
  from __future__ import annotations
19
19
 
20
20
  import asyncio
21
- from typing import Any, AsyncGenerator, Generator
21
+ from collections.abc import AsyncGenerator, Generator
22
+ from typing import Any
22
23
 
23
24
  from botocore.exceptions import ClientError
24
25
 
@@ -16,7 +16,8 @@
16
16
  # under the License.
17
17
  from __future__ import annotations
18
18
 
19
- from typing import Any, Sequence
19
+ from collections.abc import Sequence
20
+ from typing import Any
20
21
 
21
22
  from airflow.providers.amazon.aws.hooks.base_aws import AwsBaseHook
22
23
 
@@ -93,8 +94,8 @@ class RedshiftHook(AwsBaseHook):
93
94
 
94
95
  async def cluster_status_async(self, cluster_identifier: str) -> str:
95
96
  async with self.async_conn as client:
96
- response = await client.describe_clusters(ClusterIdentifier=cluster_identifier)["Clusters"]
97
- return response[0]["ClusterStatus"] if response else None
97
+ response = await client.describe_clusters(ClusterIdentifier=cluster_identifier)
98
+ return response["Clusters"][0]["ClusterStatus"] if response else None
98
99
 
99
100
  def delete_cluster(
100
101
  self,
@@ -18,9 +18,10 @@
18
18
  from __future__ import annotations
19
19
 
20
20
  import time
21
+ from collections.abc import Iterable
21
22
  from dataclasses import dataclass
22
23
  from pprint import pformat
23
- from typing import TYPE_CHECKING, Any, Iterable
24
+ from typing import TYPE_CHECKING, Any
24
25
  from uuid import UUID
25
26
 
26
27
  from pendulum import duration