관리-도구
편집 파일: clselectctl.cpython-37.pyc
B �v6d�$ � @ s~ d dl mZ d dl mZ d dl mZ d dlZd dlZd dlZd dlmZ d dl Z d dl Z d dlZd dl mZ d dlmZ dd lmZ d d lmZmZ d dlmZmZ d dlmZ dd lmZ ddlmZ ddlm Z ddl!m"Z" d dl m#Z#mZ dddddddgZ$edd�Z%edd�Z&dd� Z'dd � Z(d!d"� Z)d#d$� Z*d%d&� Z+d5d'd(�Z,d)d*� Z-d6d+d,�Z.d-d.� Z/d/d0� Z0d1d2� Z1d3d4� Z2dS )7� )�absolute_import)�print_function)�divisionN)� namedtuple)�List)� iteritems� )�clpassenger)�cpusers� getCPName)�drop_privileges�ClPwd)�is_no_php_binaries_on_cpanel)�ClSelectExcept)�NodeManager)� PythonManager)�get_abs_rel)�Optionalr �public_htmlZrubyvenvZ virtualenvz.cl.selectorz.cagefsZwww�nodevenv�ApplicationSummary)�user�version�doc_root�interpreter� app_status�InterpreterSummary)r �version_full�enabled� installedc C sl d| krt d��tj�| �r$t d��| d dkr8t d��| tkrLt d| ��t�d| �}|d krht d ��d S ) N� z#Directory should not contain spacesz+Directory should be relative to user's home����/z-Directory should not contain a trailing slashzDirectory "%s" not allowedz[-\.\w\/]+$z*Directory name contains invalid characters)� ValueError�os�path�isabs�DISABLED_DIRECTORY_NAMES�re�match)� directoryZ all_valid� r+ �E/opt/alt/python37/lib/python3.7/site-packages/clselect/clselectctl.py�check_directory&