from back_latienda.settings.base import * import sentry_sdk from sentry_sdk.integrations.django import DjangoIntegration from datetime import timedelta # SECURITY WARNING: don't run with debug turned on in production! DEBUG = False ALLOWED_HOSTS = ['*'] # Sentry sentry_sdk.init( dsn=os.getenv('SENTRY_DSN'), integrations=[DjangoIntegration()], # Set traces_sample_rate to 1.0 to capture 100% # of transactions for performance monitoring. # We recommend adjusting this value in production, traces_sample_rate=1.0, # If you wish to associate users to errors (assuming you are using # django.contrib.auth) you may enable sending PII data. send_default_pii=True, # By default the SDK will try to use the SENTRY_RELEASE # environment variable, or infer a git commit # SHA as release, however you may want to set # something more human-readable. # release="myapp@1.0.0", ) # Database # https://docs.djangoproject.com/en/2.2/ref/settings/#databases # Databases configuration DATABASES = { 'default': { 'ENGINE': 'django.contrib.gis.db.backends.postgis', 'NAME': os.getenv('DB_NAME'), 'USER': os.getenv('DB_USER'), 'PASSWORD': os.getenv('DB_PASSWORD'), 'HOST': os.getenv('DB_HOST'), 'PORT': os.getenv('DB_PORT'), }, } STATIC_ROOT = '/webapps/latienda/static/' MEDIA_ROOT = '/webapps/latienda/media/' # Django private storage - Amazon S3 AWS_ACCESS_KEY_ID = os.getenv('AWS_ACCESS_KEY_ID_S3') AWS_SECRET_ACCESS_KEY = os.getenv('AWS_SECRET_ACCESS_KEY_S3') AWS_STORAGE_BUCKET_NAME = os.getenv('S3_BUCKET') AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME AWS_S3_OBJECT_PARAMETERS = { 'CacheControl': 'max-age=86400', } AWS_S3_REGION_NAME = 'eu-west-1' AWS_DEFAULT_ACL = None DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage' EMAIL_BACKEND = "anymail.backends.amazon_ses.EmailBackend" # DEFAULT_FROM_EMAIL = "no-reply@latienda.com" DEFAULT_FROM_EMAIL = "info@latienda.coop" SERVER_EMAIL = "mail-server@latienda.com" ANYMAIL = { "AMAZON_SES_CLIENT_PARAMS": { "aws_access_key_id": os.getenv("AWS_ACCESS_KEY_ID_SES"), "aws_secret_access_key": os.getenv("AWS_SECRET_ACCESS_KEY_SES"), "region_name": "eu-west-1", }, } # JWT SETTINGS SIMPLE_JWT = { 'ACCESS_TOKEN_LIFETIME': timedelta(minutes=60), 'REFRESH_TOKEN_LIFETIME': timedelta(days=1), 'ROTATE_REFRESH_TOKENS': False, 'BLACKLIST_AFTER_ROTATION': True, 'UPDATE_LAST_LOGIN': False, 'ALGORITHM': 'HS256', 'SIGNING_KEY': SECRET_KEY, 'VERIFYING_KEY': None, 'AUDIENCE': None, 'ISSUER': None, 'AUTH_HEADER_TYPES': ('Bearer',), 'AUTH_HEADER_NAME': 'HTTP_AUTHORIZATION', 'USER_ID_FIELD': 'id', 'USER_ID_CLAIM': 'user_id', 'AUTH_TOKEN_CLASSES': ('rest_framework_simplejwt.tokens.AccessToken',), 'TOKEN_TYPE_CLAIM': 'token_type', 'JTI_CLAIM': 'jti', 'SLIDING_TOKEN_REFRESH_EXP_CLAIM': 'refresh_exp', 'SLIDING_TOKEN_LIFETIME': timedelta(minutes=5), 'SLIDING_TOKEN_REFRESH_LIFETIME': timedelta(days=1), } # disable web interface for REST backend REST_FRAMEWORK['DEFAULT_RENDERER_CLASSES'] = ('rest_framework.renderers.JSONRenderer',)