/opt/cloudlinux/venv/lib/python3.11/site-packages/clwpos
NameSizeModeActions
bin/-0755rm
cli_versions/-0755rm
feature_suites/-0755rm
hooks/-0755rm
migrations/-0755rm
object_cache/-0755rm
optimization_features/-0755rm
php/-0755rm
user/-0755rm
__pycache__/-0755rm
billing.py63920644editdlrm
cl_wpos_exceptions.py40200644editdlrm
constants.py56950644editdlrm
create_user_uid_dirs.py7540644editdlrm
cron.py21890644editdlrm
daemon.py407290644editdlrm
daemon_base.py29120644editdlrm
daemon_config.py6210644editdlrm
daemon_redis_lib.py158640644editdlrm
daemon_subscription_handler.py327350644editdlrm
data_collector_utils.py96440644editdlrm
logsetup.py41420644editdlrm
papi.py101040644editdlrm
parse.py21540644editdlrm
redis_configuration_pid_file_cleaner.py10370755editdlrm
report_generator.py265970644editdlrm
scoped_cache.py13720644editdlrm
socket_utils.py69380644editdlrm
stats.py123040644editdlrm
utils.py779730644editdlrm
whmcs_utils.py115330644editdlrm
wpos_admin.py764140644editdlrm
wpos_hooks.py84660755editdlrm
wpos_req_scanner.py54900644editdlrm
wp_config.py36360644editdlrm
wp_utils.py188070644editdlrm
__init__.py9280644editdlrm
Edit: /opt/cloudlinux/venv/lib/python3.11/site-packages/clwpos/cron.py (2189B)
from __future__ import absolute_import import os import subprocess import logging from glob import iglob from typing import Iterable from clwpos.optimization_features import ( Feature, OBJECT_CACHE_FEATURE, CDN_FEATURE ) _DEFAULT_SCRIPT_ENV = { "CLSHARE": "/usr/share/cloudlinux", "WPOS_REQ_CRON_FILE": "/etc/cron.d/clwpos_req_cron", "CLWPOS_COLLECT_INFORMATION_CRON": "/etc/cron.d/clwpos_collect_information_cron.py" } _OBJECT_CACHING_ENV = { "CLWPOS_REDIS_EXTENSION_INSTALLER": "/etc/cron.d/clwpos_redis_extension_installer", "CLWPOS_CLEANER_CRON": "/etc/cron.d/clwpos_cleaner_cron", "CLWPOS_BILLING_CRON": "/etc/cron.d/clwpos_billing_cron", } _CDN_ENV = { "CLWPOS_BILLING_CRON": "/etc/cron.d/clwpos_billing_cron", } _CRON_ENV_BY_FEATURE = { OBJECT_CACHE_FEATURE: _OBJECT_CACHING_ENV, CDN_FEATURE: _CDN_ENV } def install_cron_files(features: Iterable[Feature], wait_child_process=False): """ This script installs cron files based on the features that are currently enabled. Please note that already installed cron files will not be removed if new list has missing feature against previous one. """ features = tuple(features) if wait_child_process: exec_func = subprocess.run else: exec_func = subprocess.Popen if not features: logging.info('There are no features active, skip installing cron files.') return env_params = _DEFAULT_SCRIPT_ENV.copy() for feature in features: feature_env = _CRON_ENV_BY_FEATURE.get(feature) if feature_env is None: continue logging.info('Feature %s is active, installing cron files', feature) env_params.update(feature_env) exec_func( ["/usr/share/cloudlinux/add_clwpos_crons.sh"], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL, env=env_params ) def clean_crons(prefix: str): """Remove all cron files starting from prefix""" crondir = '/etc/cron.d' for _f in iglob(f'{crondir}/{prefix}*'): os.unlink(_f) def clean_clwpos_crons(): """Remove all WPOS cron files""" clean_crons(prefix='clwpos_')