-
Notifications
You must be signed in to change notification settings - Fork 136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
runner service refactor #230
Conversation
Linter Issue ReportDuring the code review, a list issues were found. These issues could affect the code quality, maintainability, and consistency. Below is the detailed Linter issue report: builder/store/database/knative_service.goLint Issue: undefined: DB
Lint Issue: undefined: times
Lint Issue: undefined: defaultDB
builder/store/database/migrations/20241225124808_create_table_knative_service.goLint Issue: undefined: times
Lint Issue: undefined: Migrations
Lint Issue: undefined: createTables
Lint Issue: undefined: dropTables
Please make the suggested changes to improve the code quality. |
_mocks/opencsg.com/csghub-server/builder/store/database/mock_ClusterInfoStore.go
Show resolved
Hide resolved
Possible Issues And Suggestions:
MR Evaluation:This feature is still under test, evaluation are given by AI and might be inaccurate. After evaluation, the code changes in the Merge Request get score: 90. Analysis for the evaluation score:
TipsCodeReview Commands (invoked as MR or PR comments)
CodeReview Discussion ChatThere are 2 ways to chat with Starship CodeReview:
Note: Be mindful of the bot's finite context window. CodeReview Documentation and Community
About Us:Visit the OpenCSG StarShip website for the Dashboard and detailed information on CodeReview, CodeGen, and other StarShip modules. |
The TipsCodeReview Commands (invoked as MR or PR comments)
CodeReview Discussion ChatThere are 2 ways to chat with Starship CodeReview:
Note: Be mindful of the bot's finite context window. CodeReview Documentation and Community
|
What is this feature?
refactor runner service events receiving with k8s informer
Why do we need this feature?
improve the performance for runner
Who is this feature for?
csghub user
Which issue(s) does this PR fix?:
Fixes #
Special notes for your reviewer:
MR Summary:
The summary is added by @codegpt.
This Merge Request introduces significant performance improvements and new features to the runner service, particularly focusing on Kubernetes (K8s) service management and Argo workflow handling. Key changes include:
Refactoring for Performance: The runner service has been refactored to improve performance. This includes enhancements in handling Kubernetes services and Argo workflows more efficiently.
Kubernetes Service Management Enhancements: The service component now supports operations like running, stopping, purging, and updating Kubernetes services. It also includes the ability to generate Kubernetes services dynamically based on requests, manage persistent volume claims, and retrieve service pods with their status.
Argo Workflow Handling Improvements: The workflow component has been enhanced to support creating, updating, deleting, and retrieving Argo workflows. It also includes functionality to handle workflow events and perform accounting for resource usage.
Informer Integration: Informers have been integrated for both Kubernetes services and Argo workflows to watch for changes and handle them accordingly. This allows for real-time updates and management of services and workflows.
API Endpoints for Service and Workflow Management: New API endpoints have been introduced to manage Kubernetes services and Argo workflows, including operations like creating, stopping, updating, and getting the status of services and workflows.
Error Handling and Logging: Improved error handling and logging mechanisms have been implemented to ensure robustness and ease of debugging.
Configuration and Dependency Updates: Updates to configurations and dependencies to support the new features and improvements.
This MR aims to enhance the scalability, efficiency, and manageability of Kubernetes services and Argo workflows within the runner service, providing a more robust and performant platform for users.