Файловый менеджер - Редактировать - /opt/imh-python/lib/python3.9/site-packages/celery/backends/__pycache__/gcs.cpython-39.pyc
Ðазад
a t�hl � @ s� d Z ddlmZ ddlmZmZ ddlmZ ddlmZ ddl m Z ddlmZ ddl mZ dd lmZ d dlmZ z0ddlZdd lmZ ddlmZ ddlmZ W n ey� dZY n0 dZG dd� de�ZdS )z5Google Cloud Storage result store backend for Celery.� )�ThreadPoolExecutor)�datetime� timedelta)�getpid)�RLock)�bytes_to_str)� dictfilter)�url_to_parts)�ImproperlyConfigured� )�KeyValueStoreBackendN)�storage)�Client)� DEFAULT_RETRY)� GCSBackendc sp e Zd ZdZ� fdd�Zdd� Zdd� Zdd � Zd d� Ze dd � �Z e dd� �Zdd� Zdd� Z dd� Z� ZS )r z)Google Cloud Storage task result backend.c s t � jf i |�� t� | _t� | _t| _d | _t s:t d��| jj}| j rd| �� }|jf i t|��� |�d�| _| js~t d��|�d�| _| js�t d��|�dd��d�| _t|�d d ��| _t|�d�p�d�| _| jdk r�t d | j� d���n"| j�r| �� �st d| j� ���d S )Nz8You must install google-cloud-storage to use gcs backend� gcs_bucketz:Missing bucket name: specify gcs_bucket to use gcs backendZgcs_projectz6Missing project:specify gcs_project to use gcs backend� gcs_base_path� �/Zgcs_threadpool_maxsize� Zgcs_ttlr z Invalid ttl: z# must be greater than or equal to 0z>Missing lifecycle rule to use gcs backend with ttl on bucket: )�super�__init__r �_lockr �_pidr � _retry_policy�_clientr r Zapp�conf�url�_params_from_url�updater �get�bucket_name�project�strip� base_path�int�_threadpool_maxsize�float�ttl� _is_bucket_lifecycle_rule_exists)�self�kwargsr Z url_params�� __class__� ��/root/rpmbuild/BUILDROOT/imh-python39-modules-3.9.7-92.el8.x86_64/opt/imh-python/lib/python3.9/site-packages/celery/backends/gcs.pyr sJ ��� � ��zGCSBackend.__init__c C s@ t |�}| �|�}z|j| jd�W S tjjy: Y d S 0 d S �N��retry)r � _get_blobZdownload_as_bytesr r �blobZNotFound�r* �keyr4 r. r. r/ r E s zGCSBackend.getc C sB t |�}| �|�}| jr.t�� t| jd� |_|j|| jd� d S )N)�secondsr1 ) r r3 r( r �utcnowr Zcustom_timeZupload_from_stringr )r* r6 �valuer4 r. r. r/ �setM s zGCSBackend.setc C s, t |�}| �|�}|�� r(|j| jd� d S r0 )r r3 �exists�deleter r5 r. r. r/ r<