-
Notifications
You must be signed in to change notification settings - Fork 905
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Report breaking changes in CRD schemas for Pull Requests #2863
Comments
Hello, @muvaf I learned about this issue through the lfx mentorship programme and find it fascinating, though I'm having trouble understanding a few terminologies in the description (I'm new to this project, so...) Would you mind sharing some additional resources that can help me clarify my concepts on what providers are, what changes are considered as breaking changes, the tools, and the workflow? |
Hi @AvineshTripathi ! Thank you for your interest. I can definitely give some pointers but please do not start any design/work for this issue before being accepted for the project through LFX Mentorship program. This issue is reserved for that program and we would like to give a fair chance to everyone applying 🙂 Some concept overviews:
|
Hey @muvaf I have applied for the LFX mentorship and have submitted the cover letter and resume, I just wanted to confirm if you have recieved properly as in my task board I see 2 resume and 2 cover letter task. Also thank you for the pointers, after taking an overview I am really excited to learn all these concepts and use it to build the tool |
@AvineshTripathi I see two cover letters and two resumes submitted but they seem to be just duplicates. So, you're all fine 🙂 For queries related to the program specifically, like this one, you can contact the folks at LFX as they'd be more helpful knowledgeable about the program than me 🙂 |
Hello @muvaf! I'm interested in contributing to this Project. It matches my tech stack. I'm also, going through the resources you've suggested to Avinesh. I'll be submitting the prerequisite tasks on the LFX site by tomorrow. Thanks :) |
Hey @muvaf, I'm interested in working on this LFX project. I would love it if you could help me resolve a few doubts:
Are you talking about CRD generators that reflect changes made to golang code for YAML structs? After reading the issue I think what we are aiming for is a GitHub bot that would act like a YAML parser and perhaps apply those manifests using automation with kubectl and report breaking changes? Is there a proposal doc/design doc written for this feature? Even relevant link discussions on Slack/Community meetings would help. Thanks. |
The "reporting breaking changes" part is very interesting, I'm trying to figure out on what basis can we conclude that a certain change in CRD would mean a breaking change. 😊 Very interesting project overall. |
Crossplane does not currently have enough maintainers to address every issue and pull request. This issue has been automatically marked as |
/fresh crossplane/crossplane-tools#45 to check breaking changes has been merged but we'll need follow-up PRs to integrate it with providers. |
Crossplane does not currently have enough maintainers to address every issue and pull request. This issue has been automatically marked as |
What problem are you facing?
As Crossplane ecosystem expands, it's not unusual anymore to have 100s of
CustomResourceDefinition
s in a provider. A big part of this is thanks to code generation tooling we've been building. However, the changes we make with those tools may result in thousands of lines of changes and it's hard to tell whether there is a breaking change in givenCustomResourceDefinition
in those PRs. Today, we're checking manually to see if there is a breaking change and mark the PR as such so that the notice ends up in the release notes.How could Crossplane help solve your problem?
We can have a GH Action that processes diff in
package/crds
folder and report breaking changes in the OpenAPI v3 Schemas of CRDs. It'd comment on the PR and automatically label it withbreaking-change
. This tool would be useful for the whole Kubernetes community that works to extend Kubernetes withCustomResourceDefinition
s.The text was updated successfully, but these errors were encountered: