Skip to content
Extraits de code Groupes Projets
Valider 200edb93 rédigé par Lionel Dricot's avatar Lionel Dricot
Parcourir les fichiers

Merge branch 'master' into 'master'

Report Badr-Eddine Aji

See merge request ldricot/lingi2401!347
parents c621493b e13a38a6
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
## Key Information
| Author | Badr-Eddine Aji |
|---------------------|--------------------------------------------------------------------------------------------------------------------------------|
| NOMA | 88991600 |
| Academic Year | 2023–2024 |
| GitHub username | badreddine2 |
| Commit email address | badreddine.aji@gmail.com |
| Project | [ADE-Scheduler](https://github.com/ADE-Scheduler/ADE-Scheduler) |
| License | MIT |
| Pull request | [PR #1052](https://github.com/ADE-Scheduler/ADE-Scheduler/pull/1052) |
# ADE-Scheduler Contribution
## Project Overview
ADE-Scheduler is a web application created by former students specifically for UCLouvain members. It provides enhanced features and a more attractive design compared to the official ADE system.
## Contribution Story
### Getting Started
I began my contribution by cloning the ADE-Scheduler project repository onto my local machine. The project came with a Docker folder, including a ` Dockerfile` and an entrypoint script. These components are intended to containerize the application, making it easier for both users and contributors to set up their environments.
### Facing Challenges
During the process of building the Docker image, I encountered several issues. The first challenge was CentOS mirror errors, which caused the build to fail. This indicated that the Docker setup was not as straightforward as anticipated. Additionally, I noticed that the ` Dockerfile` was not copying the application repository to the working directory correctly, which led to problems with the entrypoint script. Moreover, the build process was missing the `dev-requirements.txt` file, a crucial element for installing the necessary Python modules.
### Taking Action
To address these challenges, I took a series of steps. I started by creating an issue on GitHub to report the problems and seek guidance on how to proceed. This was the initial step in officially documenting and communicating the issues I faced. I then worked on the ` Dockerfile`, making necessary adjustments to fix the CentOS mirror errors and correcting the process for copying the application repository. Additionally, I created and added the `dev-requirements.txt` file to include all required modules and their compatible versions. I also tackled authentication issues by adding mechanisms that bypassed the need for credentials and included a fake_api folder to help with this.
### Feedback and Further Improvements
After submitting a pull request with my initial fixes, I received feedback suggesting a shift from using `dev-requirements.txt` to Poetry for dependency management. The project owners recommended this change to avoid manual updates for modules. In response, I installed Poetry in the ` Dockerfile`, which required further modifications to the Docker setup. I also decided to switch from CentOS 7 to Rocky Linux, as CentOS 7 is deprecated. This change provided a more current and stable base for the application. I updated the ` Dockerfile` to integrate Poetry, removing the `dev-requirements.txt` file and reconfiguring the setup accordingly. Finally, I updated the project documentation to reflect these changes, ensuring that future contributors would have clear instructions on the new ` Dockerfile` and entrypoint script.
### Results and Impact
The improvements led to a successful build of the Docker image and smooth operation of the container. The adoption of Poetry streamlined dependency management, and the switch to Rocky Linux provided a more secure and up-to-date base image. These changes have made it easier for future developers to build and run the container, significantly reducing setup time and ongoing maintenance.
### Conclusion
By addressing the Docker setup issues and implementing the suggested improvements, I contributed to make ADE-Scheduler project containerized. Now that the application is containerized, it can be deployed to the cloud or hosted in a Kubernetes cluster which will ensures the high availability and scalability of ADE-Scheduler.
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter