PipeGuard is an advanced monitoring system for GitHub Actions pipelines that detects anomalies and provides AI-powered insights for pipeline optimization. This project demonstrates modern DevOps practices by integrating multiple Google Cloud services with comprehensive security features and real-time analytics.
π Development Status: This application is currently in active development and testing phase. All core features are implemented and functional for local development. The system includes production-ready configurations but is not yet deployed to live environments to ensure safe testing and development.
- π― Real-time Pipeline Monitoring with anomaly detection
- π€ AI-Powered Analytics for performance optimization
- π Enterprise Security with OWASP compliance
- π Interactive Dashboard with modern responsive design
- β‘ Live Data Updates with WebSocket-like refresh
- π‘οΈ Comprehensive Testing suite with security validation
python setup_wizard.py # Interactive setup with real GitHub & Google Cloud
Follow the guided setup to connect to your actual repositories and services.
python secure_setup.py # Configure secure environment
python run_local.py # Choose option 1 to start dashboard
Then visit: http://localhost:8080
pip install -r requirements.txt
python security_check.py # Validate security
python run_local.py # Start interactive menu
Advanced real-time dashboard featuring AI-powered analytics and modern responsive design
The PipeGuard dashboard provides a comprehensive view of your pipeline health:
- Total Builds with percentage change indicators
- Success Rate with trend analysis
- Average Duration with performance metrics
- Anomalies Detected with severity levels
- Dual-axis charts showing build duration trends and success rates
- Real-time data updates every 30 seconds
- Trend indicators with visual cues (
βοΈ improving,βοΈ declining) - Responsive design optimized for desktop and mobile
- Anomaly Detection with pattern recognition
- Performance Predictions based on historical data
- Smart Recommendations for optimization
- Automated Alerts for critical issues
- Professional gradient design with smooth animations
- Dark/light theme support (future enhancement)
- Accessibility compliant with WCAG guidelines
- Fast loading with optimized asset delivery
To see the dashboard locally:
# Start the development server
python run_local.py
# Or use the enhanced setup
python secure_setup.py
python app.py
# Visit: http://localhost:8080
The dashboard will display sample data for demonstration purposes in development mode.
When ready for production deployment, PipeGuard includes complete GCP integration:
- Google Cloud Project with enabled APIs:
- App Engine, Cloud Functions, Firestore, Cloud Scheduler
- GitHub repository with Actions workflow
- GitHub personal access token (
repo:status
scope)
# Copy environment template
cp .env.example .env
# Configure production variables:
GITHUB_TOKEN=your_github_token_here
GITHUB_USER=your_github_username
GITHUB_REPO=your_repository_name
GOOGLE_CLOUD_PROJECT=your_gcp_project_id
FLASK_ENV=production
FLASK_DEBUG=False
# Deploy monitoring function
gcloud functions deploy monitor-pipeline \
--runtime python39 \
--trigger-http \
--entry-point main \
--source .
# Deploy dashboard to App Engine
gcloud app deploy app.yaml
# Setup Cloud Scheduler
gcloud scheduler jobs create http pipeline-monitor \
--schedule="0 * * * *" \
--uri="https://your-region-your-project.cloudfunctions.net/monitor-pipeline"
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β GitHub β β Cloud Function β β Firestore β
β Actions βββββΆβ (Monitor) βββββΆβ Database β
β β β β β β
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β β
βΌ βΌ
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
β Cloud β β App Engine β β Dashboard β
β Scheduler βββββΆβ (Flask App) βββββΆβ Web UI β
β (Hourly) β β β β β
βββββββββββββββββββ ββββββββββββββββββββ βββββββββββββββββββ
- GitHub Actions: Source of pipeline data
- Cloud Function: Data collection and anomaly detection
- Firestore: NoSQL database for pipeline runs and analytics
- App Engine: Hosts the Flask dashboard
- Cloud Scheduler: Automated hourly monitoring triggers
β οΈ Important: This application is currently configured for development and testing. Production deployment should be performed only after thorough testing and security review in your specific environment.
- Real-time Pipeline Monitoring: Continuous tracking of GitHub Actions workflows
- Anomaly Detection: AI-powered identification of performance issues and failures
- Trend Analysis: Historical data analysis with pattern recognition
- Performance Metrics: Build duration, success rates, and failure analysis
- Predictive Analytics: Machine learning for performance forecasting
- OWASP Security Standards: Complete security framework implementation
- Input Validation: Comprehensive sanitization and validation
- Rate Limiting: DDoS protection and abuse prevention
- CORS Configuration: Secure cross-origin resource sharing
- Security Headers: CSP, HSTS, and other security headers
- Error Handling: Secure error responses without information leakage
- Interactive Dashboard: Modern, responsive web interface
- Real-time Updates: Live data refresh without page reload
- Mobile Responsive: Optimized for all device sizes
- Professional UI: Modern gradient design with smooth animations
- Accessibility: WCAG compliant interface design
- GitHub Actions Integration: Seamless workflow monitoring
- Google Cloud Platform: Enterprise-grade cloud infrastructure
- Firestore Database: NoSQL storage with real-time capabilities
- Email Notifications: SMTP alerts for critical issues
- API Endpoints: RESTful API for external integrations
- Enhanced Features: Detailed feature documentation
- Security Audit: Comprehensive security analysis
- Security Summary: Security implementation overview
- Setup Guide: Complete setup instructions
PipeGuard-1/
βββ app.py # Main Flask application
βββ monitor_pipeline.py # Cloud Function for monitoring
βββ main.py # App Engine entry point
βββ requirements.txt # Python dependencies
βββ app.yaml # App Engine configuration
βββ templates/
β βββ index.html # Dashboard UI
βββ tests/
β βββ test_app.py # Core functionality tests
β βββ test_enhanced.py # Enhanced feature tests
β βββ test_security.py # Security validation tests
βββ docs/
β βββ images/ # Documentation screenshots
βββ security_config.py # Security configuration
βββ advanced_monitoring.py # AI analytics module
βββ run_local.py # Development server script
- Interactive Development:
python run_local.py
- Security Validation:
python security_check.py
- Feature Testing:
python test_enhanced.py
- Quick Verification:
python verify.py
This project demonstrates modern DevOps practices and cloud-native application development. It's designed as a learning resource and foundation for production pipeline monitoring systems.
- Backend: Python 3.9+, Flask 3.0+
- Frontend: HTML5, CSS3, JavaScript (Vanilla)
- Database: Google Firestore
- Cloud: Google Cloud Platform (App Engine, Cloud Functions)
- Security: OWASP compliance, rate limiting, input validation
- Testing: pytest, security validation, integration tests
MIT License - see LICENSE file for details.
See CLEANUP_SUMMARY.md
for a detailed log of all removed files, obsolete scripts, and the current optimized project structure as of June 2025.
β PipeGuard - Advanced Pipeline Monitoring with AI-Powered Analytics