Project goal: Using a modern and secure method to send Jenkins email notifications via Outlook SMTP with OAuth authentication by adding OAuth support (with client credentials flow) to email-ext.
Skills to study/improve: OAuth authentication, Jenkins plugin development, Email protocols (SMTP)
Jenkins can send email notifications using the email-ext plugin. However, many email providers, including Outlook, are moving away from traditional username/password authentication methods in favor of more secure OAuth-based authentication. This project aims to enhance the email-ext plugin by adding support for OAuth authentication with Outlook SMTP, specifically using the client credentials flow.
Implement OAuth authentication support in the email-ext plugin for Outlook SMTP.
Ensure secure storage and handling of OAuth tokens within Jenkins.
Provide configuration options in the Jenkins UI for setting up OAuth with Outlook SMTP.
Test the implementation thoroughly to ensure reliable email delivery using OAuth authentication.
Document the new feature, including setup instructions and usage guidelines.
OAuth authentication
Jenkins plugin development
Email protocols (SMTP)
Secure token management
A modified version of the email-ext plugin that supports OAuth authentication with Outlook SMTP.
Comprehensive documentation detailing the setup and configuration process for using OAuth with Outlook SMTP in Jenkins.
Test cases and results demonstrating the reliability and security of the new authentication method.
Contribution of the new feature to the official email-ext plugin repository, subject to review and approval by the Jenkins community.
Engagement with the Jenkins community to gather feedback and iterate on the implementation as needed.
Details to be clarified interactively, together with the mentors, during the Contributor Application drafting phase.