CURRENT PATH:
/
opt
/
gsutil
/
gslib
/
commands
/
__pycache__
/
[ ⬅ KEMBALI ]
|
[ HOME ]
Upload File:
Upload Ke Sini
Dir Baru
File Baru
Editing:
versioning.cpython-39.pyc
a +(Wg]! � @ s, d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z ddl mZ dd lm Z dd lmZ ddlmZ ddlmZ dd lmZ ddlmZ ddlmZ ddlmZ dZdZee�d� ZdZ dZ!de e! Z"eee"�Z#de�$� d d d Z%eee!�Z&eee �Z'G dd� de �Z(dS )z?Implementation of versioning configuration command for buckets.� )�absolute_import)�print_function)�division)�unicode_literals)�metrics)�Command)�CommandArgument)�ApiSelector)�CommandException)�NO_URLS_MATCHED_TARGET)�CreateHelpText)�storage_v1_messages)�NO_MAX)�GcloudStorageMap)� shim_utilz8 gsutil versioning set (on|off) gs://<bucket_name>... z/ gsutil versioning get gs://<bucket_name>... � z� <B>SET</B> The "set" sub-command requires an additional sub-command, either "on" or "off", which, respectively, will enable or disable versioning for the specified bucket(s). z� <B>GET</B> The "get" sub-command gets the versioning configuration for a bucket and displays whether or not it is enabled. z� The `Versioning Configuration <https://cloud.google.com/storage/docs/object-versioning>`_ feature enables you to configure a Google Cloud Storage bucket to keep old versions of objects. The gsutil versioning command has two sub-commands: z'--format=value[separator=""](name.sub("z", "gs://").sub("$", ": "),zversioning.enabledz.yesno("Enabled", "Suspended"))c @ s� e Zd ZdZejdddgededdddej ej gej edd d gd�e�� ge�� gd�d �Z ejdddgddeeed�d�Zeeddddegi dd�eeg d�i d�eg d�i d�d�i d�d�i d�Zdd� Zdd� Zd d!� Zd"d#� Zd$S )%�VersioningCommandz,Implementation of gsutil versioning command.� versioning� setversioning� getversioning� � F�mode�on�off)�choices)�set�get)�command_name_aliases�usage_synopsis�min_args�max_args�supported_sub_args�file_url_ok�provider_url_ok�urls_start_arg�gs_api_support�gs_default_api�argparse_arguments�command_helpz4Enable or suspend versioning for one or more buckets)r r )� help_name�help_name_aliases� help_type�help_one_line_summary� help_text�subcommand_help_text�storage�buckets�listz--rawT)�gcloud_command�flag_map�supports_output_translation)r0 r1 �updatez--versioning)r3 r4 )r0 r1 r6 z--no-versioning�r r c C s, | j s| �� | j d �� dkr$dS dS d S )Nr r r � )�args�$RaiseWrongNumberOfArgumentsException�lower)�self� r= �(/opt/gsutil/gslib/commands/versioning.py�_CalculateUrlsStartArg� s z(VersioningCommand._CalculateUrlsStartArgc C s� | j d �� }|dvr$td| j ��| j dd� }|s>| �� d}|D ]�}| j|dgd�}|D ]p}|j}d }tjtj� � d �}|dkr�| j �d|� d |j_ n| j �d |� d|j_ | jj|j||jdgd� q^qF|s�ttt|� ��dS )z+Gets versioning configuration for a bucket.r r7 z,Argument to "%s set" must be either <on|off>r8 NF�id�� bucket_fieldsT)r r zEnabling versioning for %s...zSuspending versioning for %s...)�provider�fields)r9 r; r �command_namer: �GetBucketUrlIterFromArg�storage_url�apitools_messages�Bucket�VersioningValue�logger�infor �enabled� gsutil_api�PatchBucket�bucket_name�schemer r2 ) r<