diff --git a/wo/cli/plugins/info.py b/wo/cli/plugins/info.py index de4009e..1e3711c 100644 --- a/wo/cli/plugins/info.py +++ b/wo/cli/plugins/info.py @@ -69,89 +69,38 @@ class WOInfoController(CementBaseController): @expose(hide=True) def info_php(self): """Display PHP information""" - version = os.popen("/usr/bin/php7.2 -v 2>/dev/null | " - "head -n1 | cut -d' ' -f2 |" - " cut -d'+' -f1 | tr -d '\n'").read - config = configparser.ConfigParser() - config.read('/etc/{0}/fpm/php.ini'.format("php/7.2")) - expose_php = config['PHP']['expose_php'] - memory_limit = config['PHP']['memory_limit'] - post_max_size = config['PHP']['post_max_size'] - upload_max_filesize = config['PHP']['upload_max_filesize'] - max_execution_time = config['PHP']['max_execution_time'] - - if os.path.exists('/etc/php/7.2/fpm/pool.d/www.conf'): - config.read('/etc/php/7.2/fpm/pool.d/www.conf') + pargs = self.app.pargs + if WOAptGet.is_installed(self, 'php7.4-fpm'): + pargs.php74 = True else: - Log.error(self, 'php-fpm pool config not found') - if config.has_section('www'): - wconfig = config['www'] - elif config.has_section('www-php72'): - wconfig = config['www-php72'] + Log.info(self, "PHP 7.4 is not installed") + if WOAptGet.is_installed(self, 'php8.0-fpm'): + pargs.php80 = True else: - Log.error(self, 'Unable to parse configuration') - www_listen = wconfig['listen'] - www_ping_path = wconfig['ping.path'] - www_pm_status_path = wconfig['pm.status_path'] - www_pm = wconfig['pm'] - www_pm_max_requests = wconfig['pm.max_requests'] - www_pm_max_children = wconfig['pm.max_children'] - www_pm_start_servers = wconfig['pm.start_servers'] - www_pm_min_spare_servers = wconfig['pm.min_spare_servers'] - www_pm_max_spare_servers = wconfig['pm.max_spare_servers'] - www_request_terminate_time = (wconfig - ['request_terminate_timeout']) - try: - www_xdebug = ( - wconfig['php_admin_flag[xdebug.profiler_enable' - '_trigger]']) - except Exception as e: - Log.debug(self, "{0}".format(e)) - www_xdebug = 'off' + Log.info(self, "PHP 8.0 is not installed") + if WOAptGet.is_installed(self, 'php8.1-fpm'): + pargs.php81 = True + else: + Log.info(self, "PHP 8.1 is not installed") + if WOAptGet.is_installed(self, 'php8.2-fpm'): + pargs.php82 = True + else: + Log.info(self, "PHP 8.2 is not installed") + if WOAptGet.is_installed(self, 'php8.3-fpm'): + pargs.php83 = True + else: + Log.info(self, "PHP 8.3 is not installed") - config.read('/etc/{0}/fpm/pool.d/debug.conf'.format("php/7.2")) - debug_listen = config['debug']['listen'] - debug_ping_path = config['debug']['ping.path'] - debug_pm_status_path = config['debug']['pm.status_path'] - debug_pm = config['debug']['pm'] - debug_pm_max_requests = config['debug']['pm.max_requests'] - debug_pm_max_children = config['debug']['pm.max_children'] - debug_pm_start_servers = config['debug']['pm.start_servers'] - debug_pm_min_spare_servers = config['debug']['pm.min_spare_servers'] - debug_pm_max_spare_servers = config['debug']['pm.max_spare_servers'] - debug_request_terminate = (config['debug'] - ['request_terminate_timeout']) - try: - debug_xdebug = (config['debug']['php_admin_flag[xdebug.profiler_' - 'enable_trigger]']) - except Exception as e: - Log.debug(self, "{0}".format(e)) - debug_xdebug = 'off' - - data = dict(version=version, expose_php=expose_php, - memory_limit=memory_limit, post_max_size=post_max_size, - upload_max_filesize=upload_max_filesize, - max_execution_time=max_execution_time, - www_listen=www_listen, www_ping_path=www_ping_path, - www_pm_status_path=www_pm_status_path, www_pm=www_pm, - www_pm_max_requests=www_pm_max_requests, - www_pm_max_children=www_pm_max_children, - www_pm_start_servers=www_pm_start_servers, - www_pm_min_spare_servers=www_pm_min_spare_servers, - www_pm_max_spare_servers=www_pm_max_spare_servers, - www_request_terminate_timeout=www_request_terminate_time, - www_xdebug_profiler_enable_trigger=www_xdebug, - debug_listen=debug_listen, debug_ping_path=debug_ping_path, - debug_pm_status_path=debug_pm_status_path, - debug_pm=debug_pm, - debug_pm_max_requests=debug_pm_max_requests, - debug_pm_max_children=debug_pm_max_children, - debug_pm_start_servers=debug_pm_start_servers, - debug_pm_min_spare_servers=debug_pm_min_spare_servers, - debug_pm_max_spare_servers=debug_pm_max_spare_servers, - debug_request_terminate_timeout=debug_request_terminate, - debug_xdebug_profiler_enable_trigger=debug_xdebug) - self.app.render((data), 'info_php.mustache') + if pargs.php74: + self.info_php74() + if pargs.php80: + self.info_php80() + if pargs.php81: + self.info_php81() + if pargs.php82: + self.info_php82() + if pargs.php83: + self.info_php83() @expose(hide=True) def info_php74(self): @@ -631,16 +580,7 @@ class WOInfoController(CementBaseController): not pargs.php81 and not pargs.php82 and not pargs.php83): pargs.nginx = True pargs.mysql = True - if WOAptGet.is_installed(self, 'php7.4-fpm'): - pargs.php74 = True - if WOAptGet.is_installed(self, 'php8.0-fpm'): - pargs.php80 = True - if WOAptGet.is_installed(self, 'php8.1-fpm'): - pargs.php81 = True - if WOAptGet.is_installed(self, 'php8.2-fpm'): - pargs.php82 = True - if WOAptGet.is_installed(self, 'php8.3-fpm'): - pargs.php83 = True + pargs.php = True if pargs.nginx: if ((not WOAptGet.is_installed(self, 'nginx-custom')) and @@ -649,35 +589,8 @@ class WOInfoController(CementBaseController): else: self.info_nginx() - if pargs.php74: - if WOAptGet.is_installed(self, 'php7.4-fpm'): - self.info_php74() - else: - Log.info(self, "PHP 7.4 is not installed") - - if pargs.php80: - if WOAptGet.is_installed(self, 'php8.0-fpm'): - self.info_php80() - else: - Log.info(self, "PHP 8.0 is not installed") - - if pargs.php81: - if WOAptGet.is_installed(self, 'php8.1-fpm'): - self.info_php81() - else: - Log.info(self, "PHP 8.1 is not installed") - - if pargs.php82: - if WOAptGet.is_installed(self, 'php8.2-fpm'): - self.info_php82() - else: - Log.info(self, "PHP 8.2 is not installed") - - if pargs.php83: - if WOAptGet.is_installed(self, 'php8.3-fpm'): - self.info_php83() - else: - Log.info(self, "PHP 8.3 is not installed") + if pargs.php: + self.info_php() if pargs.mysql: if WOShellExec.cmd_exec(self, "/usr/bin/mysqladmin ping"):