feat: expand backend admin marketplace and scaling
فشلت بعض الفحوصات
/ deploy (push) Failing after 1m22s
فشلت بعض الفحوصات
/ deploy (push) Failing after 1m22s
هذا الالتزام موجود في:
@@ -47,8 +47,61 @@ export default () => ({
|
||||
fromName: process.env.EMAIL_FROM_NAME ?? 'Oudelaa',
|
||||
fromEmail: process.env.EMAIL_FROM_EMAIL ?? process.env.EMAIL_SMTP_USER ?? '',
|
||||
},
|
||||
aiMusic: {
|
||||
enabled: (process.env.AI_MUSIC_ENABLED ?? 'false').toLowerCase() === 'true',
|
||||
apiKey: process.env.AI_MUSIC_API_KEY ?? '',
|
||||
projectId: process.env.AI_MUSIC_PROJECT_ID ?? '',
|
||||
location: process.env.AI_MUSIC_LOCATION ?? 'us-central1',
|
||||
model: process.env.AI_MUSIC_MODEL ?? 'lyria-002',
|
||||
},
|
||||
security: {
|
||||
bcryptSaltRounds: Number(process.env.BCRYPT_SALT_ROUNDS ?? 12),
|
||||
refreshTokenHashSecret:
|
||||
process.env.REFRESH_TOKEN_HASH_SECRET ?? process.env.JWT_REFRESH_SECRET ?? '',
|
||||
},
|
||||
redis: {
|
||||
enabled: (process.env.REDIS_ENABLED ?? 'false').toLowerCase() === 'true',
|
||||
url: process.env.REDIS_URL ?? '',
|
||||
host: process.env.REDIS_HOST ?? '127.0.0.1',
|
||||
port: Number(process.env.REDIS_PORT ?? 6379),
|
||||
username: process.env.REDIS_USERNAME ?? '',
|
||||
password: process.env.REDIS_PASSWORD ?? '',
|
||||
db: Number(process.env.REDIS_DB ?? 0),
|
||||
keyPrefix: process.env.REDIS_KEY_PREFIX ?? 'oudelaa',
|
||||
socketAdapterEnabled:
|
||||
(process.env.REDIS_SOCKET_ADAPTER_ENABLED ?? 'false').toLowerCase() === 'true',
|
||||
},
|
||||
queue: {
|
||||
enabled: (process.env.QUEUE_ENABLED ?? 'false').toLowerCase() === 'true',
|
||||
name: process.env.QUEUE_NAME ?? 'app-jobs',
|
||||
defaultJobAttempts: Number(process.env.QUEUE_DEFAULT_ATTEMPTS ?? 3),
|
||||
defaultJobBackoffMs: Number(process.env.QUEUE_DEFAULT_BACKOFF_MS ?? 1000),
|
||||
removeOnComplete:
|
||||
(process.env.QUEUE_REMOVE_ON_COMPLETE ?? 'true').toLowerCase() === 'true',
|
||||
workerConcurrency: Number(process.env.QUEUE_WORKER_CONCURRENCY ?? 5),
|
||||
},
|
||||
storage: {
|
||||
provider: process.env.STORAGE_PROVIDER ?? 'local',
|
||||
basePath: process.env.STORAGE_BASE_PATH ?? 'uploads',
|
||||
publicBaseUrl: process.env.STORAGE_PUBLIC_BASE_URL ?? '',
|
||||
s3: {
|
||||
bucket: process.env.S3_BUCKET ?? '',
|
||||
region: process.env.S3_REGION ?? 'auto',
|
||||
endpoint: process.env.S3_ENDPOINT ?? '',
|
||||
accessKeyId: process.env.S3_ACCESS_KEY_ID ?? '',
|
||||
secretAccessKey: process.env.S3_SECRET_ACCESS_KEY ?? '',
|
||||
forcePathStyle:
|
||||
(process.env.S3_FORCE_PATH_STYLE ?? 'false').toLowerCase() === 'true',
|
||||
},
|
||||
},
|
||||
logging: {
|
||||
level: process.env.LOG_LEVEL ?? 'log',
|
||||
requestEnabled: (process.env.REQUEST_LOGGING_ENABLED ?? 'true').toLowerCase() === 'true',
|
||||
},
|
||||
feedCache: {
|
||||
enabled: (process.env.FEED_CACHE_ENABLED ?? 'true').toLowerCase() === 'true',
|
||||
userFeedTtlSeconds: Number(process.env.FEED_CACHE_USER_TTL_SECONDS ?? 15),
|
||||
trendingTtlSeconds: Number(process.env.FEED_CACHE_TRENDING_TTL_SECONDS ?? 30),
|
||||
},
|
||||
passwordReset: {
|
||||
codeExpiresMinutes: Number(process.env.PASSWORD_RESET_CODE_EXPIRES_MINUTES ?? 10),
|
||||
|
||||
المرجع في مشكلة جديدة
حظر مستخدم