- Add comprehensive health check system with multiple endpoints - Add Prometheus metrics endpoint - Add production logging configurations (5 strategies) - Add complete deployment documentation suite: * QUICKSTART.md - 30-minute deployment guide * DEPLOYMENT_CHECKLIST.md - Printable verification checklist * DEPLOYMENT_WORKFLOW.md - Complete deployment lifecycle * PRODUCTION_DEPLOYMENT.md - Comprehensive technical reference * production-logging.md - Logging configuration guide * ANSIBLE_DEPLOYMENT.md - Infrastructure as Code automation * README.md - Navigation hub * DEPLOYMENT_SUMMARY.md - Executive summary - Add deployment scripts and automation - Add DEPLOYMENT_PLAN.md - Concrete plan for immediate deployment - Update README with production-ready features All production infrastructure is now complete and ready for deployment.
99 lines
2.1 KiB
YAML
99 lines
2.1 KiB
YAML
# Staging Pipeline Configuration
|
|
# Production-like environment for testing
|
|
|
|
name: "Staging Pipeline"
|
|
environment: staging
|
|
|
|
# Global settings
|
|
stop_on_failure: true
|
|
enable_rollback: true
|
|
|
|
# Global parameters
|
|
parameters:
|
|
docker_compose_file: "docker-compose.staging.yml"
|
|
log_level: "info"
|
|
notify_on_failure: true
|
|
notification_webhook: "${STAGING_WEBHOOK_URL}"
|
|
|
|
# Pipeline stages
|
|
stages:
|
|
# Build stage
|
|
- stage: build
|
|
enabled: true
|
|
timeout: 600
|
|
retries: 1
|
|
parameters:
|
|
composer_flags: "--no-dev --optimize-autoloader --classmap-authoritative"
|
|
npm_flags: "--production"
|
|
optimize: true
|
|
|
|
# Test stage - comprehensive testing
|
|
- stage: test
|
|
enabled: true
|
|
timeout: 600 # 10 minutes for full suite
|
|
retries: 0
|
|
parameters:
|
|
test_suite: "all"
|
|
coverage: true
|
|
coverage_threshold: 80
|
|
|
|
# Security check - enabled for staging
|
|
- stage: security_check
|
|
enabled: true
|
|
timeout: 120 # 2 minutes
|
|
retries: 0
|
|
parameters:
|
|
check_composer: true
|
|
check_npm: true
|
|
fail_on_high: true
|
|
fail_on_critical: true
|
|
|
|
# Backup - create before deployment
|
|
- stage: backup
|
|
enabled: true
|
|
timeout: 300
|
|
retries: 1
|
|
parameters:
|
|
backup_type: "full"
|
|
retention_days: 7
|
|
compress: true
|
|
|
|
# Deploy stage
|
|
- stage: deploy
|
|
enabled: true
|
|
timeout: 600
|
|
retries: 0
|
|
parameters:
|
|
restart_policy: "unless-stopped"
|
|
pull_images: true
|
|
build_images: false
|
|
health_check_delay: 10
|
|
|
|
# Health check - thorough validation
|
|
- stage: health_check
|
|
enabled: true
|
|
timeout: 120 # 2 minutes
|
|
retries: 3
|
|
parameters:
|
|
check_interval: 10
|
|
required_services:
|
|
- php
|
|
- nginx
|
|
- redis
|
|
- mysql
|
|
http_checks:
|
|
- url: "https://staging.example.com/health"
|
|
expected_status: 200
|
|
timeout: 30
|
|
|
|
# Cleanup
|
|
- stage: cleanup
|
|
enabled: true
|
|
timeout: 180 # 3 minutes
|
|
continue_on_failure: true
|
|
parameters:
|
|
clean_cache: true
|
|
clean_logs: true
|
|
clean_temp: true
|
|
log_retention_days: 30
|