Jenkins GSoC 2023 Office Hours: March 7, 2023 | Project idea presentations

Attendees:Jean-Marc Meessen, Mark Waite, Bruno Verachten, Basil Crow, Nethra, Loghi Perinpanayagam, Vandit Singh, Smit Malkan

Agenda @ notes:

Special project idea presentations:

  • Exponential backoff and jitter for agent reconnections [Basil Crow]

    • Problem: Scalability limitation. Too many agents are connecting to the Controller simultaneously. The Controller could reject some of these connections. The Controller would be only partially successful if some of the agents were not able to reconnect. People have reported this with both the Swarm agents as well as the standard remoting agents. So swarm is effectively a wrapper round remoting.
    • Challenge: 1) 2 diff implementations, code isn’t in clean state. There is essentially the duplicate logic in the standard remoting framework as well as in Swarm, so 2) demonstrate Jitter (adding a randomized delay w/ limited boundary) have the desire effect on a busy controller
    • Tenacity python library contains good examples of retries (Tenacity — Tenacity documentation)
    • The testing will be the hard part here
  • GitLab Plugin Modernization [Mark Waite/Basil Crow]

    • GitLab plugin is outdated in many of the things that it does, and much of its implementation. Kris Stern has recently adopted the plugin
    • There are specific things that need to be improved in that implementation. It’s important that we have a strong integration with Github just like we have a strong integration with Github and Bitbucket. SCM providers mattered deeply to Jenkins users. So we want the GitLab plugin to be very strong.
    • Bringing more standard pattern
    • There’s a lot to be done to modernize this thing.
    • Remove dependency to RESTeasy => GitLab4j (?) which is more standard
    • This will be an interesting, useful project, but substantial work is expected to be involved.