Project Title
Improvements for the Toolforge 'webservice' command
Personal Information
Name: Fotso Fono Kevin Larry
Email: kfotso61@gmail.com
IRC Nick: djff
Location: Cameroon
Github: Github Profile Page
Project Mentors
Andrew Bogott @Andrew,
Bryan Davis @bd808,
Madhu @madhuvishy
Synopsis / Project summary
Every tool in toolforge can have a dedicated web server running on either job grid or kubernetes. /usr/local/bin/webservice is a python application used by toolforge users to start and stop the web services for their tools. However, The experience using this application so far is not close to ideal due to the presence of a significant amount of bugs and lack of key interactive features with the users. This project seeks to address the issue at hand by solving all major identified issues, and adding new features to the application to ensure users get the best experience from using the webservice application.
Prerequisite work
[x] Register for developer access.
[x] Read the Gerrit tutorial and set my local environment
[x] Clone the project repository from gerrit
[x] Read over the source code and documented how `webservice --backend kubernetes {start, stop} functions
[x] Submitted a patch of the above documentation following the gerrit tutorial
[x] Added `BryanDavis`, `Madhuvishy`, and `Andrew Bogott` as reviewers for my submitted patch which can be found here
Project Goals (Verifiable Deliverables)
- Resolve all bugs related to the webservice application outlined in this Task
- Implement new features outlined in the above task
- If time permits work on any issue/ implement any new feature which might arise during the internship period.
Detailed project description
Introduction
Currently, the webservice command provides some functionality that allow users run their web service on either a grid engine or kubernetes cluster. However, the user experience with this command is not optimal because of the presence of bug and absence of features which can help in optimizing the experience.
Proposed Implementation Approach
To implement this project, I need to start by reproducing the bugs and do code testing, however, it is very difficult to setup a local testing environment for the webservice command since it requires an environment which include the grid engine and kubernetes clusters. With this in mind, as of now, there are two possible methods I am exploring to ensure I can test the code while its been enhanced.
Creating a seperate copy of the webservice application which I can use for development and live testing.
Setting up a testing project like toolsbeta from which will be able to do the tests of the script locally.
After setting up a suitable testing channel, we will process by reproducing each bug to track its origin, then devise and implement the most appropriate approach to solve it