File manager - Edit - /opt/imunify360/venv/lib/python3.11/site-packages/defence360agent/feature_management/__pycache__/utils.cpython-311.pyc
Back
� ַ9j � � � d dl Z d dlZd dlmZ d dlmZmZ d dlmZ d dl m Z d dlmZ d dl mZ d dlmZmZmZ d d lmZ e j e� � Zdeded edefd�Zdedee d edee fd�Zded efd�Zdee defd�Zd� ZdS )� N)�chain)�List�Any)�Core)�hooks)�FeatureManagementPerms)�instance)�execute_iterable_expression�is_safe_subdir_name�rmtree� )�features�user�feature�value�returnc � � K � t j � � � 5 }t j | � � }|� ||� � t j |� � } || |� � }|rt � d||| � � n1t � d||| � � |� � � |cddd� � S # 1 swxY w Y dS )z�Sets a `feature` to `value` for a given `user`. Calls appropriate hook and returns its (bool) result. Logs the result of setting change. If hook fails rollbacks changes to database. z!Applied setting %s=%s for user %sz)Failed to apply setting %s=%s for user %sN)r �db�atomicr �get_perm�set_featurer �get_hook�logger�info�error�rollback)r r r �trx�perm�hook�oks �]/opt/imunify360/venv/lib/python3.11/site-packages/defence360agent/feature_management/utils.pyr r s% � � � � �� � � � � ��%�.�t�4�4������%�(�(�(��~�g�&�&�� �T�$�� � �� � ��K�K�3�W�e�T� � � � � �L�L�;���� � � � �L�L�N�N�N��#� � � � � � � � � � � ���� � � � � � s �BC�C�C�users�existing_usersc � � K � g g d�}|D ]p}||vrt � d|� � �"t || |� � � d {V ��r|d � |� � �U|d � |� � �q|S )N)� succeeded�failedzNo such user: %sr% r&