Replies: 3 comments 2 replies
-
@EricWittmann @famartinrh what do you think? Is this in line with your conception of what Apicurio Registry does? |
Beta Was this translation helpful? Give feedback.
-
Just getting to read this now - and it's very interesting. I agree with the consensus that an external service would be a nice way to support custom checking of content. I can imagine doing that for both Validity and Compatibility, although the latter is complicated because it requires previous version(s) of the content and the new content. In any case, I would prefer to see this done incrementally, rather than go straight for a GitHub style asynchronous approach. What I mean is that I don't think we want to be implementing "content staging" functionality, at least not yet. That starts to feel a lot like BPM, getting into human approvals and other business process type checks. That could be a slippery slope, so I would prefer it if we started out small. Perhaps the right thing to do is expand the Thoughts? |
Beta Was this translation helpful? Give feedback.
-
Also sorry for the delay - I was on PTO for two weeks and am in the process of digging through my backlog of emails. :) |
Beta Was this translation helpful? Give feedback.
-
Hello! Just started looking into this project, like what I see!
I was a bit confused (as was #1696) at first about the validation rules, and somewhat surprised to see that the rules are themselves implemented within the registry code. Many of these schema languages have lots of tools available for validation and compatibility checks already; in addition, every use case will have different rules they want to enforce (imagine "style guide" type rules) that won't make sense for other users.
Instead of needing to implement every compatibility/validation/style check within the Registry code, perhaps a more flexible pattern would be to define a callback interface through which rules could be run. I could see this taking the form of an HTTP request made by the Registry to another service which is expected to respond with a defined response format. Or perhaps a CLI command to run that would do the same.
Of course, the same thing can be achieved by having whatever client is uploading schemas run the validations itself; however, it would be preferable for the schema registry (source of truth for schema versions) to also be the source of truth for whether an incoming schema is valid, even if that decision is being delegated to another tool.
What do you think?
Beta Was this translation helpful? Give feedback.
All reactions