Commit Graph

262 Commits

Author SHA1 Message Date
e82a753583 debug: simplify PromQL queries to basic 'up' for testing 2025-10-06 13:56:04 -03:00
07576b55c9 fix: clean up PromQL queries format - remove line breaks and extra spaces 2025-10-06 13:54:09 -03:00
37f467d2a0 fix: use correct endpoint for Thanos health check 2025-10-06 13:49:36 -03:00
ea1dae9e09 fix: disable SSL verification and add auth token for ThanosClient 2025-10-06 13:48:15 -03:00
f9385c201f fix: correct prometheus_url to base_url in PrometheusClient health_check 2025-10-06 12:17:29 -03:00
21412e2b1c fix: add health_check method to PrometheusClient 2025-10-06 12:16:05 -03:00
8c616652af feat: implement ThanosClient for historical data queries and hybrid Prometheus+Thanos architecture 2025-10-06 12:14:40 -03:00
f8aebe9c4c fix: simplify cluster analysis task to avoid Celery backend errors 2025-10-06 11:02:16 -03:00
bd83be20e5 fix: handle Celery task error info properly in status API 2025-10-06 11:00:06 -03:00
1b2993b9a1 fix: add exception_type to Celery task error handling 2025-10-06 10:48:16 -03:00
7620b0ce76 fix: correct Python path in Celery worker scripts 2025-10-06 10:46:10 -03:00
6f8ffe1e49 feat: implement Phase 2 - Sequential Pipeline with Celery Workers 2025-10-06 10:44:43 -03:00
bf06ae190a fix: correct KubernetesClient import to K8sClient in Celery tasks 2025-10-06 10:40:20 -03:00
5c5afc85ac docs: add complete refactoring plan for large clusters scalability 2025-10-06 10:26:09 -03:00
6111579b24 Debug: add logging to updateMetricsCards function 2025-10-06 10:17:56 -03:00
1e447903aa Fix: increase pod memory limits to prevent OOM kills 2025-10-06 10:13:42 -03:00
170e1b641e Implement smart loading system with intelligent timeout and graceful error handling 2025-10-06 10:04:56 -03:00
b2da86bfc7 Center the progress bar in loading modal 2025-10-06 10:01:55 -03:00
e21c69a503 Increase API timeout to 50s and loading timeout to 60s for large clusters 2025-10-06 09:59:11 -03:00
49779c7053 Add timeout handling for API requests to prevent infinite loading 2025-10-06 09:56:52 -03:00
56a13424ba Implement fullscreen loading modal with blur background 2025-10-06 09:53:18 -03:00
19926a37d8 Add loading states and UX improvements for dashboard charts 2025-10-06 09:48:55 -03:00
64807f2335 Fix: Correct all _query_prometheus function calls with proper parameters 2025-10-06 09:44:30 -03:00
2fa7872960 Fix: Correct _query_prometheus function calls with proper parameters 2025-10-06 09:40:43 -03:00
8d92d19433 Fix: Dashboard charts now use real cluster data instead of mock data 2025-10-06 09:35:08 -03:00
067dfaa322 Remove unnecessary rollout-restart.sh script
- Delete rollout-restart.sh as it was just a simple oc command
- Update README.md to show direct oc rollout restart command
- Simplify workflow: git push -> GitHub Actions -> oc rollout restart
- Keep only essential scripts: deploy-complete.sh, build-and-push.sh, undeploy-complete.sh
2025-10-04 12:00:30 -03:00
92834cc8aa Fix scripts: remove duplications, hardcoded credentials, and restore proper workflow
- Remove hardcoded Quay.io credentials from build-and-push.sh
- Create common.sh with shared functions to eliminate duplication
- Create rollout-restart.sh for simple updates (recommended workflow)
- Refactor deploy-complete.sh and rollout-restart.sh to use common functions
- Add comprehensive README.md explaining proper workflow
- Restore correct process: git push -> GitHub Actions -> rollout-restart
- Fix security issues and improve maintainability
2025-10-04 11:59:49 -03:00
7e1d26174b Restore original Victory.js pie chart with real data
- Revert to Victory.VictoryPie component (original format)
- Keep real data from /api/v1/namespace-distribution
- Maintain hover effects and summary statistics
- Fix chart rendering while preserving data accuracy
2025-10-04 11:54:54 -03:00
f9a071e338 Fix dashboard charts to use real data instead of mock data
- Replace Victory pie chart with HTML-based visualization for namespace distribution
- Update resource utilization trend to use real cluster metrics
- Update issues timeline to use real validation data
- Add proper error handling and empty states
- Remove all mock/sample data from charts
2025-10-04 11:51:20 -03:00
0e770777d5 Fix S2I workflow to stop automatic failures
- Disable automatic trigger on push to main
- Change to manual-only workflow dispatch
- Add webhook token validation
- Prevent emails from failed automatic builds
- Add clear instructions for webhook setup
2025-10-04 11:48:00 -03:00
eddc492d0e Add real namespace distribution data for dashboard chart
- Create new API endpoint /api/v1/namespace-distribution
- Replace mock data with real cluster data
- Add CPU and memory parsing functions
- Update frontend to use real data with enhanced chart
- Add hover effects and summary statistics
2025-10-04 11:43:22 -03:00
4301023a66 Add automatic TLS configuration to routes
- Fix oc expose service not configuring TLS by default
- Add oc patch command to configure TLS after route creation
- Ensures routes work properly with HTTPS in all clusters
- Applied to both deploy-complete.sh and deploy-s2i.sh
2025-10-04 11:35:39 -03:00
018bdc0cc5 Fix route creation to work across different OpenShift clusters 2025-10-04 11:32:50 -03:00
14900fc27f Standardize all scripts to English without emojis 2025-10-04 10:25:53 -03:00
5e9ffa1f4b Change debug logs to INFO level for pod filtering 2025-10-04 10:12:37 -03:00
e2ee01fc61 Add debug logging for pod filtering 2025-10-04 10:11:00 -03:00
472eec01c9 Filter out build pods and non-running pods from analysis
- Filter pods with status not in [Running, Pending]
- Filter pods ending with -build (S2I build pods)
- Prevent build pods from polluting workload analysis
- Improve analysis accuracy by focusing on active workloads
2025-10-04 10:08:37 -03:00
a73aa4a76f Fix S2I webhook URL - use OpenShift API server
- Change from application route to OpenShift API server
- Fix DNS resolution issue in GitHub Actions
- Use api.shrocp4upi419ovn.lab.upshift.rdu2.redhat.com:6443
2025-10-04 10:02:29 -03:00
2bb99839ba Add S2I GitHub Actions automation
- Add s2i-deploy.yml workflow for automatic S2I builds
- Update deploy-s2i.sh with --github option for GitHub Actions
- Generic webhook integration for automatic builds
- Maintain existing manual S2I deployment option
2025-10-04 10:00:54 -03:00
9f96614c15 Test S2I auto-rebuild - update app title
- Add (S2I Test) to application title
- Test if S2I detects code changes and triggers rebuild
- Verify automatic deployment workflow
2025-10-04 09:46:57 -03:00
1540c40124 Fix S2I deployment to match Container Build resources exactly
- Change APP_NAME from 'oru-analyzer' to 'resource-governance'
- Use correct labels: app.kubernetes.io/name=resource-governance
- Apply service.yaml and route.yaml from manifests instead of oc expose
- Use resource-governance-service and resource-governance-route names
- Ensure S2I generates identical resources as Container Build
- Only deployment approach changes, not application resources
2025-10-04 09:37:07 -03:00
f813261430 Consolidate S2I scripts - single complete script only
- Merge deploy-s2i-complete.sh functionality into deploy-s2i.sh
- Remove duplicate deploy-s2i-complete.sh script
- Update README.md to reference single S2I script
- Always complete deployment - no simple vs complete variants
- Maintain self-service approach with all required resources
- Clean repository with only essential scripts
2025-10-04 09:36:16 -03:00
f80b488949 Implement complete S2I deployment script - fully self-service
- Create deploy-s2i-complete.sh with all required resources
- Automatically applies RBAC, ConfigMap, S2I build, Service, Route
- Configures ServiceAccount, resource limits, and replicas
- Single command deployment - no additional steps needed
- Fix service routing to use correct service created by oc new-app
- Update README.md to highlight complete S2I option
- Ensure application is fully functional after deployment
2025-10-04 09:33:01 -03:00
d79768d00b Fix S2I assemble script - correct app files copy path
- Update assemble script to copy from /tmp/src/app/* to /opt/app-root/src/app/
- Fix build error where app files were not copied correctly
- Ensure S2I build process can locate and copy application files
2025-10-04 09:18:19 -03:00
06f41c789b Fix S2I assemble script - correct requirements.txt path
- Update assemble script to use /tmp/src/requirements.txt
- Fix build error where requirements.txt was not found
- Ensure S2I build process can locate dependencies correctly
2025-10-04 09:17:22 -03:00
ec4dfbb2ef Consolidate documentation - remove duplicate README-S2I.md
- Delete README-S2I.md (unnecessary duplicate)
- Keep all documentation in main README.md
- Update reference to point to S2I section in main README
- Maintain single source of truth for documentation
- Reduce repository clutter and maintenance overhead
2025-10-04 09:12:56 -03:00
5ceb421a3c Clean up repository - remove unnecessary files and simplify S2I
- Remove deploy-s2i-simple.sh (duplicate functionality)
- Remove openshift-s2i.yaml template (unnecessary complexity)
- Simplify deploy-s2i.sh to single script approach
- Reduce repository clutter and maintenance overhead
- Keep only essential scripts: deploy-s2i.sh, deploy-complete.sh, build-and-push.sh, undeploy-complete.sh
- Maintain clean, focused codebase
2025-10-04 09:11:36 -03:00
4eec703cba Simplify S2I deployment - remove unnecessary template complexity
- Replace complex template with simple oc new-app command
- Remove dependency on openshift-s2i.yaml template
- Add ultra-simple deploy-s2i-simple.sh script (one command)
- Keep resource configuration via oc patch
- Maintain same functionality with much simpler approach
- Follow OpenShift best practices for S2I deployment
- Reduce maintenance overhead and complexity
2025-10-04 09:10:02 -03:00
04aca2f56e Fix S2I deploy script with optimized resource values
- Update CPU_REQUEST: 100m → 50m
- Update CPU_LIMIT: 500m → 200m
- Update MEMORY_REQUEST: 256Mi → 64Mi
- Update MEMORY_LIMIT: 1Gi → 256Mi
- Align S2I script with deployment.yaml optimizations
- Ensure consistent resource allocation across all deployment methods
2025-10-04 09:07:13 -03:00
4330df5054 Optimize application resource requests/limits based on real usage
- Reduce replicas from 2 to 1 (single instance sufficient)
- Adjust CPU requests: 100m → 50m (based on actual usage)
- Adjust CPU limits: 500m → 200m (4x headroom for spikes)
- Adjust memory requests: 128Mi → 64Mi (realistic baseline)
- Adjust memory limits: 512Mi → 256Mi (2x headroom for 160MB peak usage)
- Update S2I template with same optimized values
- Maintain proper resource ratios (4:1 CPU, 4:1 Memory)
- Eliminate resource waste and improve cluster efficiency
2025-10-04 09:05:59 -03:00