Skip to content

Commit 90b2652

Browse files
committed
feat: made changes to runner for support of module configuration
1 parent a553fbc commit 90b2652

2 files changed

Lines changed: 15 additions & 22 deletions

File tree

crates/base/src/client/mod.rs

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,12 @@ use tonic::{
99
use tucana::{
1010
aquila::{
1111
RuntimeStatusUpdateRequest, runtime_status_service_client::RuntimeStatusServiceClient,
12-
runtime_status_update_request::Status,
13-
},
14-
shared::{AdapterRuntimeStatus, AdapterStatusConfiguration},
12+
}, shared::ModuleStatus,
1513
};
1614

1715
pub struct DracoRuntimeStatusService {
1816
channel: Channel,
1917
identifier: String,
20-
configs: Vec<AdapterStatusConfiguration>,
2118
aquila_token: String,
2219
}
2320

@@ -73,29 +70,26 @@ impl DracoRuntimeStatusService {
7370
aquila_url: String,
7471
aquila_token: String,
7572
identifier: String,
76-
configs: Vec<AdapterStatusConfiguration>,
7773
) -> Self {
7874
let channel = create_channel_with_retry("Aquila", aquila_url).await;
79-
Self::new(channel, identifier, configs, aquila_token)
75+
Self::new(channel, identifier, aquila_token)
8076
}
8177

8278
pub fn new(
8379
channel: Channel,
8480
identifier: String,
85-
configs: Vec<AdapterStatusConfiguration>,
8681
aquila_token: String,
8782
) -> Self {
8883
DracoRuntimeStatusService {
8984
channel,
9085
identifier,
91-
configs,
9286
aquila_token,
9387
}
9488
}
9589

9690
pub async fn update_runtime_status_by_status(
9791
&self,
98-
status: tucana::shared::adapter_runtime_status::Status,
92+
status: tucana::shared::module_status::StatusVariant,
9993
) {
10094
log::info!("Updating the current runtime status!");
10195
let mut client = RuntimeStatusServiceClient::new(self.channel.clone());
@@ -113,12 +107,11 @@ impl DracoRuntimeStatusService {
113107
get_authorization_metadata(&self.aquila_token),
114108
Extensions::new(),
115109
RuntimeStatusUpdateRequest {
116-
status: Some(Status::AdapterRuntimeStatus(AdapterRuntimeStatus {
110+
status: Some(ModuleStatus {
117111
status: status.into(),
118112
timestamp: timestamp as i64,
119113
identifier: self.identifier.clone(),
120-
configurations: self.configs.clone(),
121-
})),
114+
}),
122115
},
123116
);
124117

crates/base/src/runner.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
use crate::{
2-
client::DracoRuntimeStatusService,
2+
client::{DracoRuntimeStatusService},
33
config::AdapterConfig,
44
store::AdapterStore,
55
traits::{LoadConfig, Server as AdapterServer},
66
};
7-
use code0_flow::flow_service::FlowUpdateService;
7+
use code0_flow::flow_service::{FlowUpdateService, ModuleDefinitionAppendix};
88
use std::{sync::Arc, time::Duration};
99
use tokio::{signal, task::JoinHandle, time::sleep};
1010
use tonic::transport::Server;
1111
use tonic_health::pb::health_server::HealthServer;
12-
use tucana::shared::AdapterStatusConfiguration;
1312

1413
/// Context passed to adapter server implementations containing all shared resources
1514
pub struct ServerContext<C: LoadConfig> {
@@ -58,7 +57,7 @@ impl<C: LoadConfig> ServerRunner<C> {
5857

5958
pub async fn serve(
6059
self,
61-
runtime_config: Vec<AdapterStatusConfiguration>,
60+
appendix: Vec<ModuleDefinitionAppendix>,
6261
) -> anyhow::Result<()> {
6362
let config = self.context.adapter_config.clone();
6463
let mut runtime_status_service: Option<Arc<DracoRuntimeStatusService>> = None;
@@ -71,26 +70,27 @@ impl<C: LoadConfig> ServerRunner<C> {
7170
config.aquila_url.clone(),
7271
config.aquila_token.clone(),
7372
config.draco_variant.clone(),
74-
runtime_config,
7573
)
7674
.await,
7775
));
7876

7977
if let Some(ser) = &runtime_status_service {
8078
ser.update_runtime_status_by_status(
81-
tucana::shared::adapter_runtime_status::Status::NotReady,
79+
tucana::shared::module_status::StatusVariant::NotReady,
8280
)
8381
.await;
8482
};
8583

8684
let service_name = format!("draco-{}", config.draco_variant.to_lowercase());
85+
8786
let mut definition_service = FlowUpdateService::from_url(
8887
config.aquila_url.clone(),
8988
config.definition_path.as_str(),
9089
config.aquila_token.clone(),
9190
)
9291
.await
93-
.with_definition_source(service_name);
92+
.with_definition_source(service_name)
93+
.with_appendix(appendix);
9494

9595
let mut success = false;
9696
let mut count = 1;
@@ -144,7 +144,7 @@ impl<C: LoadConfig> ServerRunner<C> {
144144

145145
if let Some(ser) = &runtime_status_service {
146146
ser.update_runtime_status_by_status(
147-
tucana::shared::adapter_runtime_status::Status::Running,
147+
tucana::shared::module_status::StatusVariant::Running,
148148
)
149149
.await;
150150

@@ -163,7 +163,7 @@ impl<C: LoadConfig> ServerRunner<C> {
163163
interval.tick().await;
164164
status_service
165165
.update_runtime_status_by_status(
166-
tucana::shared::adapter_runtime_status::Status::Running,
166+
tucana::shared::module_status::StatusVariant::Running,
167167
)
168168
.await;
169169
}
@@ -251,7 +251,7 @@ impl<C: LoadConfig> ServerRunner<C> {
251251

252252
if let Some(ser) = &runtime_status_service {
253253
ser.update_runtime_status_by_status(
254-
tucana::shared::adapter_runtime_status::Status::Stopped,
254+
tucana::shared::module_status::StatusVariant::Stopped,
255255
)
256256
.await;
257257
};

0 commit comments

Comments
 (0)