mirror of
https://github.com/boostorg/website-v2.git
synced 2026-02-27 05:32:08 +00:00
Merge pull request #94 from revsys/92-environment
⬆️ Add django-admin-env-notice
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import environs
|
||||
import logging
|
||||
import structlog
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
@@ -46,6 +47,7 @@ ALLOWED_HOSTS = [el.strip() for el in host_list]
|
||||
|
||||
|
||||
INSTALLED_APPS = [
|
||||
"django_admin_env_notice", # Third-party
|
||||
"django.contrib.admin",
|
||||
"django.contrib.auth",
|
||||
"django.contrib.contenttypes",
|
||||
@@ -122,6 +124,9 @@ TEMPLATES = [
|
||||
],
|
||||
"OPTIONS": {
|
||||
"context_processors": [
|
||||
# Django Admin Env Notice
|
||||
"django_admin_env_notice.context_processors.from_settings",
|
||||
# Django stuff
|
||||
"django.template.context_processors.debug",
|
||||
"django.template.context_processors.request",
|
||||
"django.contrib.auth.context_processors.auth",
|
||||
@@ -308,3 +313,22 @@ if all(
|
||||
SECURE_PROXY_SSL_HEADER_NAME,
|
||||
SECURE_PROXY_SSL_HEADER_VALUE,
|
||||
)
|
||||
|
||||
# Admin banner configuration
|
||||
ENV_NAME = env("ENVIRONMENT_NAME", default="Unknown Environment")
|
||||
IMAGE_TAG = env("IMAGE_TAG", default="Unknown Version")
|
||||
|
||||
if LOCAL_DEVELOPMENT:
|
||||
output = subprocess.check_output(
|
||||
["git", "describe", "--tags"], universal_newlines=True
|
||||
)
|
||||
IMAGE_TAG = str(output.strip())
|
||||
|
||||
ENVIRONMENT_NAME = f"{ENV_NAME} - {IMAGE_TAG}"
|
||||
|
||||
ENVIRONMENT_COLOR = "#718096" # Gray for unknown
|
||||
|
||||
if ENV_NAME == "Development Environment":
|
||||
ENVIRONMENT_COLOR = "#38A169" # Green
|
||||
elif ENV_NAME == "Production Environment":
|
||||
ENVIRONMENT_COLOR = "#E53E3E"
|
||||
|
||||
@@ -87,17 +87,8 @@ Env:
|
||||
secretKeyRef:
|
||||
name: django-secret-key
|
||||
key: key
|
||||
# - name: SECURE_PROXY_SSL_HEADER_NAME
|
||||
# value: "HTTP_X_FORWARDED_PROTO"
|
||||
# - name: SECURE_PROXY_SSL_HEADER_VALUE
|
||||
# value: "https"
|
||||
# - name: SECURE_SSL_REDIRECT
|
||||
# value: "false"
|
||||
# - name: SECRET_KEY
|
||||
# valueFrom:
|
||||
# secretKeyRef:
|
||||
# name: django-secret-key
|
||||
# key: key
|
||||
- name: ENVIRONMENT_NAME
|
||||
value: "Development Environment"
|
||||
# Bucket is setup already, but not using storages just yet
|
||||
# - name: AWS_ACCESS_KEY_ID
|
||||
# valueFrom:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
Django<4.0
|
||||
bumpversion
|
||||
django-admin-env-notice==0.4
|
||||
django-allauth==0.51.0
|
||||
django-db-geventpool
|
||||
django-extensions
|
||||
|
||||
@@ -82,6 +82,8 @@ django==3.2.2
|
||||
# django-rest-auth
|
||||
# djangorestframework
|
||||
# model-bakery
|
||||
django-admin-env-notice==0.4
|
||||
# via -r ./requirements.in
|
||||
django-allauth==0.51.0
|
||||
# via -r ./requirements.in
|
||||
django-bakery==0.12.7
|
||||
|
||||
@@ -3,6 +3,29 @@
|
||||
|
||||
{% block title %}{{ title }} | {% trans 'boost.org admin' %}{% endblock %}
|
||||
|
||||
{% block extrastyle %}{{ block.super }}
|
||||
{% if ENVIRONMENT_NAME and ENVIRONMENT_COLOR %}
|
||||
<!-- Environment notice -->
|
||||
<style type="text/css"{% if request.csp_nonce %} nonce="{{ request.csp_nonce }}"{% endif %}>
|
||||
{{ ENVIRONMENT_ADMIN_SELECTOR }}:before {
|
||||
display: block;
|
||||
line-height: 35px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
text-transform: uppercase;
|
||||
color: {{ ENVIRONMENT_TEXT_COLOR }};
|
||||
content: "{{ ENVIRONMENT_NAME }}";
|
||||
background-color: {{ ENVIRONMENT_COLOR }};
|
||||
{% if ENVIRONMENT_FLOAT %}
|
||||
position: sticky;
|
||||
top: 0;
|
||||
z-index: 1000;
|
||||
{% endif %}
|
||||
}
|
||||
</style>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
{% block branding %}
|
||||
<h1 id="site-name">{% trans 'boost.org administration' %}</h1>
|
||||
{% endblock %}
|
||||
|
||||
Reference in New Issue
Block a user