diff --git a/proto/caosdb/scripting/v1alpha1/scripting.proto b/proto/caosdb/scripting/v1alpha1/scripting.proto index c1247190908b971a0f4ab27c6f88ac275f8ded06..c606c3a40f6e3d825654531b1fe0d1071d7eafe5 100644 --- a/proto/caosdb/scripting/v1alpha1/scripting.proto +++ b/proto/caosdb/scripting/v1alpha1/scripting.proto @@ -25,20 +25,21 @@ option java_multiple_files = true; option java_package = "org.caosdb.api.scripting.v1alpha1"; message NamedArgument { + // The name of the argument string name = 1; + // The value of the argument string value = 2; } message ExecuteScriptRequest { // The script to execute string script_filename = 1; - // Whether the script should be executed asynchronously + // IDEA: Whether the script should be executed asynchronously bool is_async = 2; // The positional arguments for the script repeated string positional_arguments = 3; // The named arguments for the script repeated NamedArgument named_arguments = 4; - // TODO: Should we support this? // The files to be used by the script (will be uploaded to the server) repeated string script_files = 5; } @@ -62,6 +63,7 @@ enum ScriptExecutionResult { SCRIPT_EXECUTION_RESULT_MISSING_SCRIPT_FILE = 7; } +// IDEA: Give the script execution an id to be able to track it message ScriptExecutionId { // Id of the script execution string script_execution_id = 1; @@ -80,18 +82,23 @@ message ExecuteScriptResponse { string stdout = 5; // The standard error of the script string stderr = 6; - // TODO: Ideas: + // IDEA: The user who executed the script string executing_user = 7; - string execution_datetime = 8; - - // TODO: Will we ever support this? How should the server know about them? Should the created files be downloaded? - // The files generated by the script - repeated string created_files = 9; + // IDEA: The date and time when the script was started + string execution_start_datetime = 8; + // IDEA: The date and time when the script was finished + string execution_end_datetime = 9; + // IDEA: The duration of the script execution + string execution_duration = 10; + // IDEA: Return a list of files created by the script. These files will be available for download. + // The files will be deleted after a certain time? How should the server know about + // about these? + repeated string created_files = 11; } service ServerSideScriptingService { // Executes a script on the server side rpc ExecuteScript(ExecuteScriptRequest) returns (ExecuteScriptResponse) {} - // Ideas + // IDEA: Get the status of a script execution rpc GetScriptExecutionStatus(ScriptExecutionId) returns (ExecuteScriptResponse) {} }