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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -85,8 +85,8 @@ COMMAND = """
85
85
  exit 1
86
86
  fi
87
87
 
88
- expiration_timestamp=$(echo "$output" | grep -oP 'expirationTimestamp:\s*\K[^,]+')
89
- token=$(echo "$output" | grep -oP 'token:\s*\K[^,]+')
88
+ expiration_timestamp=$(echo "$output" | grep -oP 'expirationTimestamp: \\K[^,]+')
89
+ token=$(echo "$output" | grep -oP 'token: \\K[^,]+')
90
90
 
91
91
  json_string=$(printf '{{"kind": "ExecCredential","apiVersion": \
92
92
  "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)
@@ -86,7 +86,7 @@ def provide_bucket_name(func: Callable) -> Callable:
86
86
  async def maybe_add_bucket_name(*args, **kwargs):
87
87
  bound_args = function_signature.bind(*args, **kwargs)
88
88
 
89
- if "bucket_name" not in bound_args.arguments:
89
+ if not bound_args.arguments.get("bucket_name"):
90
90
  self = args[0]
91
91
  if self.aws_conn_id:
92
92
  connection = await sync_to_async(self.get_connection)(self.aws_conn_id)
@@ -116,7 +116,7 @@ def provide_bucket_name(func: Callable) -> Callable:
116
116
  def wrapper(*args, **kwargs) -> Callable:
117
117
  bound_args = function_signature.bind(*args, **kwargs)
118
118
 
119
- if "bucket_name" not in bound_args.arguments:
119
+ if not bound_args.arguments.get("bucket_name"):
120
120
  self = args[0]
121
121
 
122
122
  if "bucket_name" in self.service_config:
@@ -311,7 +311,9 @@ class AthenaOperator(AwsBaseOperator[AthenaHook]):
311
311
  }
312
312
  fields = [
313
313
  SchemaDatasetFacetFields(
314
- name=column["Name"], type=column["Type"], description=column["Comment"]
314
+ name=column["Name"],
315
+ type=column["Type"],
316
+ description=column.get("Comment"),
315
317
  )
316
318
  for column in table_metadata["TableMetadata"]["Columns"]
317
319
  ]
@@ -368,7 +368,7 @@ class EcsRunTaskOperator(EcsBaseOperator):
368
368
  If None, this is the same as the `region` parameter. If that is also None,
369
369
  this is the default AWS region based on your connection settings.
370
370
  :param awslogs_stream_prefix: the stream prefix that is used for the CloudWatch logs.
371
- This is usually based on some custom name combined with the name of the container.
371
+ This should match the prefix specified in the log configuration of the task definition.
372
372
  Only required if you want logs to be shown in the Airflow UI after your job has
373
373
  finished.
374
374
  :param awslogs_fetch_interval: the interval that the ECS task log fetcher should wait
@@ -481,6 +481,7 @@ class EcsRunTaskOperator(EcsBaseOperator):
481
481
  self.awslogs_region = self.region_name
482
482
 
483
483
  self.arn: str | None = None
484
+ self.container_name: str | None = None
484
485
  self._started_by: str | None = None
485
486
 
486
487
  self.retry_args = quota_retry
@@ -597,10 +598,10 @@ class EcsRunTaskOperator(EcsBaseOperator):
597
598
 
598
599
  if self.capacity_provider_strategy:
599
600
  run_opts["capacityProviderStrategy"] = self.capacity_provider_strategy
600
- if self.volume_configurations is not None:
601
- run_opts["volumeConfigurations"] = self.volume_configurations
602
601
  elif self.launch_type:
603
602
  run_opts["launchType"] = self.launch_type
603
+ if self.volume_configurations is not None:
604
+ run_opts["volumeConfigurations"] = self.volume_configurations
604
605
  if self.platform_version is not None:
605
606
  run_opts["platformVersion"] = self.platform_version
606
607
  if self.group is not None:
@@ -624,6 +625,7 @@ class EcsRunTaskOperator(EcsBaseOperator):
624
625
  self.log.info("ECS Task started: %s", response)
625
626
 
626
627
  self.arn = response["tasks"][0]["taskArn"]
628
+ self.container_name = response["tasks"][0]["containers"][0]["name"]
627
629
  self.log.info("ECS task ID is: %s", self._get_ecs_task_id(self.arn))
628
630
 
629
631
  def _try_reattach_task(self, started_by: str):
@@ -659,6 +661,12 @@ class EcsRunTaskOperator(EcsBaseOperator):
659
661
  return self.awslogs_group and self.awslogs_stream_prefix
660
662
 
661
663
  def _get_logs_stream_name(self) -> str:
664
+ if (
665
+ self.awslogs_stream_prefix
666
+ and self.container_name
667
+ and not self.awslogs_stream_prefix.endswith(f"/{self.container_name}")
668
+ ):
669
+ return f"{self.awslogs_stream_prefix}/{self.container_name}/{self._get_ecs_task_id(self.arn)}"
662
670
  return f"{self.awslogs_stream_prefix}/{self._get_ecs_task_id(self.arn)}"
663
671
 
664
672
  def _get_task_log_fetcher(self) -> AwsTaskLogFetcher:
@@ -45,8 +45,10 @@ from airflow.providers.cncf.kubernetes.utils.pod_manager import OnFinishAction
45
45
  try:
46
46
  from airflow.providers.cncf.kubernetes.operators.pod import KubernetesPodOperator
47
47
  except ImportError:
48
- # preserve backward compatibility for older versions of cncf.kubernetes provider
49
- from airflow.providers.cncf.kubernetes.operators.kubernetes_pod import KubernetesPodOperator
48
+ # preserve backward compatibility for older versions of cncf.kubernetes provider, remove this when minimum cncf.kubernetes provider is 10.0
49
+ from airflow.providers.cncf.kubernetes.operators.kubernetes_pod import ( # type: ignore[no-redef]
50
+ KubernetesPodOperator,
51
+ )
50
52
 
51
53
  if TYPE_CHECKING:
52
54
  from airflow.utils.context import Context
@@ -74,6 +74,11 @@ class GlueJobOperator(BaseOperator):
74
74
  :param update_config: If True, Operator will update job configuration. (default: False)
75
75
  :param replace_script_file: If True, the script file will be replaced in S3. (default: False)
76
76
  :param stop_job_run_on_kill: If True, Operator will stop the job run when task is killed.
77
+ :param sleep_before_return: time in seconds to wait before returning final status. This is meaningful in case
78
+ of limiting concurrency, Glue needs 5-10 seconds to clean up resources.
79
+ Thus if status is returned immediately it might end up in case of more than 1 concurrent run.
80
+ It is recommended to set this parameter to 10 when you are using concurrency=1.
81
+ For more information see: https://repost.aws/questions/QUaKgpLBMPSGWO0iq2Fob_bw/glue-run-concurrent-jobs#ANFpCL2fRnQRqgDFuIU_rpvA
77
82
  """
78
83
 
79
84
  template_fields: Sequence[str] = (
@@ -118,6 +123,7 @@ class GlueJobOperator(BaseOperator):
118
123
  update_config: bool = False,
119
124
  job_poll_interval: int | float = 6,
120
125
  stop_job_run_on_kill: bool = False,
126
+ sleep_before_return: int = 0,
121
127
  **kwargs,
122
128
  ):
123
129
  super().__init__(**kwargs)
@@ -145,6 +151,7 @@ class GlueJobOperator(BaseOperator):
145
151
  self.job_poll_interval = job_poll_interval
146
152
  self.stop_job_run_on_kill = stop_job_run_on_kill
147
153
  self._job_run_id: str | None = None
154
+ self.sleep_before_return: int = sleep_before_return
148
155
 
149
156
  @cached_property
150
157
  def glue_job_hook(self) -> GlueJobHook:
@@ -220,7 +227,9 @@ class GlueJobOperator(BaseOperator):
220
227
  method_name="execute_complete",
221
228
  )
222
229
  elif self.wait_for_completion:
223
- glue_job_run = self.glue_job_hook.job_completion(self.job_name, self._job_run_id, self.verbose)
230
+ glue_job_run = self.glue_job_hook.job_completion(
231
+ self.job_name, self._job_run_id, self.verbose, self.sleep_before_return
232
+ )
224
233
  self.log.info(
225
234
  "AWS Glue Job: %s status: %s. Run Id: %s",
226
235
  self.job_name,
@@ -240,7 +240,7 @@ class S3ToDynamoDBOperator(BaseOperator):
240
240
  finally:
241
241
  self.log.info("Delete tmp DynamoDB table %s", self.tmp_table_name)
242
242
  client.delete_table(TableName=self.tmp_table_name)
243
- return dynamodb_hook.get_conn().Table(self.dynamodb_table_name).table_arn
243
+ return dynamodb_hook.get_conn().Table(self.dynamodb_table_name).table_arn
244
244
 
245
245
  def execute(self, context: Context) -> str:
246
246
  """
@@ -29,8 +29,7 @@ class AthenaTrigger(AwsBaseWaiterTrigger):
29
29
  """
30
30
  Trigger for AthenaOperator.
31
31
 
32
- The trigger will asynchronously poll the boto3 API and wait for the
33
- Redshift cluster to be in the `available` state.
32
+ The trigger will asynchronously poll the boto3 API
34
33
 
35
34
  :param query_execution_id: ID of the Athena query execution to watch
36
35
  :param waiter_delay: The amount of time in seconds to wait between attempts.
@@ -62,7 +62,7 @@ class GlueJobCompleteTrigger(BaseTrigger):
62
62
  {
63
63
  "job_name": self.job_name,
64
64
  "run_id": self.run_id,
65
- "verbose": str(self.verbose),
65
+ "verbose": self.verbose,
66
66
  "aws_conn_id": self.aws_conn_id,
67
67
  "job_poll_interval": self.job_poll_interval,
68
68
  },
@@ -100,7 +100,7 @@ def get_provider_info():
100
100
  "dependencies": [
101
101
  "apache-airflow>=2.8.0",
102
102
  "apache-airflow-providers-common-compat>=1.2.1",
103
- "apache-airflow-providers-common-sql>=1.3.1",
103
+ "apache-airflow-providers-common-sql>=1.20.0",
104
104
  "apache-airflow-providers-http",
105
105
  "boto3>=1.34.90",
106
106
  "botocore>=1.34.90",
@@ -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.1.0rc4
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,7 +22,7 @@ Classifier: Programming Language :: Python :: 3.12
22
22
  Classifier: Topic :: System :: Monitoring
23
23
  Requires-Dist: PyAthena>=3.0.10
24
24
  Requires-Dist: apache-airflow-providers-common-compat>=1.2.1rc0
25
- Requires-Dist: apache-airflow-providers-common-sql>=1.3.1rc0
25
+ Requires-Dist: apache-airflow-providers-common-sql>=1.20.0rc0
26
26
  Requires-Dist: apache-airflow-providers-http
27
27
  Requires-Dist: apache-airflow>=2.8.0rc0
28
28
  Requires-Dist: asgiref>=2.3.0
@@ -35,16 +35,16 @@ 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.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"
42
42
  Requires-Dist: apache-airflow-providers-exasol ; extra == "exasol"
43
43
  Requires-Dist: apache-airflow-providers-ftp ; extra == "ftp"
44
44
  Requires-Dist: apache-airflow-providers-google ; extra == "google"
45
45
  Requires-Dist: apache-airflow-providers-http ; extra == "http"
46
46
  Requires-Dist: apache-airflow-providers-imap ; extra == "imap"
47
- Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == "microsoft.azure"
47
+ Requires-Dist: apache-airflow-providers-microsoft-azure ; extra == "microsoft-azure"
48
48
  Requires-Dist: apache-airflow-providers-mongo ; extra == "mongo"
49
49
  Requires-Dist: apache-airflow-providers-openlineage ; extra == "openlineage"
50
50
  Requires-Dist: pandas>=2.1.2,<2.2 ; extra == "pandas" and (python_version>="3.9")
@@ -61,16 +61,16 @@ Project-URL: Source Code, https://github.com/apache/airflow
61
61
  Project-URL: Twitter, https://twitter.com/ApacheAirflow
62
62
  Project-URL: YouTube, https://www.youtube.com/channel/UCSXwxpWZQ7XZ1WL3wqevChA/
63
63
  Provides-Extra: aiobotocore
64
- Provides-Extra: apache.hive
65
- Provides-Extra: cncf.kubernetes
66
- Provides-Extra: common.compat
67
- Provides-Extra: common.sql
64
+ Provides-Extra: apache-hive
65
+ Provides-Extra: cncf-kubernetes
66
+ Provides-Extra: common-compat
67
+ Provides-Extra: common-sql
68
68
  Provides-Extra: exasol
69
69
  Provides-Extra: ftp
70
70
  Provides-Extra: google
71
71
  Provides-Extra: http
72
72
  Provides-Extra: imap
73
- Provides-Extra: microsoft.azure
73
+ Provides-Extra: microsoft-azure
74
74
  Provides-Extra: mongo
75
75
  Provides-Extra: openlineage
76
76
  Provides-Extra: pandas
@@ -123,7 +123,7 @@ Provides-Extra: ssh
123
123
 
124
124
  Package ``apache-airflow-providers-amazon``
125
125
 
126
- Release: ``9.1.0.rc3``
126
+ Release: ``9.1.0.rc4``
127
127
 
128
128
 
129
129
  Amazon integration (including `Amazon Web Services (AWS) <https://aws.amazon.com/>`__).
@@ -155,7 +155,7 @@ PIP package Version required
155
155
  ========================================== ======================
156
156
  ``apache-airflow`` ``>=2.8.0``
157
157
  ``apache-airflow-providers-common-compat`` ``>=1.2.1``
158
- ``apache-airflow-providers-common-sql`` ``>=1.3.1``
158
+ ``apache-airflow-providers-common-sql`` ``>=1.20.0``
159
159
  ``apache-airflow-providers-http``
160
160
  ``boto3`` ``>=1.34.90``
161
161
  ``botocore`` ``>=1.34.90``
@@ -1,6 +1,6 @@
1
1
  airflow/providers/amazon/LICENSE,sha256=FFb4jd2AXnOOf7XLP04pQW6jbdhG49TxlGY6fFpCV1Y,13609
2
2
  airflow/providers/amazon/__init__.py,sha256=MuTYiz17zqZxTSbZ537dOIWjnfLeKguUmhr0_326bro,1493
3
- airflow/providers/amazon/get_provider_info.py,sha256=7wgRQdEmOG8E5OC8XaJhofMR2o1KKJvbbSe60w2xY3o,68969
3
+ airflow/providers/amazon/get_provider_info.py,sha256=y9ASSPOWB44gPBGJRFq023coKLPswduGRwUC7SKKgZg,68970
4
4
  airflow/providers/amazon/aws/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
5
5
  airflow/providers/amazon/aws/exceptions.py,sha256=uRGNMgXvgdzfphpOTiyj74lQhjzb70J-X8n6fsx5Jog,1864
6
6
  airflow/providers/amazon/aws/assets/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
@@ -55,12 +55,12 @@ airflow/providers/amazon/aws/hooks/dynamodb.py,sha256=14HDVrIeeK6TlLI767qsgGw1mu
55
55
  airflow/providers/amazon/aws/hooks/ec2.py,sha256=DP4RjJoO2P8I5qT4FqTUFy0GQ4-SrJ354ET4YUVDfXE,8088
56
56
  airflow/providers/amazon/aws/hooks/ecr.py,sha256=k89qfKwGZDMRa39TUtSjlf0wJag0SEbIIe1WgDW-e7I,3823
57
57
  airflow/providers/amazon/aws/hooks/ecs.py,sha256=wr4W0P2wlPj1kd31X79uYtI7BqDVk6RW1IWyR2IvIeU,6720
58
- airflow/providers/amazon/aws/hooks/eks.py,sha256=rj15KoRbcYicLUO4SOFq4-G-T_iLh0WzRkVtZ8wVM6M,24440
58
+ airflow/providers/amazon/aws/hooks/eks.py,sha256=xWxwomrD6JEKggTwSlow_l3e62VOqYTCrvX7A93iKpc,24438
59
59
  airflow/providers/amazon/aws/hooks/elasticache_replication_group.py,sha256=x6kkaR2nzDF8w1kqolbaS3-XCbHl5qlJMcpGYmlsxuU,12089
60
60
  airflow/providers/amazon/aws/hooks/emr.py,sha256=7x2YCGKr5nylRfbBitqRXmvW0RwYgARXv4pXXeu_WJ0,21430
61
61
  airflow/providers/amazon/aws/hooks/eventbridge.py,sha256=dSaKbFB8ueOUJGl6YLIz70zXy0Xzr3yMflKS2wGFDSM,3364
62
62
  airflow/providers/amazon/aws/hooks/glacier.py,sha256=Ia4xE8D1hGnUWNs8CqNhDAsqSJiqY4HliE2-knrMHrw,3495
63
- airflow/providers/amazon/aws/hooks/glue.py,sha256=bGwKpY0UY3YdI8H7cJ5gpsnj2rnWTY7EeFW-JuJkxO8,22200
63
+ airflow/providers/amazon/aws/hooks/glue.py,sha256=-5uR3TH0u4vcpQQfZHskXjkrdhtObuPD3ZP5b_jGIEM,22383
64
64
  airflow/providers/amazon/aws/hooks/glue_catalog.py,sha256=XQu9v_b37TXO7F_V3u7WuLS7UuCigm4UEy2tuzF8ZiY,9213
65
65
  airflow/providers/amazon/aws/hooks/glue_crawler.py,sha256=C9O2YG63BiNS6UvvB1Mn1aHWdRYzDBf2a5brimLU9IQ,7926
66
66
  airflow/providers/amazon/aws/hooks/glue_databrew.py,sha256=96duZVYtLDQgfJ02XUdov-QWPoG2Wp0O0RFuwB-6nkU,2580
@@ -75,7 +75,7 @@ airflow/providers/amazon/aws/hooks/rds.py,sha256=h7NF3GZ42RKeh70rlg2BQFVpa8vNadS
75
75
  airflow/providers/amazon/aws/hooks/redshift_cluster.py,sha256=ywJxbcOy91-oGGkApo6_nRKucyaEhxXqEXikG7q9uZ4,7977
76
76
  airflow/providers/amazon/aws/hooks/redshift_data.py,sha256=5Kz7tsTbDwDDAqTud1--vyi74IksfHWBouIPRXYYFJk,11812
77
77
  airflow/providers/amazon/aws/hooks/redshift_sql.py,sha256=UTH2cyCfdGp5o2l94le5HLCF82KpsoGgRAgd7jrmeVw,11301
78
- airflow/providers/amazon/aws/hooks/s3.py,sha256=ChlYVLix_fQcZMl1-rpOx7ZxOUaxFGfGxhMPAiA-_lQ,61506
78
+ airflow/providers/amazon/aws/hooks/s3.py,sha256=zcvpXeCBt9LgWRJMzdUgIN8i6-qybGwovTH67f_QF4g,61510
79
79
  airflow/providers/amazon/aws/hooks/sagemaker.py,sha256=w3_zqbuNznP47TBLioHuBenNv82blDul-rppyZMRaKg,60461
80
80
  airflow/providers/amazon/aws/hooks/secrets_manager.py,sha256=6srh3jUeSGoqyrSj1M6aSOaA9xT5kna0VGUC0kzH-q0,2690
81
81
  airflow/providers/amazon/aws/hooks/ses.py,sha256=uOTjyhb87jNyf2B11zH1wg5Oomnsx0nM4aHteP-mCHs,4147
@@ -102,7 +102,7 @@ airflow/providers/amazon/aws/notifications/sns.py,sha256=VCh3MpKl86RBBmI2zw0eyHG
102
102
  airflow/providers/amazon/aws/notifications/sqs.py,sha256=ixxkxonDvSk_x3BRAlFAQe771tGlwFli2JzVx-2f8gg,3591
103
103
  airflow/providers/amazon/aws/operators/__init__.py,sha256=9hdXHABrVpkbpjZgUft39kOFL2xSGeG4GEua0Hmelus,785
104
104
  airflow/providers/amazon/aws/operators/appflow.py,sha256=A5SHSt5KO-3vw-fJFgu2cWOpDjQ5oAhKYN0mAwGMWK8,20856
105
- airflow/providers/amazon/aws/operators/athena.py,sha256=n18FbhkOGSHPHBXqcK5z9xEGA26bfKHr8tC4cu20JKY,14657
105
+ airflow/providers/amazon/aws/operators/athena.py,sha256=4hSqbgBCePdYIUM_hpfZkSu5TzQvQxLniofvCDlO9zk,14702
106
106
  airflow/providers/amazon/aws/operators/base_aws.py,sha256=cdc5GZkl_YGDDtlV9CVsdbTH3j7bza6d3RrDm93seOo,3864
107
107
  airflow/providers/amazon/aws/operators/batch.py,sha256=4H98PlZTx_pgINBoeifpBJw_dIEQb_KMSUVkvEP0y0w,21981
108
108
  airflow/providers/amazon/aws/operators/bedrock.py,sha256=PJcsRoTht4w23XG8W1B4Rl6BEJiomQLnwTcuPfMM3pI,40140
@@ -111,12 +111,12 @@ airflow/providers/amazon/aws/operators/comprehend.py,sha256=YTgHIw0UkZ4KsZTf-iaO
111
111
  airflow/providers/amazon/aws/operators/datasync.py,sha256=7Kt9POmcqJXF_1ZVRLVnJV6prBwYcUcCkfFJMPtraPk,18636
112
112
  airflow/providers/amazon/aws/operators/dms.py,sha256=V3G5Q0Jn-lgOUBIQQu6eRLY23GWbnWJg3nN-FMIgZp8,12349
113
113
  airflow/providers/amazon/aws/operators/ec2.py,sha256=aQj6cL3nZzu0tcn3dq6RBSPsByZe8fNtn6qcpQYtlNI,17051
114
- airflow/providers/amazon/aws/operators/ecs.py,sha256=Zem_ooknDf3LhjP7MBxXj0MI46DXsWV7MLvhTeUjNFY,32318
115
- airflow/providers/amazon/aws/operators/eks.py,sha256=BAuEvi05YiqmT3XanZMWWFqKdUh45mpO7JQ4zk8h5cE,48925
114
+ airflow/providers/amazon/aws/operators/ecs.py,sha256=eW1qGt8rGClp8vntBGHvuWqwF-gluJxRmvmclS48NVc,32727
115
+ airflow/providers/amazon/aws/operators/eks.py,sha256=P1GLMdgBAUgdDcRzDyKQnosW0vrCT6wdWriZxcjgIww,49027
116
116
  airflow/providers/amazon/aws/operators/emr.py,sha256=s5M6QI90zwUobVUQzJ0UdNY8O_jKkwzu-iWA7zByBLM,71937
117
117
  airflow/providers/amazon/aws/operators/eventbridge.py,sha256=e686XFhVi54DbaCk7oVc0fhvH6GIPU3p8jgyCie1yBU,10394
118
118
  airflow/providers/amazon/aws/operators/glacier.py,sha256=zxwC6lLk6sWerjlogXq6HgNOJx4h0hkqpGpqn23hJWk,3654
119
- airflow/providers/amazon/aws/operators/glue.py,sha256=m8hdF6eTyzsK3onOqt6Td0dGshhgf_XU1f4EtMb42LU,28390
119
+ airflow/providers/amazon/aws/operators/glue.py,sha256=8iuE-xVQmaXxqBVhxjJEZCGnC2ddv7h1yN-LxJCAOQ0,29066
120
120
  airflow/providers/amazon/aws/operators/glue_crawler.py,sha256=6646Ru_DrGjcv_hCy5EjPXcFY6pdB0bjj6ko8Wj3XDk,5253
121
121
  airflow/providers/amazon/aws/operators/glue_databrew.py,sha256=IU9S4gjy8TtwfLxZWhslbHrl8Fpw72QDmL_In8MMecw,6092
122
122
  airflow/providers/amazon/aws/operators/kinesis_analytics.py,sha256=psa-SiCjYUYytCZhctQUNr7GSyl38zQ5oNJ6Snt-kwM,15803
@@ -176,7 +176,7 @@ airflow/providers/amazon/aws/transfers/imap_attachment_to_s3.py,sha256=xYJ94xNDs
176
176
  airflow/providers/amazon/aws/transfers/local_to_s3.py,sha256=yp9m7aZuL6YgzYRsFcyZ1wcGTXZTMO0F0CuBfkH1eGo,4165
177
177
  airflow/providers/amazon/aws/transfers/mongo_to_s3.py,sha256=OU7Cge_0WQd7xEb38V-0hjSHbjZRCQ7Ay4xntcG9R28,6020
178
178
  airflow/providers/amazon/aws/transfers/redshift_to_s3.py,sha256=-XMmYoHmQiZqZ5rqdYp4ZZbUNUe-Vu1z8TrkH9pxNHA,13001
179
- airflow/providers/amazon/aws/transfers/s3_to_dynamodb.py,sha256=BRYID2nCmjooVH4WVD7tcy5MnkGQPK4c9BwioeCsIsw,11658
179
+ airflow/providers/amazon/aws/transfers/s3_to_dynamodb.py,sha256=mQzzk0yhD5piCuolTw8c7NjmjuDXXi-KYp02-Hx7zVI,11654
180
180
  airflow/providers/amazon/aws/transfers/s3_to_ftp.py,sha256=cxyNRW_FJQNNluuYr5fVluGLYnNRUvN75iHSSEHrVnY,2966
181
181
  airflow/providers/amazon/aws/transfers/s3_to_redshift.py,sha256=GXMJV-_7Vy0CvPBOgSGWw_L2xf25XqRF9ztDFdMpWLc,11209
182
182
  airflow/providers/amazon/aws/transfers/s3_to_sftp.py,sha256=bgHgKv7o8ueC_zkhzW5k2xZpFnMlBHMcDf0t4sQ7kHY,3488
@@ -186,7 +186,7 @@ airflow/providers/amazon/aws/transfers/sftp_to_s3.py,sha256=Z1D5y-Dhxgd4SxptlJpr
186
186
  airflow/providers/amazon/aws/transfers/sql_to_s3.py,sha256=rEwuWF1BTZew32S-7ggCVuJQ00lyQ5EoR-Rc-OvpUhA,10591
187
187
  airflow/providers/amazon/aws/triggers/README.md,sha256=6m48KR4SRC0mMwVBGZ2g5HtkvgBUJ9y-3pK6_vIPQ_E,10843
188
188
  airflow/providers/amazon/aws/triggers/__init__.py,sha256=mlJxuZLkd5x-iq2SBwD3mvRQpt3YR7wjz_nceyF1IaI,787
189
- airflow/providers/amazon/aws/triggers/athena.py,sha256=TAn2snAGHPfRT-pG8r0EMKlTSgwKr4APsJMqAE8pORI,2666
189
+ airflow/providers/amazon/aws/triggers/athena.py,sha256=62ty40zejcm5Y0d1rTQZuYzSjq3hUkmAs0d_zxM_Kjw,2596
190
190
  airflow/providers/amazon/aws/triggers/base.py,sha256=QT-omauJw_ksUb6gS2erm_FVXSZdwHIpyznFXTkoMXo,6384
191
191
  airflow/providers/amazon/aws/triggers/batch.py,sha256=GogZnPaSc1ms55_aNcSDtV4wIZL3kMCSCY7dqpGJH4o,4257
192
192
  airflow/providers/amazon/aws/triggers/bedrock.py,sha256=IiKyl0UUax-ex4siLjZpQGDZWyAOOhvJ-9USyRi_r3c,7260
@@ -195,7 +195,7 @@ airflow/providers/amazon/aws/triggers/ec2.py,sha256=gMY3EP4TmL6SodLw12FNSLttlHd7
195
195
  airflow/providers/amazon/aws/triggers/ecs.py,sha256=YXFXUpQ1ejvtMIwkiet4LTLdJSkG8nr_ZEUI5lpqRGA,9222
196
196
  airflow/providers/amazon/aws/triggers/eks.py,sha256=9elEgIErRQRndk4sgPZ2F9bjcaWsUoUG18Qv758ly1U,16151
197
197
  airflow/providers/amazon/aws/triggers/emr.py,sha256=og83L9BPUcqqVXHwfUTD9cA-276YDo3Fnc0e2svQfqE,16566
198
- airflow/providers/amazon/aws/triggers/glue.py,sha256=hv_nLzBRPG13MetjEfU_-KuTphLE-xyF6yW4uQJQuBc,9480
198
+ airflow/providers/amazon/aws/triggers/glue.py,sha256=jmWLXGBHv2uyxo5xjmtMLrJbE88Rnp-ODfXnNyKrMpM,9475
199
199
  airflow/providers/amazon/aws/triggers/glue_crawler.py,sha256=W6EYAizQQtVbH5SiZmof1GDKKHKAB3q3GRmQkCkiy1o,2372
200
200
  airflow/providers/amazon/aws/triggers/glue_databrew.py,sha256=SWbsgUrEfPN2Efk3Jfu8mlCAlUJRCHp8PnnqI4YbUR8,2593
201
201
  airflow/providers/amazon/aws/triggers/kinesis_analytics.py,sha256=FERA9pE2o4juRJZVlEauDcJcPkhlQ6K9Q6RHt2MZlcE,2937
@@ -249,7 +249,7 @@ airflow/providers/amazon/aws/waiters/rds.json,sha256=HNmNQm5J-VaFHzjWb1pE5P7-Ix-
249
249
  airflow/providers/amazon/aws/waiters/redshift.json,sha256=jOBotCgbkko1b_CHcGEbhhRvusgt0YSzVuFiZrqVP30,1742
250
250
  airflow/providers/amazon/aws/waiters/sagemaker.json,sha256=JPHuQtUFZ1B7EMLfVmCRevNZ9jgpB71LM0dva8ZEO9A,5254
251
251
  airflow/providers/amazon/aws/waiters/stepfunctions.json,sha256=GsOH-emGerKGBAUFmI5lpMfNGH4c0ol_PSiea25DCEY,1033
252
- apache_airflow_providers_amazon-9.1.0rc3.dist-info/entry_points.txt,sha256=vlc0ZzhBkMrav1maTRofgksnAw4SwoQLFX9cmnTgktk,102
253
- apache_airflow_providers_amazon-9.1.0rc3.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
254
- apache_airflow_providers_amazon-9.1.0rc3.dist-info/METADATA,sha256=KLy6l-iBr4YaxkDEYSnM5sg8qgJbibs_KDze1MBp4z8,10687
255
- apache_airflow_providers_amazon-9.1.0rc3.dist-info/RECORD,,
252
+ apache_airflow_providers_amazon-9.1.0rc4.dist-info/entry_points.txt,sha256=vlc0ZzhBkMrav1maTRofgksnAw4SwoQLFX9cmnTgktk,102
253
+ apache_airflow_providers_amazon-9.1.0rc4.dist-info/WHEEL,sha256=CpUCUxeHQbRN5UGRQHYRJorO5Af-Qy_fHMctcQ8DSGI,82
254
+ apache_airflow_providers_amazon-9.1.0rc4.dist-info/METADATA,sha256=h9wE8DHBsjT67-bywh02fDfUJF8ho4NuIdmo7sjduXA,10689
255
+ apache_airflow_providers_amazon-9.1.0rc4.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: flit 3.9.0
2
+ Generator: flit 3.10.1
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any