Skip to content

Releases: Nihilantropy/Basic-CI-CD

v4.0.0

Choose a tag to compare

@Nihilantropy Nihilantropy released this 14 Apr 11:20

v4.0.0

Terraform kubernetes environement

Deployed argocd to automate helm chart application.

Using App-of-Apps pattern to deploy application.

Full Changelog: v3.0.0...v4.0.0

v3.0.0-beta

Choose a tag to compare

@Nihilantropy Nihilantropy released this 28 Mar 08:32

Release v3.0.0: Complete CI/CD Pipeline with Monitoring Integration

This major release completes the project by integrating a comprehensive monitoring system based on Prometheus and Grafana. It represents the final phase (Phase 3) of our CI/CD implementation, adding observability capabilities to both the application and the pipeline processes.

New Features

Monitoring Infrastructure

  • Prometheus Integration: Added time-series database for metrics collection and storage
  • Grafana Dashboards: Custom visualization dashboards for application and CI/CD metrics
  • Alertmanager: Alert handling system with configurable thresholds
  • cAdvisor: Container resource monitoring for Docker services
  • Pushgateway: Support for short-lived jobs like pipeline stages

Application Enhancements

  • Metrics Endpoint: Added /metrics endpoint to Flask application
  • Prometheus Client: Integrated Prometheus client library for metric collection
  • Request Metrics: Tracking of HTTP requests, durations, and response codes
  • Rate Limit Metrics: Monitoring of rate limiting events and remaining capacity
  • Application Info Metrics: Uptime, version, and general app information

CI/CD Pipeline Enhancements

  • Pipeline Metrics: Track build durations, success rates, and stage performance
  • Jenkins Prometheus Plugin: Jenkins metrics exposure via Prometheus plugin
  • Metrics Collection Functions: Added utility functions to record pipeline metrics
  • Build Status Monitoring: Real-time monitoring of pipeline execution

Dashboards & Visualization

  • Flask Application Dashboard: Real-time monitoring of application performance
  • Jenkins Pipeline Dashboard: Pipeline execution statistics and trends
  • Container Monitoring Dashboard: Resource usage across containers

Testing & Validation

  • Metrics Testing: Added test suite for metrics functionality
  • Monitoring Test Scripts: Scripts to validate metrics collection and alerts
  • Rate Limit Testing: Comprehensive tools for testing rate limiting and metrics

Documentation Updates

  • Added monitoring infrastructure architecture documentation
  • Updated README with monitoring capabilities
  • Added dashboard usage instructions
  • Included metrics testing and validation guides

Upgrade Instructions

  1. Pull the latest code with git pull origin main
  2. Run make all to recreate Docker services with monitoring components
  3. Access Prometheus at http://localhost:9090
  4. Access Grafana at http://localhost:3000 (default credentials: admin/admin)
  5. Run the monitoring test script: bash srcs/requirements/Scripts/test_monitoring.sh

Breaking Changes

  • None - monitoring features are additive and don't affect existing functionality

Known Issues

  • None

Acknowledgements

Thanks to all contributors who helped in implementing this comprehensive monitoring solution, completing our CI/CD Pipeline project.

v2.0.0

Choose a tag to compare

@Nihilantropy Nihilantropy released this 24 Mar 10:31

part two of the CI/CD project for learning

1.0

1.0

Choose a tag to compare

@Nihilantropy Nihilantropy released this 10 Mar 16:42
part-one

updated README on flask-app