Cloud Native Buildpacks 2020 Roadmap

Joe Kutner
Buildpacks
Published in
3 min readJan 21, 2020

“It matters not what someone is born, but what they grow to be.” — Dumbledore

Welcome to another year with Cloud Native Buildpacks! Earlier this month, the core team sat down to discuss our plans, priorities and goals for 2020. We received lots of user feedback in 2019 that we want to address while continuing regular maintenance, but we also have a lot of new features we want to implement. In order to help prioritize this work, we’ve established a north star for this year’s roadmap.

The theme of the 2020 roadmap is: Coming of Age

Our roadmap will emphasize features and fixes that bring Cloud Native Buildpacks to the next chapter in its journey. Last year, our goal was to get the project’s first set of production users — the early adopters. This year, we’re targeting a 1.0 release, signaling that the project is mature enough for anyone to use it in production. Continue reading to learn how we’ll do it.

Maturation

We shipped a lot of new things last year, but now it’s time to make sure we’re delivering them to our users the best way we can. We want to establish a well defined Release Cadence and improve our end-user documentation.

We also want to make sure that the tools we’ve shipped measure up to our quality standards, which is why we’re including Reproducibility, Content Signing, and Docker history metadata on the roadmap.

Above all, we want to finish some of the things we started in 2019; in particular features that are in the final phases of being defined, or have been specified but not yet implemented. This includes Service Bindings, Distribution Specification, OS Packages, and a Project Descriptor.

Beyond Pack

We’re flattered by how many people have tried Pack today. They’ve run buildpacks on their local workstations to create OCI images they can run with `docker run` and Kubernetes. But using that process as part of a deployment pipeline where source code is automatically transformed into a Docker image still requires a bit of a mental leap. We want to help bridge that gap for our community.

The CNB project does maintain a Tekton Template that can be used as an example, but not everyone is running Tekton. It’s also difficult to translate that pattern to other CI/CD systems. We need to offer more guidance in this area.

One of the goals of our 2020 roadmap is to go beyond Pack. We want to begin supporting templates and tools that will help our community use buildpacks in CI/CD pipelines of all kinds. In the early phases we’re targeting Jenkins and CircleCI, but we want to work with you to support your platform of choice.

We also want to make it easier for buildpack authors to create and publish their own buildpacks, and for buildpack users to find them. We’re working on a proposal for a Buildpack Registry that would allow the community to share and search for buildpacks no matter what platform they use.

Path to Production

The number one question at KubeCon was about when buildpacks will be ready for use in production. It’s not a simple answer though — it depends on how you want to use them, what features are important to you, and what “production ready” means to you.

Buildpacks are used in a number of production platforms today including kpack, Salesforce Evergreen, and Google Cloud Run. But even those examples don’t answer the question for everyone.

One of our goals for the year 2020 is to release a 1.0 version of Cloud Native Buildpacks. A prerequisite for this release is a level of stability in the API and interfaces that ensure breaking changes are uncommon in the future. We also need to implement some features that we consider table stakes in the cloud native ecosystem.

Beyond the bits and commits, we’re also getting ready to apply for Incubation status in the CNCF. All CNCF projects have a maturity level of sandbox, incubating, or graduated; which corresponds to the Innovators, Early Adopters, and Early Majority tiers of the Crossing the Chasm framework.

In 2019 our first set of production users, the early adopters, signaled that buildpacks are ready for more people to try. Now we’re looking forward to hearing from all of our new users as the project comes of age.

To learn more about the 2020 Cloud Native Buildpacks roadmap, see our Community Github repository.

--

--

Joe Kutner
Buildpacks

I’m an architect at Salesforce.com who writes about software and related topics. I’m a co-founder of buildpacks.io and the author of The Healthy Programmer.