Gracefully recovers from rdsys shutdown or lack of resources
This commit is contained in:
parent
9d4a293ee9
commit
c1f6ab0b77
|
@ -124,14 +124,16 @@ async fn rdsys_request(rtype: ResourceInfo, tx: mpsc::Sender<ResourceState>) {
|
||||||
let mut interval = interval(Duration::from_secs(5));
|
let mut interval = interval(Duration::from_secs(5));
|
||||||
loop {
|
loop {
|
||||||
interval.tick().await;
|
interval.tick().await;
|
||||||
let resources = request_resources(
|
let resources = match request_resources(
|
||||||
rtype.endpoint.clone(),
|
rtype.endpoint.clone(),
|
||||||
rtype.name.clone(),
|
rtype.name.clone(),
|
||||||
rtype.token.clone(),
|
rtype.token.clone(),
|
||||||
rtype.types.clone(),
|
rtype.types.clone(),
|
||||||
)
|
)
|
||||||
.await
|
.await{
|
||||||
.unwrap();
|
Ok(resources)=> resources,
|
||||||
|
Err(e) => {println!("No resources received from rdsys: {:?}", e); continue},
|
||||||
|
};
|
||||||
tx.send(resources).await.unwrap();
|
tx.send(resources).await.unwrap();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -284,8 +284,7 @@ pub async fn request_resources(
|
||||||
.header("Authorization", &auth_value)
|
.header("Authorization", &auth_value)
|
||||||
.body(json)
|
.body(json)
|
||||||
.send()
|
.send()
|
||||||
.await
|
.await?;
|
||||||
.unwrap();
|
|
||||||
match response.status() {
|
match response.status() {
|
||||||
reqwest::StatusCode::OK => {
|
reqwest::StatusCode::OK => {
|
||||||
fetched_resources = match response.json::<proto::ResourceState>().await {
|
fetched_resources = match response.json::<proto::ResourceState>().await {
|
||||||
|
|
Loading…
Reference in New Issue