/L d dl Z d dlZd dlZd dlmZ d dlmZ d dlmZ d dl m
Z
mZ d dlm
Z
mZ ede j d Zd
Zd Zd Zd
ZdS ) N)
setup_logging)cpusers)get_pw)get_suites_allowed_pathget_admin_config_permissions)CAGEFS_MP_FILENAMEremove_mount_dir_cagefsconfigs_migrationz%/var/log/clwpos/configs_migration.log)caller_name
file_levellogfile_pathc t j | | t | \ }}}t j | D ]M}t j || }t j ||| t j || Nd S )N) shutilcopy2r oslistdirpathjoinchownchmod)sourcetargetgidownergroupmodeitem full_paths py/clwpos/migrations/configs.py_copy_with_permsr s
L 5c::E5$
6"" " "GLL..
E5)))
D!!!!" " c " t dS )zM
Migrate configs stored on CloudLinux Solo Edition: /var/clwpos/solo
N)migrate_solo_edition_config r! r migrate_configsr% s !!!!!r! c | st d d S t D ]}t | }|j |j }}t j t | }t j
| st
j |dd | D ]}t ||| d S )Nz&Nothing to do, no configs in directory)usernamei F)exist_ok)
_loggerinfor r pw_uidpw_gidr r dirnamer existsmakedirsr )files_to_be_movedr' pw_infouidr r r s r _transfer_config_filesr3 # s =>>>II . .(+++>7>Sw6s;;<<w~~d## 5Kee4444% . .DT4---- .. .r! c dg } t j r fdt j D } t | t j t
rt
ddd t j rt j d S d S )Nz/var/clwpos/soloc P g | ]"}t j | #S r$ )r r r ).0r solo_dirs r