[GSoC 2026 PROPOSAL] Mohammed Faheem - Jenkins email notifications using Outlook SMTP with OAuth

Hey everyone!

My name is Mohammed Faheem and I’m a Computer Science Student in VIT, India. My main interests are in software engineering and backend systems, and I particularly enjoy building and working with developer tools such as CLI utilities.

I’ve picked Jenkins because I’ve had experience working with CI/CD tools before, using Github actions to automate python releases and jenkins feels like a natural step up. Its plugin architecture and extensibility make it extremely easy to work with!

The main project that got my attention was Jenkins email notifications using Outlook SMTP with OAuth. It seems like a pretty important feature to have especially since Oauth is starting to become the standard for authenthication. With Microsoft deprecating basic authentication, I think it is a important addition to the plugin. From what I’ve seen in the community, there is already demand for this functionality, as users currently have to deal with workarounds to make Outlook SMTP work with Jenkins.
I’m also interested in learning more about OAuth flows and authentication systems, and contributing to Jenkins seems like a great way to deepen my understanding while making a meaningful contribution to the ecosystem.

I’ve got some previous experience with open source, however it is relatively limited,
rich → tool that provides beautiful text formatting in terminals
https://github.com/Textualize/rich/pull/3918
pandas
https://github.com/pandas-dev/pandas/pull/63013

I’ve already started exploring and understanding the email-ext plugin and have gained a great understanding of how jenkins plugin development works and the plugin extension model. I’ve also been looking into existing oauth plugins and the feasiblity of integrating them with email-ext.

I was exploring the entra-oauth plugin and came across a potential enhancement/idea, if anybody could give some feedback that would be great :slightly_smiling_face:

I’d also like to attach my github here since discourse limits links for new users
https://github.com/Faheem12005

Hey @krisstern @slide_o_mix, sorry for the ping.
It’s been a while since I submitted my draft proposal, and I’d really appreciate any feedback when you have time.

While working on the email-ext plugin, I opened an issue (Wrong SMTP port used for additional accounts when SSL or TLS is enabled · Issue #1484 · jenkinsci/email-ext-plugin · GitHub) and had a PR open with a fix for it. Another PR addressing the issue was merged, which resolves the bug but doesn’t include regression tests. I’ve opened a follow-up PR that adds tests for this behavior: Tests: Add regression tests for SMTP port selection with additional accounts by Faheem12005 · Pull Request #1485 · jenkinsci/email-ext-plugin · GitHub. I’d appreciate it if you could take a look when convenient.

I also opened a discussion/issue on the entra-oauth plugin regarding a potential enhancement: Behavior of OAuth2Credentials.getAccessToken() when called with a different OAuth2ScopeRequirement · Issue #7 · jenkinsci/entra-oauth-plugin · GitHub. I’d be interested to hear some feedback around it.

Thanks!

This idea sounds great. I’ve tried to set up OAuth for Teams access, but I failed. So, maybe you could keep MS Teams access in mind. It would be helpful to post Build-Stats in (group) chats.

Hey, thanks for the feedback. just for clarification could you elaborate on how you’re currently trying to do this? Is there an existing plugin that you are using?
Also, is the main blocker related to setting up or fetching OAuth credentials, or is it more that there isn’t sufficient support for Teams integrations in the Jenkins plugin ecosystem yet?