KubeCon + CloudNativeCon Europe 2021 – Virtual sponsored post by Lauri Apple, Staff Technical Program Manager; and Anna Jung, Open Source Engineer, VMware
As the “feature development” aspect of Kubernetes, the Enhancements process is arguably one of the most important engines driving the project’s continued evolution and growth. SIG Architecture maintains a subproject explicitly for the purpose of helping make sure that major development is documented, discoverable, and easy to track. Over the last few release cycles, the subproject has been working hard to make the process simpler and more automated. It’s part of our continuing efforts to make the contributor experience as excellent as possible for everyone. Please read on to learn about ways you can help us!

During the 1.21 release cycle, Kubernetes Special Interest Groups (SIGs) submitted 51 Kubernetes Enhancements Proposals (KEPs) for inclusion—an increase compared to the last few release cycles. KEPs are the primary artefacts of the Enhancements process. They’re design documents, inspired by the Python Enhancements Proposal and Rust RFCs, that enable SIGs to “propose, communicate, and coordinate” nontrivial changes, such as new features, deprecations, or policies with broad impact to the project. Helping to ship these KEPs in 1.21 were VMware’s Anna Jung, who served as Enhancements lead, and Release Team lead Nabarun Pal. Alongside SIG Release Co-Chair Stephen Augustus and SIG Release Program Manager Lauri Apple, Anna and Nabarun help drive the Enhancements subproject as process and tooling reviewers.
The Receipts process
Until recently, the Enhancements team has shepherded KEPs through the release cycle by relying on a process that requires several manual updates to spreadsheets and repetitive outreach to SIGs. This method required the team to clarify SIGs’ plans and expectations, and to look through GitHub issues in search of comments indicating recent development activity. This method has worked, but it has involved friction and toil.
Install BotKube Slack app to your Slack workspace Click the Add to Slack button provided to install BotKube Slack application to your workspace. Once you have authorized the application, you will be provided a BOT Access token. Kindly note down that token as it will be required while deploying BotKube backend to your Kubernetes cluster. Slack serves as the main communication platform for the Kubernetes community outside of the mailing lists. It’s important that conversations stays on topic in each channel, and that everyone abides by the Code of Conduct. There are over 100,000 members who should all expect to have a positive experience. Chat is searchable and public.
Enter the receipts process, a Git-based artefact and tooling that supports automated Enhancement collection, validation, and tracking processes for Kubernetes releases. Through this method, SIGs will now opt in to a release using a specified file format—the receipt—that contains metadata about the KEP being enrolled. After a SIG opts into the release, all tracking will occur via Git commits rather than via issue comments, PR references, and other non-auditable mechanisms. Nabarun is one of the key developers of the receipts tooling, which is expected to debut for use in 1.22.
Not only is the receipts process simpler than the manual process, it reduces the risk of a KEP not being tracked due to miscommunication. We believe it will encourage SIGs to update KEPs proactively and plan for release cycles, which offers the benefit of encouraging sustainable planning. It also facilitates better KEP implementation history updates and overall transparency.
Kubernetes Slack Channel
During the 1.21 release cycle, we began shifting toward the receipts process by introducing the opt-in process aspect. This required SIG leads and individual KEP contributors to proactively inform the Enhancements team of their plans by logging in the tracking spreadsheet all of the KEPs they planned for the 1.21 cycle, while gaining approval from both the sponsoring and participating SIG leads. Despite this change, we were able to achieve the highest number of KEPs submitted during a specific cycle in the project’s history—66 KEPs opted in by SIGs. The 15 KEPs that won’t make it this time around faced issues unrelated to the Enhancements process. The number of enhancements tracked for the release highlights good communication around the process change.
Requiring the Production Readiness Review
Install BotKube Slack app to your Slack workspace Click the Add to Slack button provided to install BotKube Slack application to your workspace. Once you have authorized the application, you will be provided a BOT Access token. Kindly note down that token as it will be required while deploying BotKube backend to your Kubernetes cluster. BotKube can be integrated with multiple messaging platforms like - Slack, Mattermost, Microsoft Teams to help you monitor your Kubernetes cluster (s), debug critical deployments and gives recommendations for standard practices by running checks on the Kubernetes resources. The #kubernetes-dev Slack channel is intended to be a channel where we can have general discussion about the upstream project, the Slack equivalent of this mailing list. Instead, it has largely become another #kubernetes-users or #kubernetes-novice with people popping in thinking the channel is for ANY 'kubernetes development' questions.
Introduced in 2020, the Production Readiness Review (PRR) is an approval process for KEPs aimed at ensuring that features for Kubernetes can be safely operated in production environments. During the 1.21 release cycle, PRRs became a requirement for KEPs.
Streamlining the entire Enhancements process
During the 1.21 release cycle, the Enhancements subproject received feedback that the KEPs process was getting too complex. In addition to diagramming the current process, subproject members discussed how to resolve some notorious pain points—suggesting a glossary to clarify ambiguous terminology and establishing a lighter review process for enhancements that are not release-impacting. This work is still in the early stages and will continue in 1.22.
Get involved!
Over the course of the past year, the Enhancements subproject has doubled in membership and increased engagement in its efforts. The group maintains a GitHub project board with items available for contributors to work on, and meets every two weeks to discuss process improvements. We also have a Slack channel (#enhancements), where we asynchronously plan and discuss activities. We’re always looking for new perspectives and feedback, so even if process change isn’t your specialty, you’re still likely to have valuable insights for us.
Kubernetes Slack Bot
If you’re a new contributor to Kubernetes or simply looking for a new way to help the project, consider acting as an Enhancements liaison. This is an unofficial “pilot” role for contributors who would like to act as point person for a specific SIG during one release cycle—coordinating and communicating with the Enhancements Team and the Release Communications Team. Onboarding for this role will be provided so that you can get started right away. We hope to hear from some of you soon!
Profile Download illustrator for mac torrent.
Anna Jung is an open source engineer at VMware, contributing to Kubernetes and other open source projects related to machine learning. Anna has been involved in the Kubernetes ecosystem for about two years as a member of the Release Team, the Enhancement subproject, and Sig Docs. She believes in the importance of giving back to the community and is passionate about increasing diversity in open source by making contributions easier for newcomers. When away from the keyboard, Anna is often at film festivals supporting independent filmmakers.
Kubernetes Slack
Lauri Apple is a staff technical program manager at VMware, where she drives the planning and execution of business-aligned upstream Kubernetes contributions and downstream Kubernetes core releases. Lauri also serves as program manager of Kubernetes’ SIG Release and is a co-owner of the Enhancements subproject. She lives in Berlin, Germany, and outside of work enjoys biking, vegan cooking, and listening to podcasts.
