tuwunel_admin/query/oauth/list_providers.rs
1use futures::TryStreamExt;
2use tuwunel_core::{Result, utils::stream::IterStream};
3use tuwunel_service::oauth::Provider;
4
5use crate::admin_command;
6
7#[admin_command]
8pub(super) async fn oauth_list_providers(&self) -> Result {
9 self.services
10 .config
11 .identity_provider
12 .values()
13 .try_stream()
14 .map_ok(Provider::id)
15 .map_ok(|id| format!("{id}\n"))
16 .try_for_each(async |id| self.write_str(&id).await)
17 .await
18}