Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
Arch Linux
gluebuddy
Commits
fd23b086
Verified
Commit
fd23b086
authored
Jan 12, 2022
by
Levente Polyak
🚀
Browse files
chore: apply cargo fmt
parent
05f31af4
Pipeline
#14642
passed with stage
in 14 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
src/components/keycloak/keycloak.rs
View file @
fd23b086
...
...
@@ -13,8 +13,8 @@ use futures::future::try_join_all;
use
anyhow
::{
Context
,
Result
};
use
log
::{
debug
,
info
};
use
tokio
::
sync
::
Mutex
;
use
serde_json
::
json
;
use
tokio
::
sync
::
Mutex
;
use
std
::
env
;
use
std
::
sync
::
Arc
;
...
...
@@ -46,7 +46,16 @@ impl Keycloak {
url
,
realm
);
let
token
=
Self
::
acquire_custom_realm
(
url
,
username
,
password
,
"archlinux"
,
username
,
"client_credentials"
,
&
client
)
.await
?
;
let
token
=
Self
::
acquire_custom_realm
(
url
,
username
,
password
,
"archlinux"
,
username
,
"client_credentials"
,
&
client
,
)
.await
?
;
let
admin
=
KeycloakAdmin
::
new
(
url
,
token
,
client
);
Ok
(
Keycloak
{
...
...
@@ -117,38 +126,32 @@ impl Keycloak {
group_name
,
group
.path
.as_ref
()
.unwrap
()
);
vec!
[
Box
::
pin
(
self
.get_group_members
(
group
.clone
(),
))]
.into_iter
()
.chain
(
group
.sub_groups
.as_ref
()
.unwrap
()
.iter
()
.map
(|
sub_group
|
{
info!
(
"collect members of sub group {} via {}"
,
sub_group
.name
.as_ref
()
.unwrap
(),
sub_group
.path
.as_ref
()
.unwrap
()
);
Box
::
pin
(
self
.get_group_members
(
sub_group
.clone
(),
))
}))
.chain
(
group
.sub_groups
.as_ref
()
.unwrap
()
.iter
()
.flat_map
(|
sub_group
|
sub_group
.sub_groups
.as_ref
()
.unwrap
())
.map
(|
sub_group
|
{
info!
(
"collect members of sub group {} via {}"
,
sub_group
.name
.as_ref
()
.unwrap
(),
sub_group
.path
.as_ref
()
.unwrap
(),
);
Box
::
pin
(
self
.get_group_members
(
sub_group
.clone
(),
))
}),
)
vec!
[
Box
::
pin
(
self
.get_group_members
(
group
.clone
()))]
.into_iter
()
.chain
(
group
.sub_groups
.as_ref
()
.unwrap
()
.iter
()
.map
(|
sub_group
|
{
info!
(
"collect members of sub group {} via {}"
,
sub_group
.name
.as_ref
()
.unwrap
(),
sub_group
.path
.as_ref
()
.unwrap
()
);
Box
::
pin
(
self
.get_group_members
(
sub_group
.clone
()))
}))
.chain
(
group
.sub_groups
.as_ref
()
.unwrap
()
.iter
()
.flat_map
(|
sub_group
|
sub_group
.sub_groups
.as_ref
()
.unwrap
())
.map
(|
sub_group
|
{
info!
(
"collect members of sub group {} via {}"
,
sub_group
.name
.as_ref
()
.unwrap
(),
sub_group
.path
.as_ref
()
.unwrap
(),
);
Box
::
pin
(
self
.get_group_members
(
sub_group
.clone
()))
}),
)
});
let
group_members
=
try_join_all
(
groups_members
)
.await
?
;
...
...
@@ -184,7 +187,8 @@ impl Keycloak {
&
self
,
group
:
GroupRepresentation
,
)
->
Result
<
(
GroupRepresentation
,
Vec
<
UserRepresentation
>
)
>
{
let
users
=
self
.admin
let
users
=
self
.admin
.realm_groups_with_id_members_get
(
&
self
.realm
,
group
.id
.as_ref
()
.unwrap
()
.as_ref
(),
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment