Overview
Learn about Recipes and how they help you create standardized workspaces in DevZero.
Overview of Recipes
What is a Recipe?
A Recipe is a YAML-based configuration file that defines the resources, infrastructure, and setup required for a DevZero workspace. It specifies the base OS, installed software, dependencies, and configurations, ensuring reproducible environments for development.
Similar to a Dockerfile for containers, a Recipe defines how to provision and configure a workspace.
Why Use Recipes?
Recipes standardize workspace creation, preventing configuration drift and ensuring consistency across teams. Key benefits:
- Consistent Environments β Eliminates "it works on my machine" issues.
- Reproducibility β Simplifies onboarding and debugging.
- Automation & Efficiency β Reduces setup time by automating dependencies and tool setup.
How Recipes Work
-
Define the Recipe (YAML) β Specify:
- OS and base image
- Software dependencies
- Commands for build, launch, and runtime
-
Save & Share β Store in DevZeroβs Recipe Library for team-wide access.
-
Build & Launch:
- Build-time: Configures base image and installs dependencies.
- Launch-time: Starts services and applies configurations.
- Run-time: Defines user environment for coding.
-
Use the Workspace β Developers get a pre-configured environment, ready for coding and testing.
Example: Recipes as a Build Process
A Recipe is like a build script for development environments:
- Base Image β Defines the OS and system-level dependencies.
- Installations β Installs required tools, libraries, and services.
- Execution Steps β Runs configuration scripts and starts essential services.
This structured approach ensures that every workspace is fully set up from the start.
Next Steps
Start writing your first Recipe: Creating a Recipe β