Skip to content

Instantly share code, notes, and snippets.

@nakuldx
Last active Aug 23, 2021
Embed
What would you like to do?
Google Summer of Code 2021 Work Product Submission

Nakul Desai

I'm currently a pre-final year engineering student studying Computer Science and Engineering in India. I worked on the corobo open-source project under the coala Association e.V organization. The project is aimed at improving the devops bot and giving it a new architecture, interface and usability. The next generation corobo can now be used by any organization and has a lot more features, and integrations with the most popular VCS like GitHub and GitLab.

Mentors

Contributions

  1. Initializing corobo-ng project.

  2. Adding frontend components.

  3. Add GitHub integration.

  4. Add user authentication flow.

  5. Add GitLab integration.

  6. Add token setup and code refactor.

  7. Infrastructure setup.

Work done

The infrastructure is set for the new devops tool along with the integrations with the GitHub and GitLab. An OAuth based setup is used for authentication along with JWT-based authorization.

Work to be done

Initially, we had thought of using IGitt as one of the project dependencies for the git related workflows. Although, IGitt itself has not been updated since a long time and this meant we will have to fix IGitt first. Right now, the project doesn't have a proper git workflow separation which can be done to improve overall separation of concerns.

The project also had a goal of integrating with GitHub apps. Although, this is being currently worked on as a post-GSoC initiative.

Challenges

Due to Covid-19, I lost some time in the first coding phase. This gave me a small time to complete the milestones for the first coding period. The IGitt package was an issue as it was not updated for a long time, and having support for the latest Python versions was critical for the project. So we had to drop the package and construct the git workflow from scratch. To help improve the project efficiency, we only ported some of the components to the new library and kept everything else as a post-GSoC work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment