diff --git a/crates/trident/src/grpc_client/tridentclient.rs b/crates/trident/src/grpc_client/tridentclient.rs index f8764391d..0f604d08c 100644 --- a/crates/trident/src/grpc_client/tridentclient.rs +++ b/crates/trident/src/grpc_client/tridentclient.rs @@ -9,17 +9,20 @@ use url::Url; use trident_proto::v1::{ servicing_response::Response as ResponseBody, streaming_service_client::StreamingServiceClient, - version_service_client::VersionServiceClient, RebootHandling as ProtoRebootHandling, - RebootManagement, RebootStatus, ServicingResponse, StatusCode, StreamDiskRequest, - VersionRequest, + update_service_client::UpdateServiceClient, version_service_client::VersionServiceClient, + RebootHandling as ProtoRebootHandling, RebootManagement, RebootStatus, ServicingResponse, + StatusCode, StreamDiskRequest, VersionRequest, }; + +#[cfg(feature = "grpc-preview")] +use trident_proto::v1::HostConfiguration; #[cfg(feature = "grpc-preview")] use trident_proto::v1preview::{ commit_service_client::CommitServiceClient, install_service_client::InstallServiceClient, rebuild_raid_service_client::RebuildRaidServiceClient, rollback_service_client::RollbackServiceClient, status_service_client::StatusServiceClient, - update_service_client::UpdateServiceClient, validation_service_client::ValidationServiceClient, - CommitRequest, FinalizeInstallRequest, HostConfiguration, InstallRequest, StageInstallRequest, + validation_service_client::ValidationServiceClient, CommitRequest, FinalizeInstallRequest, + InstallRequest, StageInstallRequest, }; use crate::ExitKind; @@ -55,14 +58,14 @@ impl From for i32 { pub struct TridentClient { version_client: VersionServiceClient, streaming_client: StreamingServiceClient, + + #[expect(dead_code)] + update_client: UpdateServiceClient, + #[cfg(feature = "grpc-preview")] install_client: InstallServiceClient, #[cfg(feature = "grpc-preview")] commit_client: CommitServiceClient, - - #[expect(dead_code)] - #[cfg(feature = "grpc-preview")] - update_client: UpdateServiceClient, #[expect(dead_code)] #[cfg(feature = "grpc-preview")] rollback_client: RollbackServiceClient, @@ -99,8 +102,6 @@ impl TridentClient { #[cfg(feature = "grpc-preview")] commit_client: CommitServiceClient::new(channel.clone()), #[cfg(feature = "grpc-preview")] - update_client: UpdateServiceClient::new(channel.clone()), - #[cfg(feature = "grpc-preview")] rollback_client: RollbackServiceClient::new(channel.clone()), #[cfg(feature = "grpc-preview")] rebuild_raid_client: RebuildRaidServiceClient::new(channel.clone()), @@ -110,6 +111,7 @@ impl TridentClient { validation_client: ValidationServiceClient::new(channel.clone()), // Prod clients + update_client: UpdateServiceClient::new(channel.clone()), version_client: VersionServiceClient::new(channel.clone()), streaming_client: StreamingServiceClient::new(channel), }) diff --git a/crates/trident/src/server/mod.rs b/crates/trident/src/server/mod.rs index fb0d5b51e..8f2d97d7e 100644 --- a/crates/trident/src/server/mod.rs +++ b/crates/trident/src/server/mod.rs @@ -18,7 +18,8 @@ use tonic::transport::Server; use tonic_middleware::MiddlewareFor; use trident_proto::v1::{ - streaming_service_server::StreamingServiceServer, version_service_server::VersionServiceServer, + streaming_service_server::StreamingServiceServer, update_service_server::UpdateServiceServer, + version_service_server::VersionServiceServer, }; #[cfg(feature = "grpc-preview")] @@ -26,7 +27,7 @@ use trident_proto::v1preview::{ commit_service_server::CommitServiceServer, install_service_server::InstallServiceServer, rebuild_raid_service_server::RebuildRaidServiceServer, rollback_service_server::RollbackServiceServer, status_service_server::StatusServiceServer, - update_service_server::UpdateServiceServer, validation_service_server::ValidationServiceServer, + validation_service_server::ValidationServiceServer, }; use crate::{ @@ -209,10 +210,15 @@ async fn server_main_inner( activity_tracker.middleware(), )); - router = router.add_service(MiddlewareFor::new( - StreamingServiceServer::from_arc(trident_server.clone()), - activity_tracker.middleware(), - )); + router = router + .add_service(MiddlewareFor::new( + StreamingServiceServer::from_arc(trident_server.clone()), + activity_tracker.middleware(), + )) + .add_service(MiddlewareFor::new( + UpdateServiceServer::from_arc(trident_server.clone()), + activity_tracker.middleware(), + )); #[cfg(feature = "grpc-preview")] { @@ -233,10 +239,6 @@ async fn server_main_inner( StatusServiceServer::from_arc(trident_server.clone()), activity_tracker.middleware(), )) - .add_service(MiddlewareFor::new( - UpdateServiceServer::from_arc(trident_server.clone()), - activity_tracker.middleware(), - )) .add_service(MiddlewareFor::new( ValidationServiceServer::from_arc(trident_server.clone()), activity_tracker.middleware(), diff --git a/crates/trident/src/server/tridentserver/services/mod.rs b/crates/trident/src/server/tridentserver/services/mod.rs index ab3792bf8..141eab0b2 100644 --- a/crates/trident/src/server/tridentserver/services/mod.rs +++ b/crates/trident/src/server/tridentserver/services/mod.rs @@ -3,6 +3,7 @@ use trident_proto::v1::{RebootHandling, RebootManagement}; use crate::server::tridentserver::RebootDecision; mod streaming; +mod update; mod version; #[cfg(feature = "grpc-preview")] @@ -16,8 +17,6 @@ mod rollback; #[cfg(feature = "grpc-preview")] mod status; #[cfg(feature = "grpc-preview")] -mod update; -#[cfg(feature = "grpc-preview")] mod validation; /// Returns a `RebootDecision` indicating whether Trident can perform a reboot diff --git a/crates/trident/src/server/tridentserver/services/update.rs b/crates/trident/src/server/tridentserver/services/update.rs index 6bddd0a06..b8ab0d0af 100644 --- a/crates/trident/src/server/tridentserver/services/update.rs +++ b/crates/trident/src/server/tridentserver/services/update.rs @@ -4,7 +4,7 @@ use trident_api::{ config::{HostConfigurationSource, Operation, Operations}, error::TridentResultExt, }; -use trident_proto::v1preview::{ +use trident_proto::v1::{ update_service_server::UpdateService, FinalizeUpdateRequest, StageUpdateRequest, UpdateRequest, }; diff --git a/proto/trident/v1preview/host_config.proto b/proto/trident/v1/host_config.proto similarity index 85% rename from proto/trident/v1preview/host_config.proto rename to proto/trident/v1/host_config.proto index 27ac1f304..77a7c236f 100644 --- a/proto/trident/v1preview/host_config.proto +++ b/proto/trident/v1/host_config.proto @@ -2,7 +2,7 @@ syntax = "proto3"; -package trident.v1preview; +package trident.v1; message HostConfiguration { // The Host Configuration YAML. diff --git a/proto/trident/v1preview/update_service.proto b/proto/trident/v1/update_service.proto similarity index 66% rename from proto/trident/v1preview/update_service.proto rename to proto/trident/v1/update_service.proto index 51252bc1f..09935c1cb 100644 --- a/proto/trident/v1preview/update_service.proto +++ b/proto/trident/v1/update_service.proto @@ -2,21 +2,21 @@ syntax = "proto3"; -package trident.v1preview; +package trident.v1; import "trident/v1/servicing.proto"; -import "trident/v1preview/host_config.proto"; +import "trident/v1/host_config.proto"; // UpdateService provides methods for performing OS updates. service UpdateService { // Update performs an OS update. - rpc Update(UpdateRequest) returns (stream trident.v1.ServicingResponse); + rpc Update(UpdateRequest) returns (stream ServicingResponse); // UpdateStage performs the stage operation of an OS update. - rpc UpdateStage(StageUpdateRequest) returns (stream trident.v1.ServicingResponse); + rpc UpdateStage(StageUpdateRequest) returns (stream ServicingResponse); // UpdateFinalize performs the finalize operation of an OS update. - rpc UpdateFinalize(FinalizeUpdateRequest) returns (stream trident.v1.ServicingResponse); + rpc UpdateFinalize(FinalizeUpdateRequest) returns (stream ServicingResponse); } message UpdateRequest { @@ -33,5 +33,5 @@ message StageUpdateRequest { message FinalizeUpdateRequest { // Reboot handling configuration. - trident.v1.RebootManagement reboot = 1; + RebootManagement reboot = 1; } \ No newline at end of file diff --git a/proto/trident/v1preview/install_service.proto b/proto/trident/v1preview/install_service.proto index 7899f9f3a..a62bf7191 100644 --- a/proto/trident/v1preview/install_service.proto +++ b/proto/trident/v1preview/install_service.proto @@ -5,7 +5,7 @@ syntax = "proto3"; package trident.v1preview; import "trident/v1/servicing.proto"; -import "trident/v1preview/host_config.proto"; +import "trident/v1/host_config.proto"; // InstallService provides methods for performing OS installations. service InstallService { @@ -28,7 +28,7 @@ message InstallRequest { message StageInstallRequest { // The target Host Configuration. - HostConfiguration config = 1; + trident.v1.HostConfiguration config = 1; } message FinalizeInstallRequest { diff --git a/proto/trident/v1preview/status_service.proto b/proto/trident/v1preview/status_service.proto index e17f65b8b..5cd2a97d2 100644 --- a/proto/trident/v1preview/status_service.proto +++ b/proto/trident/v1preview/status_service.proto @@ -6,7 +6,7 @@ package trident.v1preview; import "trident/v1/error.proto"; import "trident/v1/servicing.proto"; -import "trident/v1preview/host_config.proto"; +import "trident/v1/host_config.proto"; // StatusService provides methods for retrieving the status of the host and // various operations. @@ -32,7 +32,7 @@ message GetConfigRequest {} message GetConfigResponse { // The Host Configuration content as a string. - HostConfiguration config = 1; + trident.v1.HostConfiguration config = 1; } message GetLastErrorRequest {} diff --git a/proto/trident/v1preview/validation_service.proto b/proto/trident/v1preview/validation_service.proto index 9c155c04f..ab4e47dea 100644 --- a/proto/trident/v1preview/validation_service.proto +++ b/proto/trident/v1preview/validation_service.proto @@ -6,7 +6,7 @@ package trident.v1preview; import "trident/v1/error.proto"; import "trident/v1/servicing.proto"; -import "trident/v1preview/host_config.proto"; +import "trident/v1/host_config.proto"; // ValidationService provides methods for performing configuration validations. service ValidationService { @@ -20,7 +20,7 @@ service ValidationService { message ValidateHostConfigurationRequest { // The Host Configuration to be validated. - HostConfiguration config = 1; + trident.v1.HostConfiguration config = 1; } message ValidateHostConfigurationResponse { @@ -44,7 +44,7 @@ enum ServicingType { message GetRequiredServicingTypeRequest { // The target Host Configuration. - HostConfiguration config = 1; + trident.v1.HostConfiguration config = 1; } message GetRequiredServicingTypeResponse { diff --git a/tools/pkg/netlaunch/netlaunch.go b/tools/pkg/netlaunch/netlaunch.go index a3a642d0f..1cef16694 100644 --- a/tools/pkg/netlaunch/netlaunch.go +++ b/tools/pkg/netlaunch/netlaunch.go @@ -441,7 +441,7 @@ func doGrpcInstall(ctx context.Context, conn net.Conn, hostConfiguration string) stream, err := tridentClient.Install(ctx, &tridentpbv1preview.InstallRequest{ Stage: &tridentpbv1preview.StageInstallRequest{ - Config: &tridentpbv1preview.HostConfiguration{ + Config: &tridentpbv1.HostConfiguration{ Config: hostConfiguration, }, },