@@ -754,6 +754,44 @@ def restart_application(short_name):
754754 except Exception as e :
755755 return False
756756
757+ def backup_data_folder (app_data ):
758+ log_message (" Running backup_data_folder..." )
759+
760+ def restore_data_folder (app_data ):
761+ log_message (" Running restore_data_folder..." )
762+
763+ def reset_data_folder (app_data ):
764+ log_message (" Running reset_data_folder..." )
765+
766+ # If app_data is a string (short name), convert it to a full configuration
767+ # and preserve the original short name.
768+ if isinstance (app_data , str ):
769+ original_short_name = app_data # Save the short name for service commands.
770+ app_data = get_application (app_data )
771+ else :
772+ original_short_name = app_data ["short_name" ]
773+
774+ data_folder = app_data ["storage_folder" ]
775+
776+ # Stop the service before removing data_folder
777+ log_message ("Stopping '{}'." .format (original_short_name ))
778+ stop_service (original_short_name )
779+
780+ # Remove App data_folder
781+ log_message ("Removing storage folder '{}' of '{}'..." .format (data_folder , original_short_name ))
782+ data_folder = app_data ["storage_folder" ]
783+ run_linux_cmd ("rm -rf {}" .format (data_folder ))
784+
785+ # Re-create the storage folder
786+ log_message ("Creating storage folder '{}' of '{}'..." .format (data_folder , original_short_name ))
787+ create_application_storage_folder (app_data )
788+
789+ # Re-start the service
790+ log_message ("Starting '{}'." .format (original_short_name ))
791+ start_service (original_short_name )
792+
793+ return True
794+
757795######################################################################################
758796## Bulk Application Actions
759797######################################################################################
0 commit comments