Hello all, This blog is in continuation to my previous blog https://civicrm.org/blog/kartik1000/gsoc-project-probots-and-gitlab-github-integration where I explained my project aims and how I plan to proceed towards each task. After 1 month of my project, I felt it would be great to summarise the tasks I have completed and what I plan to do within the next month.
Three Major tasks were completed during this month:
- The First task completed was to learn about how we are gonna test and check the working of our bot keeping in mind that we will merge this bot with civi-bot at some later stage. So after much discussion with mentors, we decided to create a dev-bot from a fork of https://github.com/civicrm/probot-civicrm and then host it as a bot on glitch and test through this bot.
- The Second task done was to make an auto-responder specifically for a pull request by a new contributor with modifications to the existing template. It mainly required the use of GitHub APIs to fetch the required information for the if-else statement.
- The third task done was to develop a stale-bot which can successfully mark stale pull requests and then close the pull requests if they don't show any activity further.
For more Technical details you can look at https://lab.civicrm.org/dev/core/-/issues/1842
Tasks to be completed within next month:
- Use probots command extension, to add labels directly to pull requests from comments in a pull request.
- GitHub and GitLab Integration: Add reference of issues to pull request which solve issues from dev/core list of issues of CiviCRM.
- Doing the Above mentioned task vice-versa by adding a reference of a pull request to the Gitlab Issues list
- Check PRs which are conflicted and add the needs-rebasing label and notify the user of the same.
If you would like to provide some suggestions on what other things can implemented to automate the workflow you are highly welcome to provide your ideas in comment-section of https://lab.civicrm.org/dev/core/-/issues/1842.
Thanks you for this important work, Kartik!