Spaces:
Sleeping
Sleeping
| import boto3, os | |
| import logging | |
| from uuid import uuid4 | |
| def upload_image_to_r2(image_bytes, folder_name="leadgen_vivek", app_type="bulk_generation"): | |
| try: | |
| s3 = boto3.client( | |
| "s3", | |
| endpoint_url=os.getenv('R2_ENDPOINT'), | |
| aws_access_key_id=os.getenv('R2_ACCESS_KEY'), | |
| aws_secret_access_key=os.getenv('R2_SECRET_KEY'), | |
| region_name="auto" | |
| ) | |
| filename = f"{uuid4().hex}.png" | |
| if folder_name: | |
| file_key = f"hug_face/{app_type.strip('/')}/{folder_name.strip('/')}/{filename}" | |
| else: | |
| file_key = f"hug_face/{app_type.strip('/')}/{filename}" | |
| s3.put_object( | |
| Bucket=os.getenv('R2_BUCKET_NAME'), | |
| Key=file_key, | |
| Body=image_bytes, | |
| ContentType="image/png" | |
| ) | |
| return f"{os.getenv('NEW_BASE').rstrip('/')}/{file_key}" | |
| except Exception as e: | |
| logging.error(e) | |
| return None |