4658018a90
This reverts commit a5c30fd9c7
.
42 lines
1.3 KiB
Python
42 lines
1.3 KiB
Python
"""Outpost managed objects"""
|
|
from authentik.managed.manager import EnsureExists, ObjectManager
|
|
from authentik.outposts.models import (
|
|
DockerServiceConnection,
|
|
KubernetesServiceConnection,
|
|
Outpost,
|
|
OutpostConfig,
|
|
OutpostType,
|
|
)
|
|
|
|
MANAGED_OUTPOST = "goauthentik.io/outposts/embedded"
|
|
|
|
|
|
class OutpostManager(ObjectManager):
|
|
"""Outpost managed objects"""
|
|
|
|
def reconcile(self):
|
|
def outpost_created(outpost: Outpost):
|
|
"""When outpost is initially created, and we already have a service connection,
|
|
auto-assign it."""
|
|
if KubernetesServiceConnection.objects.exists():
|
|
outpost.service_connection = KubernetesServiceConnection.objects.first()
|
|
elif DockerServiceConnection.objects.exists():
|
|
outpost.service_connection = DockerServiceConnection.objects.first()
|
|
outpost.config = OutpostConfig(
|
|
kubernetes_disabled_components=[
|
|
"deployment",
|
|
"secret",
|
|
]
|
|
)
|
|
outpost.save()
|
|
|
|
return [
|
|
EnsureExists(
|
|
Outpost,
|
|
MANAGED_OUTPOST,
|
|
created_callback=outpost_created,
|
|
name="authentik Embedded Outpost",
|
|
type=OutpostType.PROXY,
|
|
),
|
|
]
|