# ============================================================ # ASF - Environment Configuration (SAFE DEFAULTS ONLY) # Copy this file to .env and replace placeholders with real values. # NEVER commit .env with real secrets to version control. # ============================================================ # ------------------------------------------------------------ # General # ------------------------------------------------------------ ASF_ENV=development ASF_LOG_LEVEL=INFO ASF_CORS_ORIGINS=http://localhost:3000,http://localhost:8080 # ------------------------------------------------------------ # MongoDB (Replica Set rs0 — seed nodes 102/103) # ------------------------------------------------------------ MONGO_HOST=172.19.40.102,172.19.40.103 MONGO_PORT=27017 MONGO_DB=asf MONGO_REPLICA_SET=rs0 # Connection URI: seed list + replicaSet=rs0 (add credentials when/if required) MONGO_URI=mongodb://172.19.40.102:27017,172.19.40.103:27017/asf?replicaSet=rs0 # ------------------------------------------------------------ # RabbitMQ (node 201 / vhost asf) # ------------------------------------------------------------ RABBITMQ_HOST=172.19.40.201 RABBITMQ_PORT=5672 RABBITMQ_HTTP_PORT=15672 RABBITMQ_USER=azurian RABBITMQ_PASSWORD=StrongPassword123! RABBITMQ_VHOST=asf RABBITMQ_URI=amqp://azurian:StrongPassword123!@172.19.40.201:5672/asf # ------------------------------------------------------------ # Redis # ------------------------------------------------------------ REDIS_HOST=localhost REDIS_PORT=6379 REDIS_PASSWORD=asfredis123 REDIS_URI=redis://:asfredis123@localhost:6379/0 # ------------------------------------------------------------ # MinIO / S3-compatible storage # ------------------------------------------------------------ MINIO_HOST=localhost MINIO_PORT=9000 MINIO_CONSOLE_PORT=9001 MINIO_ROOT_USER=asfadmin MINIO_ROOT_PASSWORD=asfadmin123 MINIO_BUCKET=asf-artifacts MINIO_SECURE=false # ------------------------------------------------------------ # ASF AI Gateway (Mock / Provider configuration) # ------------------------------------------------------------ AI_GATEWAY_PROVIDER=mock AI_GATEWAY_DEFAULT_MODEL=asf-mock-v1 AI_GATEWAY_TIMEOUT=120 # Real provider configuration (fill only when enabling): # OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # OPENAI_BASE_URL=https://api.openai.com/v1 # NVIDIA_API_KEY=nvapi-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ------------------------------------------------------------ # Security / Auth (bootstrap placeholders) # ------------------------------------------------------------ ASF_JWT_SECRET=replace-this-with-a-long-random-secret-in-production ASF_API_KEY_SALT=replace-this-with-a-long-random-salt-in-production ASF_SESSION_TTL_SECONDS=86400 # ------------------------------------------------------------ # Frontend (Next.js asf-web) # ------------------------------------------------------------ # Where Next.js rewrites should proxy `/api/v1/*` (asf-core URL) NEXT_PUBLIC_ASF_CORE_URL=http://localhost:8000 # Bootstrap dev-trust: browser-side defaults for X-ASF-Tenant-Id / X-ASF-User-Id NEXT_PUBLIC_DEV_TENANT_ID=t-demo-001 NEXT_PUBLIC_DEV_USER_ID=u-admin # ------------------------------------------------------------ # RabbitMQ exchanges + queue topology (matches rabbitmq.py bindings) # ------------------------------------------------------------ RABBITMQ_EVENTS_EXCHANGE=asf.events RABBITMQ_JOBS_EXCHANGE=asf.jobs # Domain topic queues bound to `asf.events` (TOPIC) RABBITMQ_QUEUE_ORG_CREATED=asf.organization.created RABBITMQ_QUEUE_PROJ_CREATED=asf.project.created RABBITMQ_QUEUE_PROJ_UPDATED=asf.project.updated RABBITMQ_QUEUE_ART_CREATED=asf.artifact.created RABBITMQ_QUEUE_ART_UPDATED=asf.artifact.updated RABBITMQ_QUEUE_AUDIT=asf.audit RABBITMQ_QUEUE_AI_EXEC=asf.ai.execution RABBITMQ_QUEUE_DEADLETTER=asf.deadletter # Job direct queues bound to `asf.jobs` (DIRECT) — consumed by asf-worker ASF_WORKER_JOB_QUEUES=asf.ai.interactive,asf.ai.background,asf.indexing,asf.code_analysis,asf.testing,asf.devops,asf.notifications ASF_WORKER_ID=asf-worker-001 ASF_WORKER_PREFETCH=8 ASF_WORKER_ENABLE_AI_HANDLERS=true