Как безопасно/правильно комитить файл settings.py в Django? - Python
Формулировка задачи:
У меня в файле
settings.py
установленны переменные с разными паролями, ключами и т.д в открытом виде. Как мне теперь грамотно комитить проект на github ну а потом на боевой сервер? В данный момент яsettings.py
внёс в.gitignore
.Решение задачи: «Как безопасно/правильно комитить файл settings.py в Django?»
textual
Листинг программы
with open('photoarchive/settings.yaml', 'r') as stream:
try:
data = yaml.safe_load(stream)
except yaml.YAMLError as exc:
print(exc)
def from_environ(setting, data=data):
"""Get the variable value or return explicit exception."""
try:
return data[setting]
except KeyError:
error_msg = "Set the {0} environment variable".format(setting)
raise ImproperlyConfigured(error_msg)
SECRET_KEY = from_environ('SECRET_KEY')
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': from_environ('DATABASE_NAME'),
'USER': from_environ('DATABASE_USER'),
'PASSWORD': from_environ('DATABASE_PASSWORD'),
'HOST': from_environ('HOST'),
'PORT': from_environ('PORT'),
}
}