File manager - Edit - /opt/saltstack/salt/lib/python3.10/site-packages/libcloud/storage/drivers/__pycache__/scaleway.cpython-310.pyc
Back
o ;j � @ sZ d dl mZ d dlmZmZmZmZ dgZdZdZ dZ ee e d�ZdZG d d� de�Z d S )� )�Literal)�S3_CDN_URL_EXPIRY_HOURS�S3StorageDriver�BaseS3StorageDriver�S3SignatureV4Connection�ScalewayStorageDriverzs3.fr-par.scw.cloudzs3.nl-ams.scw.cloudzs3.pl-waw.scw.cloud)�fr-parznl-amszpl-wawzCDN feature not implementedc s^ e Zd ZdZdZeZdZ d� fdd� Ze dd � �Z ed fded fd d�Z � ZS )r zScaleway Storage Driverz+https://www.scaleway.com/en/object-storage/r NTc s� t | d�r |s | j}|| _|r|t�� vrtd| ��d| | _|d u r+t| | j_n|| j_t� j d|||||||d�|�� d S )N�region_namez!Invalid or unsupported region: %szScaleway Object Storage (%s))�key�secret�secure�host�port�region�url� ) �hasattrr �REGION_TO_HOST_MAP�keys� ValueError�name� connectionClsr �super�__init__) �selfr r r r r r r �kwargs�� __class__r �U/opt/saltstack/salt/lib/python3.10/site-packages/libcloud/storage/drivers/scaleway.pyr / s( � �zScalewayStorageDriver.__init__c C s t �� S )N)r r )r r r r �list_regionsV s z"ScalewayStorageDriver.list_regions�GET� ex_method)r �PUTZDELETEc C s t j| |||d�S )a� Return a "presigned URL" for read-only access to object :param obj: Object instance. :type obj: :class:`Object` :param ex_expiry: The number of hours after which the URL expires. Defaults to 24 hours or the value of the environment variable "LIBCLOUD_S3_STORAGE_CDN_URL_EXPIRY_HOURS", if set. :type ex_expiry: ``float`` :param ex_method: The HTTP method for which the URL is valid. Defaults to "GET". :type ex_method: ``str`` :return: Presigned URL for the object. :rtype: ``str`` )� ex_expiryr! )r �get_object_cdn_url)r �objr# r! r r r r$ Z s �z(ScalewayStorageDriver.get_object_cdn_url)NTNNr N)�__name__� __module__�__qualname__r Zwebsiter r r r �classmethodr r r r$ � __classcell__r r r r r ) s&