diff --git a/panel/conf.py b/panel/conf.py
new file mode 100644
index 0000000..c62bb9a
--- /dev/null
+++ b/panel/conf.py
@@ -0,0 +1,21 @@
+# Copyright (C) 2020 The Sipwise Team - http://sipwise.com
+#
+# This program is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program. If not, see .
+from django.conf import settings # noqa
+from appconf import AppConf
+
+
+class PanelConf(AppConf):
+ class Meta:
+ prefix = "panel"
diff --git a/panel/models.py b/panel/models.py
new file mode 100644
index 0000000..16e0ddb
--- /dev/null
+++ b/panel/models.py
@@ -0,0 +1,25 @@
+# Copyright (C) 2020 The Sipwise Team - http://sipwise.com
+#
+# This program is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program. If not, see .
+#
+# This is needed due to:
+#
+# AppConf classes depend on being imported during startup of the Django
+# process. Even though there are multiple modules loaded automatically, only
+# the models modules (usually the models.py file of your app) are guaranteed
+# to be loaded at startup. Therefore it’s recommended to put your AppConf
+# subclass(es) there, too.
+#
+# https://django-appconf.readthedocs.io/en/latest/
+from .conf import settings # noqa
diff --git a/panel/test/test_conf.py b/panel/test/test_conf.py
new file mode 100644
index 0000000..ca7f828
--- /dev/null
+++ b/panel/test/test_conf.py
@@ -0,0 +1,22 @@
+# Copyright (C) 2015 The Sipwise Team - http://sipwise.com
+#
+# This program is free software: you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the Free
+# Software Foundation, either version 3 of the License, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+# more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program. If not, see .
+from django.test import TestCase
+
+
+class TestPanelConf(TestCase):
+ def test_django_settings(self):
+ from django.conf import settings
+
+ self.assertListEqual(settings.ALLOWED_HOSTS, ["testserver"])
diff --git a/panel/views.py b/panel/views.py
index 1057d68..5296c5c 100644
--- a/panel/views.py
+++ b/panel/views.py
@@ -12,11 +12,11 @@
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see .
-from django.conf import settings
from django.http import HttpResponseNotFound
from django.shortcuts import get_object_or_404
from django.shortcuts import render
+from .conf import settings
from build.models import BuildRelease
from repoapi.models import JenkinsBuildInfo as jbi