Viewing file: awp.py (1.75 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2018 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # https://cloudlinux.com/docs/LICENCE.TXT #
import logging from clconfigure import run, task
from clcommon.clwpos_lib import configure_accelerate_wp from clcommon.const import Feature from clcommon.cpapi import is_panel_feature_supported from clcommon.utils import is_ubuntu
STATUS_ALLOWED_FOR_ALL = 'allowed_for_all' SUITE_AWP_FREE = 'accelerate_wp'
@task("Enabling Accelerate WP") def enable_accelerate_wp_free(): """ Set AccelerateWP free suite """ if is_ubuntu(): logging.warning('AccelerateWP setup upon new server is skipped: Ubuntu is not supported') return if not is_panel_feature_supported(Feature.WPOS): logging.warning('AccelerateWP setup upon new server is skipped: Control Panel is not supported') return
try: configure_accelerate_wp() except Exception: logging.exception('AccelerateWP configuration upon new server setup failed')
# see reasoning in CLPRO-1924 logging.info('Turning off notifications and automatic WordPress plugin installation') run(['/usr/bin/cloudlinux-awp-admin', 'set-options', '--smart-advice-notifications', 'off', '--smart-advice-wordpress-plugin', 'off', '--smart-advice-reminders', 'off'])
@task("Changing Accelerate WP suite {suite} status to {status}") def set_suite_status(suite: str, status: str): """ Set AccelerateWP suite to desired state. """ if status == STATUS_ALLOWED_FOR_ALL: run(['/usr/bin/cloudlinux-awp-admin', 'set-suite', '--suites', suite, '--allowed-for-all']) else: raise NotImplementedError(f"Currently not implemented status {status}")
|