feat: shut down the kubernetes api watcher if it recieved SIGTERM
All checks were successful
/ build (push) Successful in 2m47s
All checks were successful
/ build (push) Successful in 2m47s
This commit is contained in:
parent
ae5b124c16
commit
eac1c5d8fa
2 changed files with 26 additions and 12 deletions
11
src/main.rs
11
src/main.rs
|
|
@ -27,7 +27,11 @@ async fn main() {
|
|||
let revision: &'static str = env!("COMMIT_HASH");
|
||||
tracing::info!(revision);
|
||||
|
||||
let (api, api_task) = kube_cache::McApi::create().await.unwrap();
|
||||
let cancel_token = tokio_util::sync::CancellationToken::new();
|
||||
|
||||
let (api, api_task) = kube_cache::McApi::create(cancel_token.clone())
|
||||
.await
|
||||
.unwrap();
|
||||
tracing::info!("initialized kube api");
|
||||
|
||||
let config: Config = Default::default();
|
||||
|
|
@ -43,7 +47,6 @@ async fn main() {
|
|||
return;
|
||||
}
|
||||
};
|
||||
let cancel_token = tokio_util::sync::CancellationToken::new();
|
||||
|
||||
let mut conn_task = proxy::start_proxy(listener, api, config, cancel_token.clone());
|
||||
|
||||
|
|
@ -54,8 +57,8 @@ async fn main() {
|
|||
_ = &mut conn_task => {
|
||||
tracing::error!("the connection handling tokio:spawn'ed task ran to completion, which should not happen!");
|
||||
}
|
||||
result = sigterm.recv() => {
|
||||
tracing::info!(sigterm_signal = ?result,"SIGTERM received");
|
||||
_ = sigterm.recv() => {
|
||||
tracing::info!("SIGTERM received");
|
||||
cancel_token.cancel();
|
||||
let res = conn_task.await;
|
||||
tracing::info!(api_task_result = ?res, "shutdown complete");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue