From 1c8928f805036d511f35901f1f6d2040377c59ef Mon Sep 17 00:00:00 2001 From: Vitalii Valkov Date: Tue, 11 Aug 2026 05:02:39 +0200 Subject: [PATCH] Add ReportWorkloadState to RunnersService and RunnersGateway --- proto/agynio/api/gateway/v1/runners.proto | 1 + proto/agynio/api/runners/v1/runners.proto | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/proto/agynio/api/gateway/v1/runners.proto b/proto/agynio/api/gateway/v1/runners.proto index 95fcc3d..bfe2a29 100644 --- a/proto/agynio/api/gateway/v1/runners.proto +++ b/proto/agynio/api/gateway/v1/runners.proto @@ -18,6 +18,7 @@ service RunnersGateway { // Service-token authenticated, like EnrollRunner: the runner reports the // catalog it declares in its own configuration. rpc ReportRunnerCatalog(agynio.api.runners.v1.ReportRunnerCatalogRequest) returns (agynio.api.runners.v1.ReportRunnerCatalogResponse); + rpc ReportWorkloadState(agynio.api.runners.v1.ReportWorkloadStateRequest) returns (agynio.api.runners.v1.ReportWorkloadStateResponse); // --- Flavors --- rpc CreateFlavor(agynio.api.runners.v1.CreateFlavorRequest) returns (agynio.api.runners.v1.CreateFlavorResponse); diff --git a/proto/agynio/api/runners/v1/runners.proto b/proto/agynio/api/runners/v1/runners.proto index e2e99da..4a437ed 100644 --- a/proto/agynio/api/runners/v1/runners.proto +++ b/proto/agynio/api/runners/v1/runners.proto @@ -47,6 +47,7 @@ service RunnersService { rpc CreateWorkload(CreateWorkloadRequest) returns (CreateWorkloadResponse); rpc UpdateWorkload(UpdateWorkloadRequest) returns (UpdateWorkloadResponse); rpc UpdateWorkloadStatus(UpdateWorkloadStatusRequest) returns (UpdateWorkloadStatusResponse); + rpc ReportWorkloadState(ReportWorkloadStateRequest) returns (ReportWorkloadStateResponse); rpc TouchWorkload(TouchWorkloadRequest) returns (TouchWorkloadResponse); rpc DeleteWorkload(DeleteWorkloadRequest) returns (DeleteWorkloadResponse); rpc GetWorkload(GetWorkloadRequest) returns (GetWorkloadResponse); @@ -458,6 +459,19 @@ message UpdateWorkloadResponse { Workload workload = 1; } +message ReportWorkloadStateRequest { + string runner_id = 1; + string service_token = 2; + string workload_id = 3; + WorkloadStatus status = 4; + repeated Container containers = 5; + google.protobuf.Timestamp observed_at = 6; +} + +message ReportWorkloadStateResponse { + bool applied = 1; +} + // Updates status and containers only. Use UpdateWorkload to set failure // details such as failure_reason and failure_message. message UpdateWorkloadStatusRequest {