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