From f7e29a28f9adc59778990a8395d7b9e52ea13544 Mon Sep 17 00:00:00 2001 From: clux Date: Mon, 6 Apr 2020 23:16:02 +0100 Subject: [PATCH] example that always breaks #219 --- kube/examples/configmap_informer.rs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 kube/examples/configmap_informer.rs diff --git a/kube/examples/configmap_informer.rs b/kube/examples/configmap_informer.rs new file mode 100644 index 000000000..62bd1de47 --- /dev/null +++ b/kube/examples/configmap_informer.rs @@ -0,0 +1,28 @@ +#[macro_use] extern crate log; +use futures::{StreamExt, TryStreamExt}; +use k8s_openapi::api::core::v1::ConfigMap; +use kube::{ + api::{Api, ListParams}, + runtime::Informer, + Client, +}; + +/// Example way to read secrets +#[tokio::main] +async fn main() -> anyhow::Result<()> { + std::env::set_var("RUST_LOG", "info,kube=debug"); + env_logger::init(); + let client = Client::try_default().await?; + let namespace = std::env::var("NAMESPACE").unwrap_or("default".into()); + + let cms: Api = Api::namespaced(client, &namespace); + let lp = ListParams::default().timeout(10); // short watch timeout in this example + let inf = Informer::new(cms).params(lp); + + loop { + let mut stream = inf.poll().await?.boxed(); + while let Some(event) = stream.try_next().await? { + info!("Got: {:?}", event); + } + } +}