CI/CD Java
Jenkins 是一个用 Java 编写的开源 CI/CD 自动化工具。它提供数以百计的插件,为其带来了强大的拓展性和易用性。
Jenkins 会在其官方网站上发布每年 GSoC 的网页,里面包含申请所需要的所有信息,比如 2018 年的 Google Summer of Code。Jenkins 会在其中对申请的步骤提供详细的说明,例如 Google Summer of Code. Information for students。
在上面的网页中我们可以找到 project ideas 以及其它的一些 idea draft。我们也可以自己提议一个 idea,但我个人认为 Jenkins 会更倾向他们发布的 ideas。Jenkins 会在每个 idea 下面列出申请所需的技能。
Jenkins 主要使用的交流平台有 Gitter, IRC, Mailing list, Hangouts。其中日常的简单交流会使用 Gitter 或 IRC,平常的视频会议会使用 Hangouts,其它一些讨论或通知会在 Mailing list 上。
对项目发 pr 会是极大的加分,并且也可以让你了解基本的开发流程(强烈推荐)。Jenkins 有自己的 JIRA 平台,上面有所有 Jenkins 相关的 Issue,大家可以在其中找找符合自己能力的去解决。
我申请的是 2018 年的 Code Coverage API plugin。从我个人的角度来看,申请 Jenkins 的项目并不是特别难,只要你的 proposal 写的好点,能修几个 issue ,和你竞争的人不多的话,应该就没有什么问题。
至于申请的背景,只要你熟悉 Java 的基础,了解 Git 和 Maven 的使用,我觉得就能满足 Jenkins 的要求。
// TODO add more description