Why Loft Labs Is Donating DevSpace to CNCF
We’re happy to announce that Loft Labs is donating DevSpace to the Cloud Native Computing Foundation (CNCF). It’s not part of CNCF’s Sandbox quite yet because the official acceptance needs to be reviewed and agreed upon by the CNCF technical oversight committee (TOC) when it meets on Dec. 13. In this post, we will explore some of our motivations for this contribution and what we hope DevSpace will bring to the CNCF ecosystem moving forward.
Why We Are Donating DevSpace to CNCF
Currently, there are hundreds of organizations that use DevSpace to build their cloud native applications. Because so many companies rely on it day to day, we feel that it should not be solely in the hands of a small startup. We hope that by contributing DevSpace to CNCF, we can provide a neutral home for the project to receive external contributions from the cloud native community.
We want to be the main contributor going forward and will heavily invest in the technology, but the governance should be safely transitioned to Linux Foundation and the community now that DevSpace is mature enough for this step.
Why DevSpace Matters to CNCF
The Cloud Native Computing Foundation charter states that the foundation’s mission is to “make cloud native computing ubiquitous.” CNCF’s role in this mission is the overall stewardship of projects, fostering their growth and the promotion of the underlying technologies.
Currently, there are over 50 developer tools available for Kubernetes, but only one of them, Telepresence, is in the CNCF Sandbox. By contributing DevSpace to CNCF, we hope to contribute to CNCF’s goal of making cloud native ubiquitous by adding new options for Kubernetes developer tooling to the ecosystem, while enabling the DevSpace project to grow in the Sandbox via CNCF’s stewardship and promotion.
How DevSpace Empowers Developers
DevSpace is an open source developer tool that makes local Kubernetes development faster and less painful.
All you need is a local Kubernetes cluster and a
devspace.yaml, which describes your local setup. DevSpace will take care of the rest, managing all the Kubernetes resources and dependencies your app relies on, so you can focus on what matters the most: building awesome products.
With the hot reload feature, code changes will be mounted into your running container, so there’s no need to wait for rebuild and redeploy. Thanks to DevSpace’s dependency structure, multiple teams can work on different services on the same cluster at the same time and receive instant feedback if they introduce a contract-breaking change.
Best of all: You can share best practices and hacks between
devspace.yamls and build your own DevSpace library.
Think of DevSpace like Docker Compose but for Kubernetes, no matter if it’s a local Minikube cluster or a remote Amazon Elastic Kubernetes Service (EKS) cluster. DevSpace works with any cluster, any programming language and any integrated development environment (IDE).
DevSpace provides a more efficient developer experience through features like hot reloading, logging and centralized deployment configurations. Through hot reloading, DevSpace takes care of rebuilding and redeploying your application as soon as you save the application file. By leveraging
devspace log, developers can easily print the logs of a pod while attaching to it.
While other solutions rely on complex network proxying to mimic the lightning-fast in-cluster development that DevSpace provides, DevSpace focuses on providing a simpler, lightweight execution model through only a client-side binary. Since code changes are hot-reloaded into running containers, this allows developers to use the cloud to run all the workflows and see changes to their applications immediately reflected in the running containers without the need for image building or recreating and rescheduling containers. This relieves computing power from their local workstations and better utilizes the cloud for what it is built for — running workloads.
DevSpace Use Cases
DevSpace enables development teams to work with Kubernetes irrespective of their Kubernetes knowledge. Below are some use cases:
- In-cluster development
- Standardizing Kubernetes workflows
- CI pipelines or deploying to staging environments
Hopefully you now have a deeper understanding of our reasons for contributing DevSpace to CNCF. We’re excited for DevSpace to take this next step and to see what the CNCF ecosystem can do for the development of the project.