From 30a4ad3c89e3c3f2a35592fdb1b234d706c12ce9 Mon Sep 17 00:00:00 2001 From: Raphael Date: Sat, 7 Jun 2025 08:27:46 +0200 Subject: [PATCH 1/3] feat: added execution endpoint --- README.md | 4 +- .../sagittarius.text_execution.proto | 48 +++++++++++++++++++ proto/shared/shared.test_execution.proto | 26 ---------- 3 files changed, 50 insertions(+), 28 deletions(-) create mode 100644 proto/sagittarius/sagittarius.text_execution.proto delete mode 100644 proto/shared/shared.test_execution.proto diff --git a/README.md b/README.md index b6dff80..a6f535d 100644 --- a/README.md +++ b/README.md @@ -58,7 +58,8 @@ services that Sagittarius must implement as a server. │ ├── flow - Flow service (handles flow updates) │ ├── flow_definition - FlowType service (handles flow_type updates) │ ├── ping - Ping service (performs life checks) -│ └── runtime_function - Service for updating the runtime functions +│ ├── runtime_function - Service for updating the runtime functions +│ └── test_execution - Service and Types for the test execution └── shared ├── data_type - Defines types for data types ├── event - Defines types for events @@ -66,6 +67,5 @@ services that Sagittarius must implement as a server. ├── flow_definition - Defines a definition for a Flow ├── runtime_function_definition - Defines types for runtime functions ├── struct - Defines types for json representations - ├── test_execution - Defines types test execution └── translation - Contains translations with country codes and translated messages ``` diff --git a/proto/sagittarius/sagittarius.text_execution.proto b/proto/sagittarius/sagittarius.text_execution.proto new file mode 100644 index 0000000..6548a04 --- /dev/null +++ b/proto/sagittarius/sagittarius.text_execution.proto @@ -0,0 +1,48 @@ +syntax = "proto3"; + +option ruby_package = "Tucana::Sagittarius"; + +package sagittarius; + +import "shared.test_execution.proto"; + +message Logon {} + +message TestExecutionRequest { + int64 flow_id = 1; + string execution_uuid = 2; + shared.Value body = 3; +} + +message TestExecutionResponse { + int64 flow_id = 1; + string execution_uuid = 2; + shared.Value result = 3; + repeated Log logs = 4; +} + +message Log { + string message = 1; + string level = 2; + string timestamp = 3; +} + +// Aquila sends a logon request to Sagittarius that initiates a stream +// If the stream is initialized it will return the result after it received a request +message ExecutionLogonRequest { + oneof data { + Logon logon = 1; + shared.TestExecutionResponse response = 2; + } +} + +// Sagittarius sends execution requests +message ExecutionLogonResponse { + oneof data { + shared.TestExecutionRequest request = 1; + } +} + +service FlowService { + rpc Test (stream ExecutionLogonRequest) returns (stream ExecutionLogonResponse) {} +} diff --git a/proto/shared/shared.test_execution.proto b/proto/shared/shared.test_execution.proto deleted file mode 100644 index 8eb730e..0000000 --- a/proto/shared/shared.test_execution.proto +++ /dev/null @@ -1,26 +0,0 @@ -syntax = "proto3"; - -option ruby_package = "Tucana::Shared"; - -package shared; - -import "shared.struct.proto"; - -message TestExecutionRequest { - int64 flow_id = 1; - int64 execution_id = 2; - shared.Value body = 3; -} - -message TestExecutionResponse { - int64 flow_id = 1; - int64 execution_id = 2; - shared.Value result = 3; - repeated Log logs = 4; -} - -message Log { - string message = 1; - string level = 2; - string timestamp = 3; -} From 79698ca9ffba86630765cea4a5e78b295f394650 Mon Sep 17 00:00:00 2001 From: Raphael Date: Sat, 7 Jun 2025 08:35:48 +0200 Subject: [PATCH 2/3] fix: correct message imports --- proto/sagittarius/sagittarius.text_execution.proto | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/proto/sagittarius/sagittarius.text_execution.proto b/proto/sagittarius/sagittarius.text_execution.proto index 6548a04..7e160e8 100644 --- a/proto/sagittarius/sagittarius.text_execution.proto +++ b/proto/sagittarius/sagittarius.text_execution.proto @@ -4,7 +4,7 @@ option ruby_package = "Tucana::Sagittarius"; package sagittarius; -import "shared.test_execution.proto"; +import "shared.struct.proto"; message Logon {} @@ -32,17 +32,17 @@ message Log { message ExecutionLogonRequest { oneof data { Logon logon = 1; - shared.TestExecutionResponse response = 2; + TestExecutionResponse response = 2; } } // Sagittarius sends execution requests message ExecutionLogonResponse { oneof data { - shared.TestExecutionRequest request = 1; + TestExecutionRequest request = 1; } } -service FlowService { +service ExecutionService { rpc Test (stream ExecutionLogonRequest) returns (stream ExecutionLogonResponse) {} } From 3383eacb2e797edca233c68f2761969fb2c6b943 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Raphael=20G=C3=B6tz?= <52959657+raphael-goetz@users.noreply.github.com> Date: Sat, 7 Jun 2025 16:51:09 +0200 Subject: [PATCH 3/3] Update sagittarius.text_execution.proto --- proto/sagittarius/sagittarius.text_execution.proto | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/proto/sagittarius/sagittarius.text_execution.proto b/proto/sagittarius/sagittarius.text_execution.proto index 7e160e8..3b6fe5f 100644 --- a/proto/sagittarius/sagittarius.text_execution.proto +++ b/proto/sagittarius/sagittarius.text_execution.proto @@ -38,9 +38,7 @@ message ExecutionLogonRequest { // Sagittarius sends execution requests message ExecutionLogonResponse { - oneof data { - TestExecutionRequest request = 1; - } + TestExecutionRequest request = 1; } service ExecutionService {