Infrastructure tools company Chef has publicly launched a Software as a Service (SaaS), called Habitat Builder, that enables developers to package applications, yet hold off on making decisions about export format or runtime until deployment time. It is built on the company’s open source Habitat application packaging tool, unveiled last year.
“We want to provide a faster on-ramp for teams looking to embrace cloud-native architectures,” said Marc Holmes, Chef vice president of marketing.
“If you take the view that cloud-native architectures consist of these five layers: code, runtime, access to data services, orchestration and cloud infrastructure — what we’ve found is that people are choosing multiple aspects of each of these elements in any given environment. So we don’t want to have an opinionated toolchain that only serves one of those things,” Holmes said. “We wanted to say, ‘Here are some vertical services to more simply and more consistently approach cloud-native architecture.’”
Chef previewed the technology earlier this year at ChefConf in Austin, Texas, billing it as the easiest way to containerize applications for production use.
“While the application portability benefits of containers are widely recognized, lack of consistency in packaging and orchestration across the application lifecycle has, in many cases, limited the success of their deployment at scale, even when using cloud-native architectures,” said Stephen Elliot, program vice president at IDC.
Habitat addresses a set of life cycle problems that cannot be solved by orchestration tools alone, providing for a degree of deployment and updating automation that may not require a radical reconfiguration of the infrastructure, The New Stack’s Joab Jackson said in an article covering the preview.
Habitat is designed to work with Chef’s namesake deployment automation tool and Inspec, the company’s infrastructure testing framework announced late last year.
Habitat Builder provides scaffolding for popular languages such as Node.js, Java and Ruby On Rails, automatically detecting the language tools being used and building an artifact for the application.
“All the technology has been out there, but it hasn’t been integrated into the toolchain,” said Holmes said.
Habitat Builder provides three services for cloud-native operations:
- Build Service provides consistent packaging and build capabilities to produce immutable build artifacts. The artifacts spell out the build- and run-time-dependent libraries, exposed services/ports, and other configuration.
- Artifact Store provides public and private repos for packaged artifacts to be deployed on architectures including TAR, Docker, CloudFoundry and Kubernetes.
- Application Supervision enables consistent management capabilities, such as runtime lifecycle, configuration updates, clustering topologies and update strategies, regardless of the target environment.
Habitat Builder provides native integration with Github for source code and with Docker Hub for container format export with more integrations to follow. It also includes a native operator for the Kubernetes container orchestration engine that enables simple export of Habitat packages into a cluster, along with a container exporter for Cloud Foundry that injects Cloud Foundry defaults into Habitat-run services, according to the company.
“Specifically on the SaaS service, it provides GitHub authentication, so you start out, then it connects to repos… so on the assumption you have some source code and a Habitat file in that repo, Habitat will begin building that automatically,” Holmes said.
There are also features enabling dependency-based rebuilds. If your application package takes a dependency on an upstream package, for instance, open SSL, and that changes — it gets patched for a vulnerability, for instance — it automatically rebuilds your app. That’s a huge benefit from a security and compliance perspective, Holmes said.
There also are public and private origins. This is in preview. You can work with public source code, but it also enables private repos to be built.
Features for continuous delivery include release channels, which is basically a tagging mechanism. You can take a view of functions across packages and channels all at once.
On the release side, Habitat has had the capability to export to anywhere. In the SaaS service, a direct Docker Hub integration has been added. If I want to push out a Docker container in a simple way, it will build automatically in Docker Hub.
A new scaffold to Java has been added, as well as Gradle scaffolding support. And an increased number of packages are available for applications and libraries to help developers package more quickly and more successfully.
Listen to all TNS podcasts on Simplecast.
Chef is a sponsor of The New Stack.
Feature image via Pixabay.