Edit File: run.cpython-311.pyc
� ����m�dS����������������������������d�dl�Z�d�dlZd�dlZd�dlZd�dlZd�dlmZ�d�dlmZ�d��dD���������������Z d��Z dd�Zd d �Zdd �Z edk����r�e ���������������dS�dS�)�����N)�ArgumentParser)� check_filec����������� ������������g�|�]<}t����������j��������|d�t����������j��������t����������j��������j��������������������iz����������������=S�)�sep)�re�compile�escape�os�pathr�����.0�patts��� �Z/builddir/build/BUILD/cloudlinux-venv-1.0.2/venv/lib/python3.11/site-packages/dodgy/run.py� <listcomp>r��� ���sJ������� �� �� ����J�t�u�b�i����4�4�5�5�6�6� �� �� �����)z(^|%(sep)s)\.[^\.]z^tests?%(sep)s?z%(sep)stests?(%(sep)s|$)z_tests?(%(sep)s|$)c�����������������������g�}t����������j��������|�������������D�]>\��}}}|D�]5}|���������������������t�����������j�����������������������������||��������������������������6�?|S��N)r ����walk�appendr����join)� start_path� filepaths�root�_�files� file_names��� r���� list_filesr������sg�������I��'�*�-�-��<��<���a���� <�� <�I����R�W�\�\�$� �:�:�;�;�;�;� <��r���c����������� �������B�����g�}|pg�}d��|D���������������}|t�����������z ��}t����������|�������������}|D�]�}t����������j�����������������������������||��������������t�����������fd�|D���������������������������r�>t ����������j��������|������������}|d����������|d������������������������������d������������s�v �t����������|������������D�].}|� ���������������������|d���������|d���������|d���������d���������������/��#�t����������$�r-}t����������d� ��������������������||�������������������������Y�d�}~��d�}~ww�xY�w|S�) Nc������������������6�����g�|�]}t����������j��������|��������������S���)r���r���r���s��� r���r���zrun_checks.<locals>.<listcomp>"���s"������>�>�>��B�J�t�$�$�>�>�>r���c������������������:������g�|�]}|�������������������������������������S�r ���)�search)r ����ignore�relpaths��� �r���r���zrun_checks.<locals>.<listcomp>(���s%�������B�B�B�6�� � �g�&�&�B�B�Br���r���ztext/��������)r����line�code�messagezUnable to read {!r}: {})�IGNORE_PATHSr���r ���r���r$����any� mimetypes� guess_type� startswithr���r����UnicodeDecodeError�print�format) � directory�ignore_paths�warningsr����filepath�mimetype� msg_parts�errr$���s ��� @r���� run_checksr9������sy�������H��%�2�L�>�>��>�>�>�L��L� �L��9�%�%�I���C��C���'�/�/�(�I�6�6���B�B�B�B�\�B�B�B�C�C�� ����'��1�1���A�;��h�q�k�&<�&<�W�&E�&E��� C�'��1�1�� �� � ���� '� )�!�� )�!��#,�Q�<� ���������� ���"�� C�� C�� C��+�2�2�8�S�A�A�B�B�B�B�B�B�B�B����� C������Os����&>C%�% D�/#D�DFc����������������������t����������t����������j����������������������|��������������}t����������j��������d|id�������������}t ����������j�����������������������������|dz����������������|rt����������j��������d�������������t����������j��������|rdnd�������������d�S�)N)r3���r4���r&���)�indent� r���r%���) r9���r ����getcwd�json�dumps�sys�stdout�write�exit)r3���� zero_exitr4����outputs��� r����runrF���A���s��������"�)�+�+�L�A�A�A�H� �Z��X�.�q� 9� 9� 9�F��J���V�d�]�#�#�#�����������H�(� !�Q�Q��"�"�"�"�"r���c����������� �������&����|�pt�����������j��������}�d}t����������d|�������������}|���������������������dddt����������dd�dd � �������������|���������������������ddd dd��������������|���������������������|�������������\��}}t ����������|j��������|j����������������������d�S�)Nz�A very basic tool to run against your codebase to search for "dodgy" looking values. It is a series of simple regular expressions designed to detect things such as accidental SCM diff checkins, or passwords/secret keys hardcoded into files.�dodgy)�descriptionz--ignore-pathsz-i�+r#����IGNORE_PATHzPaths to ignore)�nargs�type�dest�default�metavar�helpz--zero-exitz-0rD���z�Dodgy will exit with a code of 1 if problems are found. This flag ensures that it always returns with 0 unless an exception is raised.� store_true)rN���rQ����action)r3���rD���) r@����argvr����add_argument�str�parse_known_argsrF���r#���rD���)rT����desc�parser�argsr���s��� r����mainr[���K���s���������3�8�D� W�� � ��G�� 6� 6� 6�F� ������ � ��� ���� �� �� ������� ��V������������%�%�d�+�+�G�D�!��T�[�D�N�;�;�;�;�;�;r����__main__r���)NF)r>���r,���r ���r���r@����argparser����dodgy.checksr���r*���r���r9���rF���r[����__name__r ���r���r����<module>r`������s�������������������� � � � �� � � � �� � � � ��#��#��#��#��#��#��#��#��#��#��#��#� �� �� �� �� ������� �� �� �� �F#��#��#��#�<��<��<��<�<��z����D�F�F�F�F�F���r���