HEX
Server: Apache/2.4.68 (Debian)
System: Linux as-cs-widget-demo-us-central1 6.1.0-44-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.164-1 (2026-03-09) x86_64
User: root (0)
PHP: 8.2.32
Disabled: NONE
Upload Files
File: //lib/google-cloud-sdk/bin/bootstrapping/__pycache__/gsutil.cpython-312.pyc
�

������dZddlmZddlmZddlZddlZddlZddlmZddl	m
Z
ddl	mZddl	mZdd	l	m
Z
dd
l	mZddlmZddlmZdd
lmZd�Zd�Zd�Zd�Zedk(rj	ej4dd�Zej8de��ddiZej<�Zej@ee�ejBd�e�yy#e"$rZ#ejHe#d�YdZ#[#ydZ#[#wwxYw)z*A convenience wrapper for starting gsutil.�)�absolute_import)�unicode_literalsN)�
exceptions)�config)�
context_aware)�log)�metrics)�
properties)�gce)�encoding)�filesc�r�|�y|jd�|jdj|||���y)Nz-oz{section}:{name}={value})�section�name�value)�append�format)�argsrrrs    �bin/bootstrapping/gsutil.py�_MaybeAddBotoOptionrs<��
�]�
��+�+�d���+�+�(�/�/��D��0�/�0�c�2�t|d�r|jS	tj|j�}tj|�}d|vr|dSy#tj$r+}tjd|j|�Yd}~yd}~wwxYw)z:Returns the cert provider command from the context config.�cert_provider_commandz-context aware settings discovery file %s - %sN)
�hasattrrr
�ReadFileContents�config_path�json�loads�Errorr�debug)�context_config�contents�json_out�es    r�_GetCertProviderCommandr%#s���
�^�4�5��/�/�/�-��%�%�n�&@�&@�A�H��z�z�(�#�H��(�*�
�-�
.�.�+��	���-��I�I�=��(�(�!�-�-��-�s�<A�B�+!B�Bc�8�tj�}|r(|jtjjk(ry|xr
t|dd�}t
|dd|�|r;t|�}t|t�rdj|�}t
|dd|�yy)z*Adds device certificate settings for mTLS.N�use_client_certificateT�Credentials� r)r�Config�config_type�
ConfigType�ENTERPRISE_CERTIFICATE�getattrrr%�
isinstance�list�join)rr!r'rs    r�_AddContextAwareOptionsr23s��� �'�'�)�.��
�
$�
$�	�	!�	!�	8�	8�9���>�
�n�6��=���d�M�+C�,�.��3�N�C���'��.�!�h�h�'<�=����m�-D�-�/�
rc�N�g}tj�\}}tjjj
j
�xr3tjjjj
�}t|dd|�|�r�tjtjdd�|tj�j!�vr5t|ddd�tjtjdd��n^t#j$�j'|�}tj(tjd	d
�}tj(tjdd
�}|r"tj*j-||g�}n�|r"tj*j-||g�}n_dtj.j1tj.j-d
d��|g}tj*j-|�}tjtjd	d�tjtjd|�tjtjdt3j4��tjj6}|j8j;�}	|	r�t|dd|	�t|dd|j<j;��t|dd|j>j
��t|dd|j@j;��t|dd|jBj;��tjjjDj
�}
t|dd|
�dn|
�t|ddtjjjFj;��tI|�tjJddg|���y)zLaunches gsutil.�GSUtil�default_project_id�(CLOUDSDK_CORE_PASS_CREDENTIALS_TO_GSUTIL�1�
GoogleCompute�service_account�default�-CLOUDSDK_PASSED_GCE_SERVICE_ACCOUNT_TO_GSUTIL�BOTO_CONFIG��	BOTO_PATHz
/etc/boto.cfg�~z.botoN�GA_CID�Boto�proxy�
proxy_port�
proxy_rdns�
proxy_user�
proxy_pass�https_validate_certificates�ca_certificates_file�platform/gsutil�gsutil)&�
bootstrapping�GetActiveProjectAndAccountr
�VALUES�core�pass_credentials_to_gsutil�GetBool�auth�disable_credentialsrr�SetEncodedValue�os�environ�c_gce�Metadata�Accountsr�Paths�LegacyCredentialsGSUtilPath�GetEncodedValue�pathsepr1�path�
expanduserr	�GetCIDIfMetricsEnabledrB�address�Get�port�rdns�username�password�disable_ssl_validation�custom_ca_certs_filer2�ExecutePythonTool)r�project�account�pass_credentials�legacy_config_path�boto_config�	boto_path�
path_parts�proxy_params�
proxy_address�disable_ssls           r�mainrsNs+��
�$�"�=�=�?��'�7������7�7�?�?�A�?�
�
�
�
 �
 �
4�
4�
<�
<�
>�>���d�H�&:�G�D��
���
�
�
�>��E��%�.�.�"�+�+�-�-��$��1B�I�N����
�*�*�E�s�L�"�<�<�>�E�E�g�N��
�,�,�R�Z�Z���K�k��*�*�2�:�:�{�B�G�i�	��J�J�O�O�[�2D�$E�F�	���J�J�O�O�Y�0B�$C�D�	�%��g�g�(�(������c�7�)C�D�(�*�
��J�J�O�O�J�/�	����r�z�z�=�$�?����r�z�z�;�	�B�����j�j�(�G�:�:�<�>��"�"�(�(�,��&�&�*�*�,�-����f�g�}�=���f�l�L�4E�4E�4I�4I�4K�L���f�l�L�4E�4E�4M�4M�4O�P���f�l�L�4I�4I�4M�4M�4O�P���f�l�L�4I�4I�4M�4M�4O�P��!�!�&�&�=�=�E�E�G�+��d�F�$A�)�1�d�;��H��d�F�$:� �'�'�,�,�A�A�E�E�G�I��$���!�!�"3�X�E��Er�__main__rI�VERSIONrJ)�version�updatez(To update, run: gcloud components update)%�__doc__�
__future__rrrrTrK�googlecloudsdk.callioper�googlecloudsdk.corerrrr	r
�googlecloudsdk.core.credentialsrrV�googlecloudsdk.core.utilrr
rr%r2rs�__name__rrv�CommandStart�blocked_commands�GetDecodedArgv�argv�WarnAndExitOnBlockedCommand�CheckUpdates�	Exceptionr$�HandleError�rr�<module>r�s���1�&�'��	��.�&�-�#�'�*�8�-�*�0�
-� /�6KF�\�z��(�,�m�,�,�->�	�J�G��M���x��9�	�<���(�=�'�'�)�D�-�M�-�-�d�4D�E�
�M���x�(��F�!��"
�(��J���1�h�'�'��(�s�#A(C
�
C/�C*�*C/