lavkach3

Форк
0
33 строки · 903.0 Байт
1
import logging
2
import os
3

4
import boto3
5
from botocore.exceptions import ClientError
6

7
from core.db_config import config
8

9

10
class S3:
11
    def __init__(self):
12
        self.bucket = config.AWS_DEFAULT_BUCKET
13
        self.s3_client = boto3.client(
14
            service_name='s3',
15
            region_name=config.AWS_DEFAULT_REGION,
16
            endpoint_url='https://storage.yandexcloud.net',
17
            aws_access_key_id=config.AWS_ACCESS_KEY_ID,
18
            aws_secret_access_key=config.AWS_SECRET_ACCESS_KEY,
19
        )
20

21
    async def upload_file(self, file_name, object_name=None):
22
        if object_name is None:
23
            object_name = os.path.basename(file_name)
24
        # Upload the file
25
        try:
26
            self.s3_client.upload_file(file_name, self.bucket, object_name)
27
        except ClientError as e:
28
            logging.error(e)
29
            return False
30
        return True
31

32

33
s3_client = S3()
34

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.