Skip to content
Snippets Groups Projects
Commit 2167c859 authored by Joscha Schmiedt's avatar Joscha Schmiedt
Browse files

Mark future ideas as IDEA

parent 19d0c2b8
No related branches found
No related tags found
1 merge request!13Add server-side scripting to gRPC API
Pipeline #61779 failed
......@@ -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) {}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment