2025-09-15 21:42:01 +03:00
|
|
|
output "oauth_applications" {
|
|
|
|
description = "OAuth2/OpenID applications details"
|
|
|
|
value = {
|
|
|
|
for k, v in module.oauth_applications : k => {
|
|
|
|
application_id = v.application_id
|
|
|
|
application_uuid = v.application_uuid
|
2025-09-16 00:28:54 +03:00
|
|
|
client_id = v.client_id
|
|
|
|
client_secret = v.client_secret
|
|
|
|
slug = v.application_slug
|
2025-09-15 21:42:01 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
sensitive = true
|
|
|
|
}
|
|
|
|
|
|
|
|
output "proxy_applications" {
|
|
|
|
description = "Proxy applications details"
|
|
|
|
value = {
|
|
|
|
for k, v in module.proxy_applications : k => {
|
|
|
|
application_id = v.application_id
|
|
|
|
application_uuid = v.application_uuid
|
2025-09-16 00:28:54 +03:00
|
|
|
external_host = v.external_host
|
|
|
|
internal_host = v.internal_host
|
|
|
|
slug = v.application_slug
|
2025-09-15 21:42:01 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
output "outposts" {
|
|
|
|
description = "Outposts details"
|
|
|
|
value = {
|
|
|
|
for k, v in authentik_outpost.outposts : k => {
|
|
|
|
id = v.id
|
|
|
|
name = v.name
|
|
|
|
type = v.type
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
output "groups" {
|
|
|
|
description = "Groups details"
|
2025-09-16 15:28:42 +03:00
|
|
|
value = merge(
|
|
|
|
{
|
|
|
|
for k, v in authentik_group.root_groups : k => {
|
|
|
|
id = v.id
|
|
|
|
name = v.name
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
for k, v in authentik_group.child_groups : k => {
|
|
|
|
id = v.id
|
|
|
|
name = v.name
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
for k, v in authentik_group.proxy_app_groups : k => {
|
|
|
|
id = v.id
|
|
|
|
name = v.name
|
|
|
|
auto_created = true
|
|
|
|
type = "proxy"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
for k, v in authentik_group.oauth_app_groups : k => {
|
|
|
|
id = v.id
|
|
|
|
name = v.name
|
|
|
|
auto_created = true
|
|
|
|
type = "oauth"
|
|
|
|
}
|
2025-09-15 21:42:01 +03:00
|
|
|
}
|
2025-09-16 15:28:42 +03:00
|
|
|
)
|
2025-09-15 21:42:01 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
output "flows" {
|
|
|
|
description = "Custom flows details"
|
|
|
|
value = {
|
|
|
|
for k, v in authentik_flow.flows : k => {
|
|
|
|
id = v.id
|
|
|
|
slug = v.slug
|
|
|
|
name = v.name
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
output "certificates" {
|
|
|
|
description = "Certificates details"
|
|
|
|
value = {
|
|
|
|
for k, v in authentik_certificate_key_pair.certificates : k => {
|
2025-09-16 00:28:54 +03:00
|
|
|
id = v.id
|
|
|
|
name = v.name
|
2025-09-15 21:42:01 +03:00
|
|
|
fingerprint_sha256 = v.fingerprint_sha256
|
|
|
|
fingerprint_sha1 = v.fingerprint_sha1
|
|
|
|
}
|
|
|
|
}
|
2025-09-16 15:51:14 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
# Output for applications table generation
|
|
|
|
output "applications_for_wiki" {
|
|
|
|
description = "Applications data formatted for wiki table generation"
|
|
|
|
value = {
|
|
|
|
proxy_apps = {
|
|
|
|
for k, v in var.proxy_applications : k => {
|
2025-09-16 16:24:30 +03:00
|
|
|
name = v.name
|
|
|
|
type = "Proxy"
|
|
|
|
url = v.external_host
|
|
|
|
internal_url = v.internal_host
|
|
|
|
group = v.group
|
|
|
|
description = v.meta_description
|
|
|
|
icon = v.meta_icon
|
|
|
|
slug = v.slug
|
2025-09-16 15:51:14 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
oauth_apps = {
|
|
|
|
for k, v in var.oauth_applications : k => {
|
2025-09-16 15:57:48 +03:00
|
|
|
name = v.name
|
|
|
|
type = "OAuth2/OpenID"
|
|
|
|
url = length(v.redirect_uris) > 0 ? "https://${split("/", replace(v.redirect_uris[0], "https://", ""))[0]}" : ""
|
|
|
|
group = v.group
|
|
|
|
description = v.meta_description
|
|
|
|
icon = v.meta_icon
|
|
|
|
slug = v.slug
|
2025-09-16 15:51:14 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2025-09-15 21:42:01 +03:00
|
|
|
}
|