Skip to content

Add SIP for packaging middleware components - #3664

Open
michelleN wants to merge 1 commit into
spinframework:mainfrom
michelleN:middlewaretype
Open

Add SIP for packaging middleware components#3664
michelleN wants to merge 1 commit into
spinframework:mainfrom
michelleN:middlewaretype

Conversation

@michelleN

Copy link
Copy Markdown
Collaborator

No description provided.

Signed-off-by: Michelle Dhanani <mdhanani@akamai.com>

@itowlson itowlson left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I'm not sure what the status of this is - you didn't ask for review so I apologise if I'm being premature, but I just left a couple of notes as I noticed things. (If you want a Paddington Bear Hard Stare review then of course I'm happy to read through it in more detail.)

currently be relying on trigger information to efficiently store runnable components
in an application. An explicit `type` makes intent unambiguous and lets validation
stay strict for standard Spin apps.
* **A separate manifest kind / file.** Introducing a wholly separate manifest

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I think this bears consideration, because one of our goals is to support modularising spin.toml, and @tschneidereit's proposal for this involved component manifests that - although initially shipped as "modules in a spin.toml" - were kind of conceived of as potentially standalone, packageable, distributable components. (The vision is not yet quite in focus for me, so I may be misrepresenting it, but that was my sense from reviewing the SIP and talking to Till about it.) And a middleware component is such a distributable component, rather than an application. It's worth checking out the proposal at #3073: what you have here might be another route to what Till is trying for.

* **A separate manifest kind / file.** Introducing a wholly separate manifest
schema for reusable components would fragment tooling. Reusing the existing v2
manifest with one additive field keeps `spin build`, `spin registry push`, and
the component-dependency system working with minimal change.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Note that middleware in its current form can't have dependencies.

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