VMware is excited to announce that Cloud Native Buildpacks (CNB) Community accepted kpack as their first subproject donation on July 6.
The Buildpacks Community is a vendor-neutral Github organization for integrations of the Cloud Native Computing Foundation (CNCF) Incubating project, Buildpacks, where CNB tooling, platforms, and integrations can live. This provides users with a trusted place to search for Buildpack integrations that are maintained by the community.
Integrations within this organization have the opportunity to contribute to the core Buildpacks governance by following the Project Graduation process outlined in the Component Contribution request for comments (RFC) document. Once kpack is mature enough, the project maintainers can request for the project to be merged into the core Buildpacks organization.
The kpack team is excited for this next chapter to be closer aligned with the CNB project and encourage more adoption in a vendor-neutral environment. They also see this as a way to make it easy for Buildpacks users to build on Kubernetes in a way that is supported by the CNB organization.
Kpack’s origin
The original developers wanted Pivotal Build Service (now VMware Build Service) to combine the CNB experience with the declarative model of Kubernetes, and extend the Kubernetes workflow in an idiomatic fashion. With this goal in mind, they leveraged custom resource definitions to extend the Kubernetes API.
Kpack today
Kpack is an open source Kubernetes Native Container Build Service and is noted to have the following features:
- Extends Kubernetes and utilizes unprivileged Kubernetes primitives to provide builds of Open Container Initiative (OCI) images as a platform implementation of CNBs.
- Provides a declarative builder resource that configures a CNB build configuration with the desired buildpack order and operating system stack.
- Gives a declarative image resource that builds an OCI image and schedules rebuilds on source changes and from builder buildpack and builder stack updates.
- Allows a build type to execute a single CNB OCI image build.
What’s next?
The donation of kpack will help ensure that the roadmaps of both kpack and CNBs are closely aligned. This will make it easier to coordinate efforts between the two communities and improve the overall user experience. The donation also gives the Buildpacks community of users and contributors an opportunity to add new features and capabilities to the project, which will help make kpack even more powerful and versatile.
Interested in learning more about kpack and how to contribute?
Here are some great resources to learn more, as well as how to become a contributor:
- README.md
- DEVELOPMENT.md
- CONTRIBUTING.md
- GOVERNANCE.md
- TGI Kubernetes episode 184: kpack
- Buildpacks.io/docs/tools/kpack
Not interested in becoming a contributor but want to join our community? Here are several other ways you can get involved:
- Join kpack’s Slack channel, #buildpacks-kpack, in the CNCF workspace.
- Find us on GitHub, and feel free to suggest how we can improve the project, docs, or share any other feedback.
- Attend our Working Group Meetings! Check out the agenda for full details on how to attend.
You can also read more information in the blog post on the Buildpacks website!