Skip to content

Conversation

@ferranbt
Copy link
Collaborator

@ferranbt ferranbt commented Dec 9, 2025

This PR consolidates the interfaces for recipes and components by having both operate directly on manifests rather than returning services/manifests. This simplifies the architecture and makes the system more composable.

Previously, recipes and components had different interfaces for modifying manifests:

  • Recipes: Accepted an ExContext and Artifacts, returned a complete Manifest
  • Components: Accepted a Service reference and ExContext, modified the service in-place

This distinction created unnecessary complexity since both are fundamentally doing the same thing: configuring and adding services to a manifest. The only real difference is that recipes are public CLI entry points while components are internal execution units - but this semantic difference doesn't justify different technical interfaces.

Copy link
Contributor

@canercidam canercidam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@ferranbt ferranbt merged commit de2eb70 into main Dec 10, 2025
6 checks passed
@ferranbt ferranbt deleted the ferranbt-recipe-no-manifest branch December 10, 2025 13:43
ferranbt added a commit that referenced this pull request Dec 10, 2025
This builds on top of #227. The main change is the new `BuilderHub2`
component.

This component uses the new interface introduced in #227 to describe in
a single component unit all the elements required to run the BuilderHub
(db, web + proxy).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants