Skip to content

Authenik still using public schema #9212

@acelinkio

Description

@acelinkio

Describe the bug
Unable to setup a new authentik installation using a database/user without public schema.

Release notes for 2024.2 say Authenik uses other schemas other than public. https://docs.goauthentik.io/docs/releases/2024.2#manual-action-may-be-required.

To Reproduce

  Applying guardian.0002_generic_permissions_index...
 OK
  Applying sessions.0001_initial...
 OK
System check identified no issues (4 silenced).
{"event": "Bootstrap completed", "level": "info", "logger": "bootstrap"}
  • Then watch application fail to start
{"exc_type": "UndefinedTable", "exc_value": "relation \"public.authentik_install_id\" does not exist\nLINE 1: SELECT id FROM public.authentik_install_id ORDER BY id LIMIT...
  • see authentik_install_id table does exist, just not in public schema
authentik=> \dt
                      List of relations
 Schema |         Name         | Type  |        Owner
--------+----------------------+-------+----------------------
 data   | authentik_install_id | table | authentik_owner_user
  • Rebooting authenitk-server does not do anything
{"event": "Loaded config", "level": "debug", "logger": "authentik.lib.config", "timestamp": 1712821744.3154209, "file": "/authentik/lib/default.yml"}
{"event": "Loaded environment variables", "level": "debug", "logger": "authentik.lib.config", "timestamp": 1712821744.3164282, "count": 45}
{"event": "Starting authentik bootstrap", "level": "info", "logger": "authentik.lib.config", "timestamp": 1712821744.3168125}
{"event": "PostgreSQL connection successful", "level": "info", "logger": "authentik.lib.config", "timestamp": 1712821744.3684974}
{"event": "Redis Connection successful", "level": "info", "logger": "authentik.lib.config", "timestamp": 1712821744.3743458}
{"event": "Finished authentik bootstrap", "level": "info", "logger": "authentik.lib.config", "timestamp": 1712821744.3744197}
{"event": "Loaded config", "level": "debug", "logger": "authentik.lib.config", "timestamp": 1712821745.9661565, "file": "/authentik/lib/default.yml"}
{"event": "Loaded environment variables", "level": "debug", "logger": "authentik.lib.config", "timestamp": 1712821745.9670923, "count": 45}
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/lifecycle/migrate.py", line 95, in <module>
    if migration.needs_migration():
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/lifecycle/system_migrations/tenant_to_brand.py", line 21, in needs_migration
    self.cur.execute("select * from django_migrations where app = 'authentik_brands';")
  File "/ak-root/venv/lib/python3.12/site-packages/psycopg/cursor.py", line 732, in execute

Expected behavior
Expect application to either manage its own schemas or leverage default schema in search path.

Screenshots
n/a

Logs
attached output from authentik-server
server.log

Version and Deployment (please complete the following information):

  • authentik version: 2024.2.2
  • Deployment: helm

Additional context

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions