You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I used the GitHub search to find a similar issue and didn't find it.
I searched the Prefect documentation for this issue.
I checked that this issue is related to Prefect and not one of its dependencies.
Bug summary
First I create an S3 block and an AWS Credentials block from the SDK. If I assign the credentials block to the S3 bucket in the UI, the Client Parameters are incorrectly stored as a dictionary. This leads to an error any time I try to use the S3 bucket I created.
I can see from the output of my loaded S3 bucket loaded_s3 = S3Bucket.load("s3-from-code") that aws_client_parameters is stored as a dictionary rather than an instance of AwsClientParameters as it should be:
I faced the same issue when changed the persistence result configuration from a S3 Block to a S3Bucket Block: prefect config set PREFECT_DEFAULT_RESULT_STORAGE_BLOCK=s3-bucket/my-bucket
File "/home/root/ve/lib/python3.11/site-packages/prefect_aws/credentials.py", line 121, in __hash__
hash(self.aws_client_parameters),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unhashable type: 'dict'
First check
Bug summary
First I create an S3 block and an AWS Credentials block from the SDK. If I assign the credentials block to the S3 bucket in the UI, the Client Parameters are incorrectly stored as a dictionary. This leads to an error any time I try to use the S3 bucket I created.
I can see from the output of my loaded S3 bucket
loaded_s3 = S3Bucket.load("s3-from-code")
that aws_client_parameters is stored as a dictionary rather than an instance of AwsClientParameters as it should be:AwsCredentials(region_name=None, profile_name=None, aws_access_key_id=None, aws_session_token=None, **aws_client_parameters={'config': None, 'verify': True, 'use_ssl': True, 'api_version': None, 'endpoint_url': None, 'verify_cert_path': None}**, aws_secret_access_key=None)
Which leads to
TypeError: unhashable type: 'dict'
whenever I try to work with the S3 bucket.Reproduction
Assign the credentials block to S3 in the UI
Load in S3 Bucket:
Error
Versions
Additional context
No response
The text was updated successfully, but these errors were encountered: