mirror of
https://github.com/blackboxprogramming/BlackRoad-Operating-System.git
synced 2026-03-17 02:57:12 -05:00
Implement Phase 1 infrastructure from master orchestration plan. This commit delivers production-ready deployment infrastructure, comprehensive documentation, and workflow automation. **Cloudflare DNS Infrastructure:** - Add records.yaml with complete DNS config for all domains - Add migrate_to_cloudflare.md with step-by-step migration guide - Add cloudflare_dns_sync.py for automated DNS synchronization - Update CLOUDFLARE_DNS_BLUEPRINT.md with implementation references **Environment Variable Documentation:** - Add ENV_VARS.md with comprehensive variable reference - Document all services: Railway, GitHub Actions, Cloudflare, local - Include security best practices and validation scripts - Add troubleshooting guides and quick-start templates **GitHub Actions Workflows:** - Add railway-deploy-template.yml for Railway deployments - Add frontend-deploy-template.yml for static site deployments - Add codeql-analysis-template.yml for security scanning - Add comprehensive-ci-template.yml for complete CI pipeline - Add .github/dependabot.yml for automated dependency updates **Frontend Infrastructure:** - Add infra/frontend/LANDING_PAGE_PLAN.md with detailed implementation plan - Include page structure, design system, content guidelines - Document deployment options (GitHub Pages, Railway, Cloudflare Pages) **Master Orchestration Updates:** - Update MASTER_ORCHESTRATION_PLAN.md with implementation file references - Add Phase 1 implementation checklist - Document immediate, short-term, and medium-term next steps **Impact:** This implementation enables: - Automated DNS management across 10+ domains - Secure, documented deployment workflows - Consistent environment configuration - Automated security scanning and dependency updates - Clear path to production for landing page **Next Steps for Operator:** 1. Migrate DNS to Cloudflare using migrate_to_cloudflare.md 2. Configure GitHub and Railway secrets 3. Deploy backend with custom domains 4. Implement landing page using LANDING_PAGE_PLAN.md Refs: #55 (Master Orchestration Prompt)
256 lines
6.6 KiB
YAML
256 lines
6.6 KiB
YAML
# Dependabot Configuration
|
|
# ========================
|
|
#
|
|
# Dependabot automatically creates pull requests to update dependencies.
|
|
# This keeps your project secure and up-to-date.
|
|
#
|
|
# Documentation: https://docs.github.com/en/code-security/dependabot
|
|
#
|
|
# What Dependabot does:
|
|
# --------------------
|
|
# - Checks for outdated dependencies daily/weekly/monthly
|
|
# - Creates PRs to update them
|
|
# - Groups related updates together
|
|
# - Respects semantic versioning
|
|
# - Works with GitHub Actions to run tests
|
|
#
|
|
# How to use:
|
|
# ----------
|
|
# This file is already in the correct location (.github/dependabot.yml)
|
|
# Just commit it and Dependabot will start working automatically!
|
|
|
|
version: 2
|
|
|
|
updates:
|
|
# ========================================
|
|
# Backend Python Dependencies
|
|
# ========================================
|
|
- package-ecosystem: "pip"
|
|
directory: "/backend"
|
|
schedule:
|
|
interval: "weekly"
|
|
day: "monday"
|
|
time: "06:00"
|
|
open-pull-requests-limit: 5
|
|
reviewers:
|
|
- "alexa-amundson"
|
|
labels:
|
|
- "dependencies"
|
|
- "backend"
|
|
- "python"
|
|
commit-message:
|
|
prefix: "chore(deps)"
|
|
include: "scope"
|
|
# Group minor and patch updates together
|
|
groups:
|
|
fastapi-stack:
|
|
patterns:
|
|
- "fastapi*"
|
|
- "uvicorn*"
|
|
- "pydantic*"
|
|
- "starlette*"
|
|
database-stack:
|
|
patterns:
|
|
- "sqlalchemy*"
|
|
- "alembic*"
|
|
- "psycopg*"
|
|
- "asyncpg*"
|
|
testing-stack:
|
|
patterns:
|
|
- "pytest*"
|
|
- "coverage*"
|
|
- "httpx*"
|
|
|
|
# ========================================
|
|
# Frontend NPM Dependencies (if exists)
|
|
# ========================================
|
|
# Uncomment if you have a package.json for frontend
|
|
# - package-ecosystem: "npm"
|
|
# directory: "/frontend"
|
|
# schedule:
|
|
# interval: "weekly"
|
|
# day: "monday"
|
|
# time: "06:00"
|
|
# open-pull-requests-limit: 5
|
|
# reviewers:
|
|
# - "alexa-amundson"
|
|
# labels:
|
|
# - "dependencies"
|
|
# - "frontend"
|
|
# - "javascript"
|
|
# commit-message:
|
|
# prefix: "chore(deps)"
|
|
# groups:
|
|
# dev-dependencies:
|
|
# dependency-type: "development"
|
|
|
|
# ========================================
|
|
# Python SDK Dependencies
|
|
# ========================================
|
|
- package-ecosystem: "pip"
|
|
directory: "/sdk/python"
|
|
schedule:
|
|
interval: "weekly"
|
|
day: "monday"
|
|
time: "06:00"
|
|
open-pull-requests-limit: 3
|
|
labels:
|
|
- "dependencies"
|
|
- "sdk"
|
|
- "python"
|
|
commit-message:
|
|
prefix: "chore(sdk)"
|
|
|
|
# ========================================
|
|
# TypeScript SDK Dependencies
|
|
# ========================================
|
|
- package-ecosystem: "npm"
|
|
directory: "/sdk/typescript"
|
|
schedule:
|
|
interval: "weekly"
|
|
day: "monday"
|
|
time: "06:00"
|
|
open-pull-requests-limit: 3
|
|
labels:
|
|
- "dependencies"
|
|
- "sdk"
|
|
- "typescript"
|
|
commit-message:
|
|
prefix: "chore(sdk)"
|
|
|
|
# ========================================
|
|
# GitHub Actions Workflows
|
|
# ========================================
|
|
- package-ecosystem: "github-actions"
|
|
directory: "/"
|
|
schedule:
|
|
interval: "weekly"
|
|
day: "monday"
|
|
time: "06:00"
|
|
open-pull-requests-limit: 3
|
|
labels:
|
|
- "dependencies"
|
|
- "github-actions"
|
|
- "ci-cd"
|
|
commit-message:
|
|
prefix: "chore(ci)"
|
|
|
|
# ========================================
|
|
# Docker (if using Dockerfile)
|
|
# ========================================
|
|
- package-ecosystem: "docker"
|
|
directory: "/backend"
|
|
schedule:
|
|
interval: "weekly"
|
|
day: "monday"
|
|
time: "06:00"
|
|
open-pull-requests-limit: 2
|
|
labels:
|
|
- "dependencies"
|
|
- "docker"
|
|
commit-message:
|
|
prefix: "chore(docker)"
|
|
|
|
# ========================================
|
|
# Configuration Options Explained
|
|
# ========================================
|
|
#
|
|
# package-ecosystem:
|
|
# - pip: Python (requirements.txt, setup.py)
|
|
# - npm: JavaScript/TypeScript (package.json)
|
|
# - github-actions: GitHub Actions workflows
|
|
# - docker: Dockerfiles
|
|
# - bundler: Ruby (Gemfile)
|
|
# - composer: PHP (composer.json)
|
|
# - cargo: Rust (Cargo.toml)
|
|
#
|
|
# directory:
|
|
# - Path where the manifest file is located
|
|
# - Use "/" for root, "/backend" for subdirectory
|
|
#
|
|
# schedule.interval:
|
|
# - daily: Check every day
|
|
# - weekly: Check once a week
|
|
# - monthly: Check once a month
|
|
#
|
|
# open-pull-requests-limit:
|
|
# - Max number of open dependency PRs at once
|
|
# - Prevents PR spam
|
|
# - Recommended: 3-10
|
|
#
|
|
# reviewers:
|
|
# - GitHub usernames to request review from
|
|
# - Helps ensure updates are reviewed
|
|
#
|
|
# labels:
|
|
# - Labels to add to PRs
|
|
# - Helps organize and filter
|
|
#
|
|
# groups:
|
|
# - Group related dependencies into single PR
|
|
# - Reduces PR noise
|
|
# - Example: Update all pytest-related packages together
|
|
#
|
|
# commit-message.prefix:
|
|
# - Prefix for commit messages
|
|
# - Common: "chore(deps)", "build", "deps"
|
|
#
|
|
# ========================================
|
|
# Best Practices
|
|
# ========================================
|
|
#
|
|
# 1. Review PRs before merging:
|
|
# - Check changelogs
|
|
# - Run tests
|
|
# - Look for breaking changes
|
|
#
|
|
# 2. Use groups to reduce PR noise:
|
|
# - Group related packages
|
|
# - Group by type (dev vs prod)
|
|
#
|
|
# 3. Set appropriate schedule:
|
|
# - Weekly for active projects
|
|
# - Monthly for stable projects
|
|
# - Daily for security-critical projects
|
|
#
|
|
# 4. Limit open PRs:
|
|
# - Prevents backlog of unreviewed PRs
|
|
# - 5-10 is usually good
|
|
#
|
|
# 5. Auto-merge patch updates (optional):
|
|
# - Use GitHub auto-merge for patch versions
|
|
# - Requires passing CI tests
|
|
#
|
|
# ========================================
|
|
# Monitoring
|
|
# ========================================
|
|
#
|
|
# View Dependabot activity:
|
|
# - Repository → Insights → Dependency graph → Dependabot
|
|
# - Repository → Pull requests (filter by label: "dependencies")
|
|
#
|
|
# Configure alerts:
|
|
# - Repository → Settings → Security & analysis
|
|
# - Enable "Dependabot alerts"
|
|
# - Enable "Dependabot security updates"
|
|
#
|
|
# ========================================
|
|
# Troubleshooting
|
|
# ========================================
|
|
#
|
|
# Dependabot not creating PRs?
|
|
# - Check .github/dependabot.yml is valid YAML
|
|
# - Verify manifest files exist (requirements.txt, package.json)
|
|
# - Check repository settings → Security & analysis
|
|
# - Look for errors in Settings → Dependabot
|
|
#
|
|
# Too many PRs?
|
|
# - Reduce open-pull-requests-limit
|
|
# - Change schedule to monthly
|
|
# - Use groups to combine updates
|
|
#
|
|
# PRs failing tests?
|
|
# - Fix breaking changes before merging
|
|
# - Pin problematic dependencies
|
|
# - Use version ranges in manifest files
|