Kaynağa Gözat

国内使用python-dotenv配置环境变量

locky 1 hafta önce
ebeveyn
işleme
2f91da5d98
1 değiştirilmiş dosya ile 26 ekleme ve 18 silme
  1. 26 18
      AnsjerPush/cn_config/cn_formal_settings.py

+ 26 - 18
AnsjerPush/cn_config/cn_formal_settings.py

@@ -1,17 +1,25 @@
 import os
 from AnsjerPush.config import BASE_DIR
-import environ
+from dotenv import load_dotenv
+load_dotenv(os.path.join(BASE_DIR, '.env'))
 
-env = environ.Env(
-    DEBUG=(bool, False)
-)
-# 读取 .env 文件
-environ.Env.read_env(os.path.join(BASE_DIR, '.env'))
+def get_list(name, default=None, sep=","):
+    value = os.getenv(name)
+    if value is None:
+        return default or []
+    return [x.strip() for x in value.split(sep) if x.strip()]
+
+ACCESS_KEY_ID = os.getenv('ACCESS_KEY_ID', default='')
+SECRET_ACCESS_KEY = os.getenv('SECRET_ACCESS_KEY', default='')
+AWS_ACCESS_KEY_ID = get_list('AWS_ACCESS_KEY_ID', default=[])
+AWS_SECRET_ACCESS_KEY = get_list('AWS_SECRET_ACCESS_KEY', default=[])
+
+OSS_STS_ACCESS_KEY = os.getenv('OSS_STS_ACCESS_KEY', default='')
+OSS_STS_ACCESS_SECRET = os.getenv('OSS_STS_ACCESS_SECRET', default='')
+OSS_ROLE_ARN = os.getenv('OSS_ROLE_ARN', default='')
 
-ACCESS_KEY_ID = env('ACCESS_KEY_ID', default='')
-SECRET_ACCESS_KEY = env('SECRET_ACCESS_KEY', default='')
-AWS_ACCESS_KEY_ID = env.list('AWS_ACCESS_KEY_ID', default=[])
-AWS_SECRET_ACCESS_KEY = env.list('AWS_SECRET_ACCESS_KEY', default=[])
+HUAWEICLOUD_AK = os.getenv('HUAWEICLOUD_AK', default='')
+HUAWEICLOUD_SK = os.getenv('HUAWEICLOUD_SK', default='')
 
 SECRET_KEY = '$2hf5g$a%_^kk0-l25l$!o5)yc=dvtnfpc8(+$rh4fq4twa_xx'
 DEBUG = False
@@ -63,16 +71,16 @@ TEMPLATES = [
 WSGI_APPLICATION = 'AnsjerPush.wsgi.application'
 
 # 业务数据库
-DATABASE_DATA = env('DATABASE_DATA')
-SERVER_HOST = env('SERVER_HOST')
-DATABASES_USER = env('DATABASES_USER')
-DATABASES_PASS = env('DATABASES_PASS')
+DATABASE_DATA = os.getenv('DATABASE_DATA')
+SERVER_HOST = os.getenv('SERVER_HOST')
+DATABASES_USER = os.getenv('DATABASES_USER')
+DATABASES_PASS = os.getenv('DATABASES_PASS')
 
 # 推送数据库
-DATABASE_DATA2 = env('DATABASE_DATA2')
-SERVER_HOST2 = env('SERVER_HOST2')
-DATABASES_USER2 = env('DATABASES_USER2')
-DATABASES_PASS2 = env('DATABASES_PASS2')
+DATABASE_DATA2 = os.getenv('DATABASE_DATA2')
+SERVER_HOST2 = os.getenv('SERVER_HOST2')
+DATABASES_USER2 = os.getenv('DATABASES_USER2')
+DATABASES_PASS2 = os.getenv('DATABASES_PASS2')
 
 DATABASES = {
     'default': {