* root: move database calls from ready() to dedicated startup signal Signed-off-by: Jens Langhammer <jens@goauthentik.io> * optimise gunicorn startup to only do DB code in one worker Signed-off-by: Jens Langhammer <jens@goauthentik.io> * always use 2 workers in compose Signed-off-by: Jens Langhammer <jens@goauthentik.io> * send startup signals for test runner Signed-off-by: Jens Langhammer <jens@goauthentik.io> * remove k8s import that isn't really needed Signed-off-by: Jens Langhammer <jens@goauthentik.io> * ci: bump nested actions Signed-off-by: Jens Langhammer <jens@goauthentik.io> * fix @reconcile_app not triggering reconcile due to changed functions Signed-off-by: Jens Langhammer <jens@goauthentik.io> * connect startup with uid Signed-off-by: Jens Langhammer <jens@goauthentik.io> * adjust some log levels Signed-off-by: Jens Langhammer <jens@goauthentik.io> * remove internal healthcheck we didn't really use it to do anything, and we shouldn't have to since the live/ready probes are handled by django anyways and so the container runtime will restart the server if needed Signed-off-by: Jens Langhammer <jens@goauthentik.io> * add setproctitle for gunicorn and celery process titles Signed-off-by: Jens Langhammer <jens@goauthentik.io> * configure structlog early to use it Signed-off-by: Jens Langhammer <jens@goauthentik.io> * Revert "configure structlog early to use it" This reverts commit 16778fdbbca0f5c474d376c2f85c6f8032c06044. * Revert "adjust some log levels" This reverts commit a129f7ab6aecf27f1206aea1ad8384ce897b74ad. Signed-off-by: Jens Langhammer <jens@goauthentik.io> # Conflicts: # authentik/root/settings.py * optimize startup to not spawn a bunch of one-off processes Signed-off-by: Jens Langhammer <jens@goauthentik.io> * idk why this shows up Signed-off-by: Jens Langhammer <jens@goauthentik.io> --------- Signed-off-by: Jens Langhammer <jens@goauthentik.io>
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
#!/usr/bin/env python
 | 
						|
"""Django manage.py"""
 | 
						|
import os
 | 
						|
import sys
 | 
						|
import warnings
 | 
						|
 | 
						|
from defusedxml import defuse_stdlib
 | 
						|
from django.utils.autoreload import DJANGO_AUTORELOAD_ENV
 | 
						|
 | 
						|
from lifecycle.migrate import run_migrations
 | 
						|
from lifecycle.wait_for_db import wait_for_db
 | 
						|
 | 
						|
warnings.filterwarnings("ignore", "SelectableGroups dict interface")
 | 
						|
warnings.filterwarnings(
 | 
						|
    "ignore",
 | 
						|
    "defusedxml.lxml is no longer supported and will be removed in a future release.",
 | 
						|
)
 | 
						|
warnings.filterwarnings(
 | 
						|
    "ignore",
 | 
						|
    "defusedxml.cElementTree is deprecated, import from defusedxml.ElementTree instead.",
 | 
						|
)
 | 
						|
 | 
						|
defuse_stdlib()
 | 
						|
 | 
						|
if __name__ == "__main__":
 | 
						|
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "authentik.root.settings")
 | 
						|
    wait_for_db()
 | 
						|
    if (
 | 
						|
        len(sys.argv) > 1
 | 
						|
        # Explicitly only run migrate for server and worker
 | 
						|
        # `bootstrap_tasks` is a special case as that command might be triggered by the `ak`
 | 
						|
        # script to pre-run certain tasks for an automated install
 | 
						|
        and sys.argv[1] in ["dev_server", "worker", "bootstrap_tasks"]
 | 
						|
        # and don't run if this is the child process of a dev_server
 | 
						|
        and os.environ.get(DJANGO_AUTORELOAD_ENV, None) is None
 | 
						|
    ):
 | 
						|
        run_migrations()
 | 
						|
    try:
 | 
						|
        from django.core.management import execute_from_command_line
 | 
						|
    except ImportError as exc:
 | 
						|
        raise ImportError(
 | 
						|
            "Couldn't import Django. Are you sure it's installed and "
 | 
						|
            "available on your PYTHONPATH environment variable? Did you "
 | 
						|
            "forget to activate a virtual environment?"
 | 
						|
        ) from exc
 | 
						|
    execute_from_command_line(sys.argv)
 |