apache-airflow-providers-amazon 8.27.0rc2__tar.gz → 8.28.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 (254) hide show
  1. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/PKG-INFO +12 -12
  2. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/README.rst +4 -4
  3. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/__init__.py +3 -3
  4. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/batch_client.py +3 -0
  5. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/rds.py +2 -2
  6. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/batch.py +8 -0
  7. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/redshift_data.py +3 -3
  8. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/athena.py +2 -6
  9. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/batch.py +7 -33
  10. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/bedrock.py +1 -4
  11. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/cloud_formation.py +2 -11
  12. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/comprehend.py +1 -7
  13. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/dms.py +5 -11
  14. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/ec2.py +2 -6
  15. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/ecs.py +4 -6
  16. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/eks.py +5 -7
  17. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/emr.py +9 -36
  18. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/glacier.py +2 -6
  19. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/glue.py +0 -9
  20. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/glue_catalog_partition.py +2 -6
  21. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/glue_crawler.py +2 -6
  22. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/kinesis_analytics.py +1 -4
  23. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/lambda_function.py +4 -6
  24. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/opensearch_serverless.py +1 -4
  25. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/quicksight.py +2 -5
  26. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/redshift_cluster.py +2 -6
  27. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/s3.py +3 -14
  28. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/sagemaker.py +4 -6
  29. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/sqs.py +3 -11
  30. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/step_function.py +2 -6
  31. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/dynamodb_to_s3.py +41 -10
  32. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/eks.py +2 -4
  33. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/task_log_fetcher.py +12 -0
  34. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/get_provider_info.py +3 -2
  35. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/pyproject.toml +8 -8
  36. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/LICENSE +0 -0
  37. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/__init__.py +0 -0
  38. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/__init__.py +0 -0
  39. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/avp/__init__.py +0 -0
  40. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/avp/entities.py +0 -0
  41. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/avp/facade.py +0 -0
  42. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/avp/schema.json +0 -0
  43. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/aws_auth_manager.py +0 -0
  44. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/cli/__init__.py +0 -0
  45. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/cli/avp_commands.py +0 -0
  46. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/cli/definition.py +0 -0
  47. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/cli/idc_commands.py +0 -0
  48. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/constants.py +0 -0
  49. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/security_manager/__init__.py +0 -0
  50. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/security_manager/aws_security_manager_override.py +0 -0
  51. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/user.py +0 -0
  52. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/views/__init__.py +0 -0
  53. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/auth_manager/views/auth.py +0 -0
  54. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/datasets/__init__.py +0 -0
  55. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/datasets/s3.py +0 -0
  56. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/exceptions.py +0 -0
  57. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/Dockerfile +0 -0
  58. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/__init__.py +0 -0
  59. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/batch/__init__.py +0 -0
  60. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/batch/batch_executor.py +0 -0
  61. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/batch/batch_executor_config.py +0 -0
  62. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/batch/boto_schema.py +0 -0
  63. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/batch/utils.py +0 -0
  64. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/ecs/__init__.py +0 -0
  65. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/ecs/boto_schema.py +0 -0
  66. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/ecs/ecs_executor.py +0 -0
  67. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/ecs/ecs_executor_config.py +0 -0
  68. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/ecs/utils.py +0 -0
  69. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/utils/__init__.py +0 -0
  70. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/utils/base_config_keys.py +0 -0
  71. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/executors/utils/exponential_backoff_retry.py +0 -0
  72. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/fs/__init__.py +0 -0
  73. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/fs/s3.py +0 -0
  74. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/__init__.py +0 -0
  75. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/appflow.py +0 -0
  76. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/athena.py +0 -0
  77. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/athena_sql.py +0 -0
  78. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/base_aws.py +0 -0
  79. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/batch_waiters.json +0 -0
  80. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/batch_waiters.py +0 -0
  81. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/bedrock.py +0 -0
  82. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/chime.py +0 -0
  83. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/cloud_formation.py +0 -0
  84. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/comprehend.py +0 -0
  85. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/datasync.py +0 -0
  86. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/dms.py +0 -0
  87. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/dynamodb.py +0 -0
  88. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/ec2.py +0 -0
  89. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/ecr.py +0 -0
  90. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/ecs.py +0 -0
  91. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/eks.py +0 -0
  92. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/elasticache_replication_group.py +0 -0
  93. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/emr.py +0 -0
  94. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/eventbridge.py +0 -0
  95. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/glacier.py +0 -0
  96. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/glue.py +0 -0
  97. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/glue_catalog.py +0 -0
  98. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/glue_crawler.py +0 -0
  99. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/glue_databrew.py +0 -0
  100. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/kinesis.py +0 -0
  101. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/kinesis_analytics.py +0 -0
  102. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/lambda_function.py +0 -0
  103. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/logs.py +0 -0
  104. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/neptune.py +0 -0
  105. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/opensearch_serverless.py +0 -0
  106. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/quicksight.py +0 -0
  107. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/redshift_cluster.py +0 -0
  108. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/redshift_data.py +0 -0
  109. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/redshift_sql.py +0 -0
  110. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/s3.py +0 -0
  111. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/sagemaker.py +0 -0
  112. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/secrets_manager.py +0 -0
  113. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/ses.py +0 -0
  114. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/sns.py +0 -0
  115. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/sqs.py +0 -0
  116. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/ssm.py +0 -0
  117. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/step_function.py +0 -0
  118. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/sts.py +0 -0
  119. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/hooks/verified_permissions.py +0 -0
  120. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/__init__.py +0 -0
  121. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/athena.py +0 -0
  122. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/base_aws.py +0 -0
  123. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/batch.py +0 -0
  124. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/emr.py +0 -0
  125. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/glue.py +0 -0
  126. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/logs.py +0 -0
  127. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/links/step_function.py +0 -0
  128. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/log/__init__.py +0 -0
  129. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/log/cloudwatch_task_handler.py +0 -0
  130. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/log/s3_task_handler.py +0 -0
  131. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/notifications/__init__.py +0 -0
  132. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/notifications/chime.py +0 -0
  133. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/notifications/sns.py +0 -0
  134. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/notifications/sqs.py +0 -0
  135. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/__init__.py +0 -0
  136. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/appflow.py +0 -0
  137. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/athena.py +0 -0
  138. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/base_aws.py +0 -0
  139. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/bedrock.py +0 -0
  140. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/cloud_formation.py +0 -0
  141. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/comprehend.py +0 -0
  142. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/datasync.py +0 -0
  143. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/dms.py +0 -0
  144. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/ec2.py +0 -0
  145. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/ecs.py +0 -0
  146. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/eks.py +0 -0
  147. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/emr.py +0 -0
  148. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/eventbridge.py +0 -0
  149. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/glacier.py +0 -0
  150. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/glue.py +0 -0
  151. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/glue_crawler.py +0 -0
  152. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/glue_databrew.py +0 -0
  153. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/kinesis_analytics.py +0 -0
  154. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/lambda_function.py +0 -0
  155. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/neptune.py +0 -0
  156. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/quicksight.py +0 -0
  157. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/rds.py +0 -0
  158. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/redshift_cluster.py +0 -0
  159. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/s3.py +0 -0
  160. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/sagemaker.py +0 -0
  161. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/sns.py +0 -0
  162. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/sqs.py +0 -0
  163. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/operators/step_function.py +0 -0
  164. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/secrets/__init__.py +0 -0
  165. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/secrets/secrets_manager.py +0 -0
  166. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/secrets/systems_manager.py +0 -0
  167. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/__init__.py +0 -0
  168. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/base_aws.py +0 -0
  169. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/dynamodb.py +0 -0
  170. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/sensors/rds.py +0 -0
  171. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/__init__.py +0 -0
  172. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/azure_blob_to_s3.py +0 -0
  173. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/base.py +0 -0
  174. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/exasol_to_s3.py +0 -0
  175. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/ftp_to_s3.py +0 -0
  176. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/gcs_to_s3.py +0 -0
  177. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/glacier_to_gcs.py +0 -0
  178. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/google_api_to_s3.py +0 -0
  179. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/hive_to_dynamodb.py +0 -0
  180. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/http_to_s3.py +0 -0
  181. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/imap_attachment_to_s3.py +0 -0
  182. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/local_to_s3.py +0 -0
  183. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/mongo_to_s3.py +0 -0
  184. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/redshift_to_s3.py +0 -0
  185. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/s3_to_dynamodb.py +0 -0
  186. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/s3_to_ftp.py +0 -0
  187. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/s3_to_redshift.py +0 -0
  188. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/s3_to_sftp.py +0 -0
  189. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/s3_to_sql.py +0 -0
  190. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/salesforce_to_s3.py +0 -0
  191. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/sftp_to_s3.py +0 -0
  192. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/transfers/sql_to_s3.py +0 -0
  193. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/README.md +0 -0
  194. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/__init__.py +0 -0
  195. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/athena.py +0 -0
  196. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/base.py +0 -0
  197. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/batch.py +0 -0
  198. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/bedrock.py +0 -0
  199. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/comprehend.py +0 -0
  200. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/ec2.py +0 -0
  201. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/ecs.py +0 -0
  202. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/emr.py +0 -0
  203. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/glue.py +0 -0
  204. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/glue_crawler.py +0 -0
  205. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/glue_databrew.py +0 -0
  206. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/kinesis_analytics.py +0 -0
  207. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/lambda_function.py +0 -0
  208. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/neptune.py +0 -0
  209. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/opensearch_serverless.py +0 -0
  210. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/rds.py +0 -0
  211. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/redshift_cluster.py +0 -0
  212. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/redshift_data.py +0 -0
  213. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/s3.py +0 -0
  214. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/sagemaker.py +0 -0
  215. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/sqs.py +0 -0
  216. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/triggers/step_function.py +0 -0
  217. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/__init__.py +0 -0
  218. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/connection_wrapper.py +0 -0
  219. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/eks_get_token.py +0 -0
  220. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/emailer.py +0 -0
  221. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/identifiers.py +0 -0
  222. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/mixins.py +0 -0
  223. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/rds.py +0 -0
  224. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/redshift.py +0 -0
  225. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/sagemaker.py +0 -0
  226. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/sqs.py +0 -0
  227. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/suppress.py +0 -0
  228. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/tags.py +0 -0
  229. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/waiter.py +0 -0
  230. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/utils/waiter_with_logging.py +0 -0
  231. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/README.md +0 -0
  232. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/__init__.py +0 -0
  233. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/appflow.json +0 -0
  234. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/athena.json +0 -0
  235. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/base_waiter.py +0 -0
  236. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/batch.json +0 -0
  237. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/bedrock-agent.json +0 -0
  238. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/bedrock.json +0 -0
  239. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/comprehend.json +0 -0
  240. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/databrew.json +0 -0
  241. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/dynamodb.json +0 -0
  242. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/ecs.json +0 -0
  243. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/eks.json +0 -0
  244. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/emr-containers.json +0 -0
  245. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/emr-serverless.json +0 -0
  246. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/emr.json +0 -0
  247. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/glue.json +0 -0
  248. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/kinesisanalyticsv2.json +0 -0
  249. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/neptune.json +0 -0
  250. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/opensearchserverless.json +0 -0
  251. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/rds.json +0 -0
  252. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/redshift.json +0 -0
  253. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/sagemaker.json +0 -0
  254. {apache_airflow_providers_amazon-8.27.0rc2 → apache_airflow_providers_amazon-8.28.0}/airflow/providers/amazon/aws/waiters/stepfunctions.json +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: apache-airflow-providers-amazon
3
- Version: 8.27.0rc2
3
+ Version: 8.28.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>
@@ -22,11 +22,11 @@ Classifier: Programming Language :: Python :: 3.11
22
22
  Classifier: Programming Language :: Python :: 3.12
23
23
  Classifier: Topic :: System :: Monitoring
24
24
  Requires-Dist: PyAthena>=3.0.10
25
- Requires-Dist: apache-airflow-providers-common-compat>=1.1.0rc0
26
- Requires-Dist: apache-airflow-providers-common-compat>=1.1.0rc0
27
- Requires-Dist: apache-airflow-providers-common-sql>=1.3.1rc0
25
+ Requires-Dist: apache-airflow-providers-common-compat>=1.1.0
26
+ Requires-Dist: apache-airflow-providers-common-compat>=1.1.0
27
+ Requires-Dist: apache-airflow-providers-common-sql>=1.3.1
28
28
  Requires-Dist: apache-airflow-providers-http
29
- Requires-Dist: apache-airflow>=2.7.0rc0
29
+ Requires-Dist: apache-airflow>=2.8.0
30
30
  Requires-Dist: asgiref>=2.3.0
31
31
  Requires-Dist: boto3>=1.34.90
32
32
  Requires-Dist: botocore>=1.34.90
@@ -38,7 +38,7 @@ Requires-Dist: sqlalchemy_redshift>=0.8.6
38
38
  Requires-Dist: watchtower>=3.0.0,<4
39
39
  Requires-Dist: aiobotocore[boto3]>=2.13.0 ; extra == "aiobotocore"
40
40
  Requires-Dist: apache-airflow-providers-apache-hive ; extra == "apache.hive"
41
- Requires-Dist: apache-airflow-providers-cncf-kubernetes>=7.2.0rc0 ; extra == "cncf.kubernetes"
41
+ Requires-Dist: apache-airflow-providers-cncf-kubernetes>=7.2.0 ; extra == "cncf.kubernetes"
42
42
  Requires-Dist: apache-airflow-providers-common-compat ; extra == "common.compat"
43
43
  Requires-Dist: apache-airflow-providers-common-sql ; extra == "common.sql"
44
44
  Requires-Dist: apache-airflow-providers-exasol ; extra == "exasol"
@@ -56,8 +56,8 @@ Requires-Dist: s3fs>=2023.10.0 ; extra == "s3fs"
56
56
  Requires-Dist: apache-airflow-providers-salesforce ; extra == "salesforce"
57
57
  Requires-Dist: apache-airflow-providers-ssh ; extra == "ssh"
58
58
  Project-URL: Bug Tracker, https://github.com/apache/airflow/issues
59
- Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.27.0/changelog.html
60
- Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.27.0
59
+ Project-URL: Changelog, https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.28.0/changelog.html
60
+ Project-URL: Documentation, https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.28.0
61
61
  Project-URL: Slack Chat, https://s.apache.org/airflow-slack
62
62
  Project-URL: Source Code, https://github.com/apache/airflow
63
63
  Project-URL: Twitter, https://twitter.com/ApacheAirflow
@@ -125,7 +125,7 @@ Provides-Extra: ssh
125
125
 
126
126
  Package ``apache-airflow-providers-amazon``
127
127
 
128
- Release: ``8.27.0.rc2``
128
+ Release: ``8.28.0``
129
129
 
130
130
 
131
131
  Amazon integration (including `Amazon Web Services (AWS) <https://aws.amazon.com/>`__).
@@ -138,7 +138,7 @@ This is a provider package for ``amazon`` provider. All classes for this provide
138
138
  are in ``airflow.providers.amazon`` python package.
139
139
 
140
140
  You can find package information and changelog for the provider
141
- in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.27.0/>`_.
141
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.28.0/>`_.
142
142
 
143
143
  Installation
144
144
  ------------
@@ -155,7 +155,7 @@ Requirements
155
155
  ========================================== ==================
156
156
  PIP package Version required
157
157
  ========================================== ==================
158
- ``apache-airflow`` ``>=2.7.0``
158
+ ``apache-airflow`` ``>=2.8.0``
159
159
  ``apache-airflow-providers-common-compat`` ``>=1.1.0``
160
160
  ``apache-airflow-providers-common-sql`` ``>=1.3.1``
161
161
  ``apache-airflow-providers-http``
@@ -205,4 +205,4 @@ Dependent package
205
205
  ====================================================================================================================== ===================
206
206
 
207
207
  The changelog for the provider package can be found in the
208
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.27.0/changelog.html>`_.
208
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.28.0/changelog.html>`_.
@@ -42,7 +42,7 @@
42
42
 
43
43
  Package ``apache-airflow-providers-amazon``
44
44
 
45
- Release: ``8.27.0.rc2``
45
+ Release: ``8.28.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/8.27.0/>`_.
58
+ in the `documentation <https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.28.0/>`_.
59
59
 
60
60
  Installation
61
61
  ------------
@@ -72,7 +72,7 @@ Requirements
72
72
  ========================================== ==================
73
73
  PIP package Version required
74
74
  ========================================== ==================
75
- ``apache-airflow`` ``>=2.7.0``
75
+ ``apache-airflow`` ``>=2.8.0``
76
76
  ``apache-airflow-providers-common-compat`` ``>=1.1.0``
77
77
  ``apache-airflow-providers-common-sql`` ``>=1.3.1``
78
78
  ``apache-airflow-providers-http``
@@ -122,4 +122,4 @@ Dependent package
122
122
  ====================================================================================================================== ===================
123
123
 
124
124
  The changelog for the provider package can be found in the
125
- `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.27.0/changelog.html>`_.
125
+ `changelog <https://airflow.apache.org/docs/apache-airflow-providers-amazon/8.28.0/changelog.html>`_.
@@ -29,11 +29,11 @@ from airflow import __version__ as airflow_version
29
29
 
30
30
  __all__ = ["__version__"]
31
31
 
32
- __version__ = "8.27.0"
32
+ __version__ = "8.28.0"
33
33
 
34
34
  if packaging.version.parse(packaging.version.parse(airflow_version).base_version) < packaging.version.parse(
35
- "2.7.0"
35
+ "2.8.0"
36
36
  ):
37
37
  raise RuntimeError(
38
- f"The package `apache-airflow-providers-amazon:{__version__}` needs Apache Airflow 2.7.0+"
38
+ f"The package `apache-airflow-providers-amazon:{__version__}` needs Apache Airflow 2.8.0+"
39
39
  )
@@ -103,6 +103,7 @@ class BatchProtocol(Protocol):
103
103
  parameters: dict,
104
104
  containerOverrides: dict,
105
105
  ecsPropertiesOverride: dict,
106
+ eksPropertiesOverride: dict,
106
107
  tags: dict,
107
108
  ) -> dict:
108
109
  """
@@ -122,6 +123,8 @@ class BatchProtocol(Protocol):
122
123
 
123
124
  :param ecsPropertiesOverride: the same parameter that boto3 will receive
124
125
 
126
+ :param eksPropertiesOverride: the same parameter that boto3 will receive
127
+
125
128
  :param tags: the same parameter that boto3 will receive
126
129
 
127
130
  :return: an API response
@@ -155,7 +155,7 @@ class RdsHook(AwsGenericHook["RDSClient"]):
155
155
  try:
156
156
  response = self.conn.describe_export_tasks(ExportTaskIdentifier=export_task_id)
157
157
  except self.conn.exceptions.ClientError as e:
158
- if e.response["Error"]["Code"] == "ExportTaskNotFoundFault":
158
+ if e.response["Error"]["Code"] in ("ExportTaskNotFound", "ExportTaskNotFoundFault"):
159
159
  raise AirflowNotFoundException(e)
160
160
  raise e
161
161
  return response["ExportTasks"][0]["Status"].lower()
@@ -196,7 +196,7 @@ class RdsHook(AwsGenericHook["RDSClient"]):
196
196
  try:
197
197
  response = self.conn.describe_event_subscriptions(SubscriptionName=subscription_name)
198
198
  except self.conn.exceptions.ClientError as e:
199
- if e.response["Error"]["Code"] == "SubscriptionNotFoundFault":
199
+ if e.response["Error"]["Code"] in ("SubscriptionNotFoundFault", "SubscriptionNotFound"):
200
200
  raise AirflowNotFoundException(e)
201
201
  raise e
202
202
  return response["EventSubscriptionsList"][0]["Status"].lower()
@@ -68,6 +68,7 @@ class BatchOperator(BaseOperator):
68
68
  :param overrides: DEPRECATED, use container_overrides instead with the same value.
69
69
  :param container_overrides: the `containerOverrides` parameter for boto3 (templated)
70
70
  :param ecs_properties_override: the `ecsPropertiesOverride` parameter for boto3 (templated)
71
+ :param eks_properties_override: the `eksPropertiesOverride` parameter for boto3 (templated)
71
72
  :param node_overrides: the `nodeOverrides` parameter for boto3 (templated)
72
73
  :param share_identifier: The share identifier for the job. Don't specify this parameter if the job queue
73
74
  doesn't have a scheduling policy.
@@ -116,6 +117,7 @@ class BatchOperator(BaseOperator):
116
117
  "container_overrides",
117
118
  "array_properties",
118
119
  "ecs_properties_override",
120
+ "eks_properties_override",
119
121
  "node_overrides",
120
122
  "parameters",
121
123
  "retry_strategy",
@@ -129,6 +131,7 @@ class BatchOperator(BaseOperator):
129
131
  "container_overrides": "json",
130
132
  "parameters": "json",
131
133
  "ecs_properties_override": "json",
134
+ "eks_properties_override": "json",
132
135
  "node_overrides": "json",
133
136
  "retry_strategy": "json",
134
137
  }
@@ -166,6 +169,7 @@ class BatchOperator(BaseOperator):
166
169
  container_overrides: dict | None = None,
167
170
  array_properties: dict | None = None,
168
171
  ecs_properties_override: dict | None = None,
172
+ eks_properties_override: dict | None = None,
169
173
  node_overrides: dict | None = None,
170
174
  share_identifier: str | None = None,
171
175
  scheduling_priority_override: int | None = None,
@@ -208,6 +212,7 @@ class BatchOperator(BaseOperator):
208
212
  )
209
213
 
210
214
  self.ecs_properties_override = ecs_properties_override
215
+ self.eks_properties_override = eks_properties_override
211
216
  self.node_overrides = node_overrides
212
217
  self.share_identifier = share_identifier
213
218
  self.scheduling_priority_override = scheduling_priority_override
@@ -307,6 +312,8 @@ class BatchOperator(BaseOperator):
307
312
  self.log.info("AWS Batch job - array properties: %s", self.array_properties)
308
313
  if self.ecs_properties_override:
309
314
  self.log.info("AWS Batch job - ECS properties: %s", self.ecs_properties_override)
315
+ if self.eks_properties_override:
316
+ self.log.info("AWS Batch job - EKS properties: %s", self.eks_properties_override)
310
317
  if self.node_overrides:
311
318
  self.log.info("AWS Batch job - node properties: %s", self.node_overrides)
312
319
 
@@ -319,6 +326,7 @@ class BatchOperator(BaseOperator):
319
326
  "tags": self.tags,
320
327
  "containerOverrides": self.container_overrides,
321
328
  "ecsPropertiesOverride": self.ecs_properties_override,
329
+ "eksPropertiesOverride": self.eks_properties_override,
322
330
  "nodeOverrides": self.node_overrides,
323
331
  "retryStrategy": self.retry_strategy,
324
332
  "shareIdentifier": self.share_identifier,
@@ -127,8 +127,8 @@ class RedshiftDataOperator(AwsBaseOperator[RedshiftDataHook]):
127
127
 
128
128
  # Set wait_for_completion to False so that it waits for the status in the deferred task.
129
129
  wait_for_completion = self.wait_for_completion
130
- if self.deferrable and self.wait_for_completion:
131
- self.wait_for_completion = False
130
+ if self.deferrable:
131
+ wait_for_completion = False
132
132
 
133
133
  self.statement_id = self.hook.execute_query(
134
134
  database=self.database,
@@ -144,7 +144,7 @@ class RedshiftDataOperator(AwsBaseOperator[RedshiftDataHook]):
144
144
  poll_interval=self.poll_interval,
145
145
  )
146
146
 
147
- if self.deferrable:
147
+ if self.deferrable and self.wait_for_completion:
148
148
  is_finished = self.hook.check_query_is_finished(self.statement_id)
149
149
  if not is_finished:
150
150
  self.defer(
@@ -25,7 +25,7 @@ from airflow.providers.amazon.aws.utils.mixins import aws_template_fields
25
25
  if TYPE_CHECKING:
26
26
  from airflow.utils.context import Context
27
27
 
28
- from airflow.exceptions import AirflowException, AirflowSkipException
28
+ from airflow.exceptions import AirflowException
29
29
  from airflow.providers.amazon.aws.hooks.athena import AthenaHook
30
30
 
31
31
 
@@ -88,11 +88,7 @@ class AthenaSensor(AwsBaseSensor[AthenaHook]):
88
88
  state = self.hook.poll_query_status(self.query_execution_id, self.max_retries, self.sleep_time)
89
89
 
90
90
  if state in self.FAILURE_STATES:
91
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
92
- message = "Athena sensor failed"
93
- if self.soft_fail:
94
- raise AirflowSkipException(message)
95
- raise AirflowException(message)
91
+ raise AirflowException("Athena sensor failed")
96
92
 
97
93
  if state in self.INTERMEDIATE_STATES:
98
94
  return False
@@ -86,18 +86,7 @@ class BatchSensor(BaseSensorOperator):
86
86
  if state in BatchClientHook.INTERMEDIATE_STATES:
87
87
  return False
88
88
 
89
- if state == BatchClientHook.FAILURE_STATE:
90
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
91
- message = f"Batch sensor failed. AWS Batch job status: {state}"
92
- if self.soft_fail:
93
- raise AirflowSkipException(message)
94
- raise AirflowException(message)
95
-
96
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
97
- message = f"Batch sensor failed. Unknown AWS Batch job status: {state}"
98
- if self.soft_fail:
99
- raise AirflowSkipException(message)
100
- raise AirflowException(message)
89
+ raise AirflowException(f"Batch sensor failed. AWS Batch job status: {state}")
101
90
 
102
91
  def execute(self, context: Context) -> None:
103
92
  if not self.deferrable:
@@ -127,12 +116,7 @@ class BatchSensor(BaseSensorOperator):
127
116
  Relies on trigger to throw an exception, otherwise it assumes execution was successful.
128
117
  """
129
118
  if event["status"] != "success":
130
- message = f"Error while running job: {event}"
131
- # TODO: remove this if-else block when min_airflow_version is set to higher than the version that
132
- # changed in https://github.com/apache/airflow/pull/33424 is released (2.7.1)
133
- if self.soft_fail:
134
- raise AirflowSkipException(message)
135
- raise AirflowException(message)
119
+ raise AirflowException(f"Error while running job: {event}")
136
120
  job_id = event["job_id"]
137
121
  self.log.info("Batch Job %s complete", job_id)
138
122
 
@@ -198,11 +182,7 @@ class BatchComputeEnvironmentSensor(BaseSensorOperator):
198
182
  )
199
183
 
200
184
  if not response["computeEnvironments"]:
201
- message = f"AWS Batch compute environment {self.compute_environment} not found"
202
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
203
- if self.soft_fail:
204
- raise AirflowSkipException(message)
205
- raise AirflowException(message)
185
+ raise AirflowException(f"AWS Batch compute environment {self.compute_environment} not found")
206
186
 
207
187
  status = response["computeEnvironments"][0]["status"]
208
188
 
@@ -212,11 +192,9 @@ class BatchComputeEnvironmentSensor(BaseSensorOperator):
212
192
  if status in BatchClientHook.COMPUTE_ENVIRONMENT_INTERMEDIATE_STATUS:
213
193
  return False
214
194
 
215
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
216
- message = f"AWS Batch compute environment failed. AWS Batch compute environment status: {status}"
217
- if self.soft_fail:
218
- raise AirflowSkipException(message)
219
- raise AirflowException(message)
195
+ raise AirflowException(
196
+ f"AWS Batch compute environment failed. AWS Batch compute environment status: {status}"
197
+ )
220
198
 
221
199
 
222
200
  class BatchJobQueueSensor(BaseSensorOperator):
@@ -276,11 +254,7 @@ class BatchJobQueueSensor(BaseSensorOperator):
276
254
  if self.treat_non_existing_as_deleted:
277
255
  return True
278
256
  else:
279
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
280
- message = f"AWS Batch job queue {self.job_queue} not found"
281
- if self.soft_fail:
282
- raise AirflowSkipException(message)
283
- raise AirflowException(message)
257
+ raise AirflowException(f"AWS Batch job queue {self.job_queue} not found")
284
258
 
285
259
  status = response["jobQueues"][0]["status"]
286
260
 
@@ -21,7 +21,7 @@ import abc
21
21
  from typing import TYPE_CHECKING, Any, Sequence, TypeVar
22
22
 
23
23
  from airflow.configuration import conf
24
- from airflow.exceptions import AirflowException, AirflowSkipException
24
+ from airflow.exceptions import AirflowException
25
25
  from airflow.providers.amazon.aws.hooks.bedrock import BedrockAgentHook, BedrockHook
26
26
  from airflow.providers.amazon.aws.sensors.base_aws import AwsBaseSensor
27
27
  from airflow.providers.amazon.aws.triggers.bedrock import (
@@ -76,9 +76,6 @@ class BedrockBaseSensor(AwsBaseSensor[_GenericBedrockHook]):
76
76
  def poke(self, context: Context, **kwargs) -> bool:
77
77
  state = self.get_state()
78
78
  if state in self.FAILURE_STATES:
79
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
80
- if self.soft_fail:
81
- raise AirflowSkipException(self.FAILURE_MESSAGE)
82
79
  raise AirflowException(self.FAILURE_MESSAGE)
83
80
 
84
81
  return state not in self.INTERMEDIATE_STATES
@@ -27,7 +27,6 @@ from airflow.providers.amazon.aws.utils.mixins import aws_template_fields
27
27
  if TYPE_CHECKING:
28
28
  from airflow.utils.context import Context
29
29
 
30
- from airflow.exceptions import AirflowSkipException
31
30
  from airflow.providers.amazon.aws.hooks.cloud_formation import CloudFormationHook
32
31
 
33
32
 
@@ -67,11 +66,7 @@ class CloudFormationCreateStackSensor(AwsBaseSensor[CloudFormationHook]):
67
66
  if stack_status in ("CREATE_IN_PROGRESS", None):
68
67
  return False
69
68
 
70
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
71
- message = f"Stack {self.stack_name} in bad state: {stack_status}"
72
- if self.soft_fail:
73
- raise AirflowSkipException(message)
74
- raise ValueError(message)
69
+ raise ValueError(f"Stack {self.stack_name} in bad state: {stack_status}")
75
70
 
76
71
 
77
72
  class CloudFormationDeleteStackSensor(AwsBaseSensor[CloudFormationHook]):
@@ -119,8 +114,4 @@ class CloudFormationDeleteStackSensor(AwsBaseSensor[CloudFormationHook]):
119
114
  if stack_status == "DELETE_IN_PROGRESS":
120
115
  return False
121
116
 
122
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
123
- message = f"Stack {self.stack_name} in bad state: {stack_status}"
124
- if self.soft_fail:
125
- raise AirflowSkipException(message)
126
- raise ValueError(message)
117
+ raise ValueError(f"Stack {self.stack_name} in bad state: {stack_status}")
@@ -20,7 +20,7 @@ import abc
20
20
  from typing import TYPE_CHECKING, Any, Sequence
21
21
 
22
22
  from airflow.configuration import conf
23
- from airflow.exceptions import AirflowException, AirflowSkipException
23
+ from airflow.exceptions import AirflowException
24
24
  from airflow.providers.amazon.aws.hooks.comprehend import ComprehendHook
25
25
  from airflow.providers.amazon.aws.sensors.base_aws import AwsBaseSensor
26
26
  from airflow.providers.amazon.aws.triggers.comprehend import (
@@ -71,9 +71,6 @@ class ComprehendBaseSensor(AwsBaseSensor[ComprehendHook]):
71
71
  def poke(self, context: Context, **kwargs) -> bool:
72
72
  state = self.get_state()
73
73
  if state in self.FAILURE_STATES:
74
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
75
- if self.soft_fail:
76
- raise AirflowSkipException(self.FAILURE_MESSAGE)
77
74
  raise AirflowException(self.FAILURE_MESSAGE)
78
75
 
79
76
  return state not in self.INTERMEDIATE_STATES
@@ -241,9 +238,6 @@ class ComprehendCreateDocumentClassifierCompletedSensor(AwsBaseSensor[Comprehend
241
238
  )
242
239
 
243
240
  if status in self.FAILURE_STATES:
244
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
245
- if self.soft_fail:
246
- raise AirflowSkipException(self.FAILURE_MESSAGE)
247
241
  raise AirflowException(self.FAILURE_MESSAGE)
248
242
 
249
243
  if status in self.SUCCESS_STATES:
@@ -21,7 +21,7 @@ from typing import TYPE_CHECKING, Iterable, Sequence
21
21
 
22
22
  from deprecated import deprecated
23
23
 
24
- from airflow.exceptions import AirflowException, AirflowProviderDeprecationWarning, AirflowSkipException
24
+ from airflow.exceptions import AirflowException, AirflowProviderDeprecationWarning
25
25
  from airflow.providers.amazon.aws.hooks.dms import DmsHook
26
26
  from airflow.providers.amazon.aws.sensors.base_aws import AwsBaseSensor
27
27
  from airflow.providers.amazon.aws.utils.mixins import aws_template_fields
@@ -75,11 +75,9 @@ class DmsTaskBaseSensor(AwsBaseSensor[DmsHook]):
75
75
 
76
76
  def poke(self, context: Context):
77
77
  if not (status := self.hook.get_task_status(self.replication_task_arn)):
78
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
79
- message = f"Failed to read task status, task with ARN {self.replication_task_arn} not found"
80
- if self.soft_fail:
81
- raise AirflowSkipException(message)
82
- raise AirflowException(message)
78
+ raise AirflowException(
79
+ f"Failed to read task status, task with ARN {self.replication_task_arn} not found"
80
+ )
83
81
 
84
82
  self.log.info("DMS Replication task (%s) has status: %s", self.replication_task_arn, status)
85
83
 
@@ -87,11 +85,7 @@ class DmsTaskBaseSensor(AwsBaseSensor[DmsHook]):
87
85
  return True
88
86
 
89
87
  if status in self.termination_statuses:
90
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
91
- message = f"Unexpected status: {status}"
92
- if self.soft_fail:
93
- raise AirflowSkipException(message)
94
- raise AirflowException(message)
88
+ raise AirflowException(f"Unexpected status: {status}")
95
89
 
96
90
  return False
97
91
 
@@ -21,7 +21,7 @@ from functools import cached_property
21
21
  from typing import TYPE_CHECKING, Any, Sequence
22
22
 
23
23
  from airflow.configuration import conf
24
- from airflow.exceptions import AirflowException, AirflowSkipException
24
+ from airflow.exceptions import AirflowException
25
25
  from airflow.providers.amazon.aws.hooks.ec2 import EC2Hook
26
26
  from airflow.providers.amazon.aws.triggers.ec2 import EC2StateSensorTrigger
27
27
  from airflow.providers.amazon.aws.utils import validate_execute_complete_event
@@ -97,8 +97,4 @@ class EC2InstanceStateSensor(BaseSensorOperator):
97
97
  event = validate_execute_complete_event(event)
98
98
 
99
99
  if event["status"] != "success":
100
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
101
- message = f"Error: {event}"
102
- if self.soft_fail:
103
- raise AirflowSkipException(message)
104
- raise AirflowException(message)
100
+ raise AirflowException(f"Error: {event}")
@@ -19,7 +19,7 @@ from __future__ import annotations
19
19
  from functools import cached_property
20
20
  from typing import TYPE_CHECKING, Sequence
21
21
 
22
- from airflow.exceptions import AirflowException, AirflowSkipException
22
+ from airflow.exceptions import AirflowException
23
23
  from airflow.providers.amazon.aws.hooks.ecs import (
24
24
  EcsClusterStates,
25
25
  EcsHook,
@@ -37,11 +37,9 @@ if TYPE_CHECKING:
37
37
 
38
38
  def _check_failed(current_state, target_state, failure_states, soft_fail: bool) -> None:
39
39
  if (current_state != target_state) and (current_state in failure_states):
40
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
41
- message = f"Terminal state reached. Current state: {current_state}, Expected state: {target_state}"
42
- if soft_fail:
43
- raise AirflowSkipException(message)
44
- raise AirflowException(message)
40
+ raise AirflowException(
41
+ f"Terminal state reached. Current state: {current_state}, Expected state: {target_state}"
42
+ )
45
43
 
46
44
 
47
45
  class EcsBaseSensor(AwsBaseSensor[EcsHook]):
@@ -22,7 +22,7 @@ from abc import abstractmethod
22
22
  from functools import cached_property
23
23
  from typing import TYPE_CHECKING, Sequence
24
24
 
25
- from airflow.exceptions import AirflowException, AirflowSkipException
25
+ from airflow.exceptions import AirflowException
26
26
  from airflow.providers.amazon.aws.hooks.eks import (
27
27
  ClusterStates,
28
28
  EksHook,
@@ -106,12 +106,10 @@ class EksBaseSensor(BaseSensorOperator):
106
106
  state = self.get_state()
107
107
  self.log.info("Current state: %s", state)
108
108
  if state in (self.get_terminal_states() - {self.target_state}):
109
- # If we reach a terminal state which is not the target state:
110
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
111
- message = f"Terminal state reached. Current state: {state}, Expected state: {self.target_state}"
112
- if self.soft_fail:
113
- raise AirflowSkipException(message)
114
- raise AirflowException(message)
109
+ # If we reach a terminal state which is not the target state
110
+ raise AirflowException(
111
+ f"Terminal state reached. Current state: {state}, Expected state: {self.target_state}"
112
+ )
115
113
  return state == self.target_state
116
114
 
117
115
  @abstractmethod
@@ -27,7 +27,6 @@ from airflow.configuration import conf
27
27
  from airflow.exceptions import (
28
28
  AirflowException,
29
29
  AirflowProviderDeprecationWarning,
30
- AirflowSkipException,
31
30
  )
32
31
  from airflow.providers.amazon.aws.hooks.emr import EmrContainerHook, EmrHook, EmrServerlessHook
33
32
  from airflow.providers.amazon.aws.links.emr import EmrClusterLink, EmrLogsLink, get_log_uri
@@ -91,11 +90,7 @@ class EmrBaseSensor(BaseSensorOperator):
91
90
  return True
92
91
 
93
92
  if state in self.failed_states:
94
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
95
- message = f"EMR job failed: {self.failure_message_from_response(response)}"
96
- if self.soft_fail:
97
- raise AirflowSkipException(message)
98
- raise AirflowException(message)
93
+ raise AirflowException(f"EMR job failed: {self.failure_message_from_response(response)}")
99
94
 
100
95
  return False
101
96
 
@@ -172,11 +167,9 @@ class EmrServerlessJobSensor(BaseSensorOperator):
172
167
  state = response["jobRun"]["state"]
173
168
 
174
169
  if state in EmrServerlessHook.JOB_FAILURE_STATES:
175
- failure_message = f"EMR Serverless job failed: {self.failure_message_from_response(response)}"
176
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
177
- if self.soft_fail:
178
- raise AirflowSkipException(failure_message)
179
- raise AirflowException(failure_message)
170
+ raise AirflowException(
171
+ f"EMR Serverless job failed: {self.failure_message_from_response(response)}"
172
+ )
180
173
 
181
174
  return state in self.target_states
182
175
 
@@ -234,13 +227,9 @@ class EmrServerlessApplicationSensor(BaseSensorOperator):
234
227
  state = response["application"]["state"]
235
228
 
236
229
  if state in EmrServerlessHook.APPLICATION_FAILURE_STATES:
237
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
238
- failure_message = (
230
+ raise AirflowException(
239
231
  f"EMR Serverless application failed: {self.failure_message_from_response(response)}"
240
232
  )
241
- if self.soft_fail:
242
- raise AirflowSkipException(failure_message)
243
- raise AirflowException(failure_message)
244
233
 
245
234
  return state in self.target_states
246
235
 
@@ -328,11 +317,7 @@ class EmrContainerSensor(BaseSensorOperator):
328
317
  )
329
318
 
330
319
  if state in self.FAILURE_STATES:
331
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
332
- message = "EMR Containers sensor failed"
333
- if self.soft_fail:
334
- raise AirflowSkipException(message)
335
- raise AirflowException(message)
320
+ raise AirflowException("EMR Containers sensor failed")
336
321
 
337
322
  if state in self.INTERMEDIATE_STATES:
338
323
  return False
@@ -370,11 +355,7 @@ class EmrContainerSensor(BaseSensorOperator):
370
355
  event = validate_execute_complete_event(event)
371
356
 
372
357
  if event["status"] != "success":
373
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
374
- message = f"Error while running job: {event}"
375
- if self.soft_fail:
376
- raise AirflowSkipException(message)
377
- raise AirflowException(message)
358
+ raise AirflowException(f"Error while running job: {event}")
378
359
 
379
360
  self.log.info("Job completed.")
380
361
 
@@ -563,11 +544,7 @@ class EmrJobFlowSensor(EmrBaseSensor):
563
544
  event = validate_execute_complete_event(event)
564
545
 
565
546
  if event["status"] != "success":
566
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
567
- message = f"Error while running job: {event}"
568
- if self.soft_fail:
569
- raise AirflowSkipException(message)
570
- raise AirflowException(message)
547
+ raise AirflowException(f"Error while running job: {event}")
571
548
  self.log.info("Job completed.")
572
549
 
573
550
 
@@ -696,10 +673,6 @@ class EmrStepSensor(EmrBaseSensor):
696
673
  event = validate_execute_complete_event(event)
697
674
 
698
675
  if event["status"] != "success":
699
- # TODO: remove this if check when min_airflow_version is set to higher than 2.7.1
700
- message = f"Error while running job: {event}"
701
- if self.soft_fail:
702
- raise AirflowSkipException(message)
703
- raise AirflowException(message)
676
+ raise AirflowException(f"Error while running job: {event}")
704
677
 
705
678
  self.log.info("Job %s completed.", self.job_flow_id)
@@ -20,7 +20,7 @@ from __future__ import annotations
20
20
  from enum import Enum
21
21
  from typing import TYPE_CHECKING, Any, Sequence
22
22
 
23
- from airflow.exceptions import AirflowException, AirflowSkipException
23
+ from airflow.exceptions import AirflowException
24
24
  from airflow.providers.amazon.aws.hooks.glacier import GlacierHook
25
25
  from airflow.providers.amazon.aws.sensors.base_aws import AwsBaseSensor
26
26
  from airflow.providers.amazon.aws.utils.mixins import aws_template_fields
@@ -93,10 +93,6 @@ class GlacierJobOperationSensor(AwsBaseSensor[GlacierHook]):
93
93
  self.log.warning("Code status: %s", response["StatusCode"])
94
94
  return False
95
95
  else:
96
- # TODO: remove this if block when min_airflow_version is set to higher than 2.7.1
97
- message = (
96
+ raise AirflowException(
98
97
  f'Sensor failed. Job status: {response["Action"]}, code status: {response["StatusCode"]}'
99
98
  )
100
- if self.soft_fail:
101
- raise AirflowSkipException(message)
102
- raise AirflowException(message)