From 66b57d48cfc5ceda18d4d7a9cf6f600e06899f91 Mon Sep 17 00:00:00 2001 From: Veiko Aasa Date: Tue, 7 Jan 2020 16:45:02 +0200 Subject: [PATCH] samba: Improve actions script startup time Speedup actions script startup time from 3.6s to 0.45s on A20-OLinuXino-LIME2 hardware, improve top three slowest imports: - don't import constant from manifest (saves 2.7s) - defer importing actions_utils and augeas (saves 0.3s + 0.15s) Signed-off-by: Veiko Aasa Reviewed-by: Joseph Nuthalapati --- actions/samba | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/actions/samba b/actions/samba index ffe065afe..c7d79cdd5 100755 --- a/actions/samba +++ b/actions/samba @@ -27,10 +27,7 @@ import shutil import stat import subprocess -import augeas -from plinth import action_utils -from plinth.modules.samba.manifest import SHARES_CONF_BACKUP_FILE - +SHARES_CONF_BACKUP_FILE = '/var/lib/plinth/backups-data/samba-shares-dump.conf' DEFAULT_FILE = '/etc/default/samba' CONF_PATH = '/etc/samba/smb-freedombox.conf' @@ -264,6 +261,7 @@ def _set_open_share_permissions(directory): def _use_config_file(conf_file): """Set samba configuration file location.""" + import augeas aug = augeas.Augeas( flags=augeas.Augeas.NO_LOAD + augeas.Augeas.NO_MODL_AUTOLOAD) aug.set('/augeas/load/Shellvars/lens', 'Shellvars.lns') @@ -327,6 +325,7 @@ def subcommand_get_users(_): def subcommand_setup(_): """Configure samba, use custom samba config file.""" + from plinth import action_utils with open(CONF_PATH, 'w') as file_handle: file_handle.write(CONF) _use_config_file(CONF_PATH)