failmap/admin

View on GitHub
websecmap/app/__init__.py

Summary

Maintainability
A
0 mins
Test Coverage
import logging
import os
import sys
from collections import defaultdict

from django.apps import AppConfig
from django.conf import settings

log = logging.getLogger(__name__)


class Websecmap(AppConfig):
    name = "websecmap.app"
    verbose_name = "Web Security Map"

    def ready(self):
        """Run when Failmap app has fully loaded."""

        # detect if we run inside the autoreloader's second thread
        inner_run = os.environ.get("RUN_MAIN")
        subcommand = sys.argv[1] if len(sys.argv) > 1 else None
        if not inner_run and subcommand and subcommand != "help":
            # log database settings during init for operational debug purposes
            for db in settings.DATABASES:
                log.info(
                    "Database settings ({db}): {ENGINE}, {NAME}, {USER}, {HOST}".format_map(
                        defaultdict(str, **settings.DATABASES[db])
                    )
                )


default_app_config = "websecmap.app.Websecmap"