add railway secrets automation

This commit is contained in:
Alexa Amundson
2025-11-16 03:48:34 -06:00
parent 84ab793177
commit 9b4d04523f
5 changed files with 365 additions and 59 deletions

View File

@@ -1,83 +1,76 @@
# Database
DATABASE_URL=postgresql://blackroad:password@localhost:5432/blackroad_db
DATABASE_ASYNC_URL=postgresql+asyncpg://blackroad:password@localhost:5432/blackroad_db
# BlackRoad OS Backend - Railway Secrets Template
# Copy this file to .env for local development and keep the actual
# values in Railway's Variables dashboard. The GitHub workflow
# scripts/railway/validate_env_template.py ensures this template stays
# aligned with app/app.config.Settings.
# Redis
REDIS_URL=redis://localhost:6379/0
# Application metadata
APP_NAME=BlackRoad Operating System
APP_VERSION=1.0.0
DEBUG=False
ENVIRONMENT=production
# JWT
SECRET_KEY=your-secret-key-change-this-in-production
# Database connectivity
DATABASE_URL=postgresql://YOUR_DB_USER:YOUR_DB_PASSWORD@YOUR_DB_HOST:5432/blackroad
DATABASE_ASYNC_URL=postgresql+asyncpg://YOUR_DB_USER:YOUR_DB_PASSWORD@YOUR_DB_HOST:5432/blackroad
REDIS_URL=redis://YOUR_REDIS_HOST:6379/0
# Security / auth
SECRET_KEY=changeme-super-secret-key
ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=30
REFRESH_TOKEN_EXPIRE_DAYS=7
WALLET_MASTER_KEY=replace-with-strong-unique-master-key
WALLET_MASTER_KEY=changeme-wallet-master-key
ALLOWED_ORIGINS=https://blackroad.systems,https://your-frontend.example
# AWS S3 (for file storage)
AWS_ACCESS_KEY_ID=your-access-key
AWS_SECRET_ACCESS_KEY=your-secret-key
# Object storage
AWS_ACCESS_KEY_ID=YOUR_AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY=YOUR_AWS_SECRET_ACCESS_KEY
AWS_REGION=us-east-1
S3_BUCKET_NAME=blackroad-files
# Email (SMTP)
# Email / SMTP
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASSWORD=your-app-password
EMAIL_FROM=noreply@blackroad.com
SMTP_USER=road@example.com
SMTP_PASSWORD=changeme-smtp-password
EMAIL_FROM=blackroad@example.com
# Application
APP_NAME=BlackRoad Operating System
APP_VERSION=1.0.0
DEBUG=True
ENVIRONMENT=development
# AI integrations
OPENAI_API_KEY=sk-your-openai-key
# CORS (add your production domains here)
ALLOWED_ORIGINS=http://localhost:3000,http://localhost:8000,https://blackboxprogramming.github.io,https://www.blackroad.systems
# Blockchain tuning
BLOCKCHAIN_DIFFICULTY=4
MINING_REWARD=50.0
# API Keys - Existing Integrations
OPENAI_API_KEY=your-openai-key-for-ai-chat
# Railway deployment + alerting
RAILWAY_TOKEN=railway-token-placeholder
RAILWAY_PROJECT_ID=00000000-0000-0000-0000-000000000000
RAILWAY_ENVIRONMENT_ID=00000000-0000-0000-0000-000000000000
RAILWAY_DOMAIN=your-service.up.railway.app
SLACK_WEBHOOK_URL=https://hooks.slack.com/services/XXX/YYY/ZZZ
DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/XXX/YYY
# Optional cloud/API integrations
DIGITALOCEAN_TOKEN=your-digitalocean-token
GITHUB_TOKEN=your-github-personal-access-token
HUGGINGFACE_TOKEN=your-huggingface-api-token
# API Keys - New Deployment Platform Integrations
RAILWAY_TOKEN=your-railway-api-token
VERCEL_TOKEN=your-vercel-api-token
VERCEL_TEAM_ID=your-vercel-team-id-optional
# API Keys - Payment Processing
HUGGINGFACE_TOKEN=your-huggingface-token
VERCEL_TOKEN=vercel-token-placeholder
VERCEL_TEAM_ID=your-vercel-team-id
STRIPE_SECRET_KEY=sk_test_your-stripe-secret-key
STRIPE_PUBLISHABLE_KEY=pk_test_your-stripe-publishable-key
# API Keys - Communications (SMS/WhatsApp)
TWILIO_ACCOUNT_SID=your-twilio-account-sid
TWILIO_ACCOUNT_SID=ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
TWILIO_AUTH_TOKEN=your-twilio-auth-token
TWILIO_PHONE_NUMBER=+1234567890
# API Keys - Team Collaboration & Notifications
TWILIO_PHONE_NUMBER=+10000000000
SLACK_BOT_TOKEN=xoxb-your-slack-bot-token
SLACK_WEBHOOK_URL=https://hooks.slack.com/services/YOUR/WEBHOOK/URL
DISCORD_BOT_TOKEN=your-discord-bot-token
DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/YOUR/WEBHOOK/URL
# API Keys - Error Tracking & Monitoring
SENTRY_DSN=https://your-sentry-dsn@sentry.io/project-id
DISCORD_BOT_TOKEN=discord-bot-token-placeholder
SENTRY_DSN=https://example.ingest.sentry.io/project-id
SENTRY_AUTH_TOKEN=your-sentry-auth-token
SENTRY_ORG=your-sentry-organization-slug
# Blockchain & Mining
BLOCKCHAIN_DIFFICULTY=4
MINING_REWARD=50
ROADCHAIN_RPC_URL=http://localhost:8545
ROADCOIN_POOL_URL=pool.roadcoin.network:3333
ROADCOIN_WALLET_ADDRESS=auto-generated-per-user
# Device Management (IoT/Raspberry Pi)
MQTT_BROKER_URL=mqtt://localhost:1883
SENTRY_ORG=your-sentry-org
ROADCHAIN_RPC_URL=https://chain.example-rpc.net
ROADCOIN_POOL_URL=pool.example.roadcoin:3333
ROADCOIN_WALLET_ADDRESS=your-roadcoin-wallet
MQTT_BROKER_URL=mqtt://broker.example.internal:1883
MQTT_USERNAME=blackroad
MQTT_PASSWORD=your-mqtt-password
DEVICE_HEARTBEAT_TIMEOUT_SECONDS=300
# Deployment
# Railway will automatically set PORT - use this for local development
PORT=8000