-
Notifications
You must be signed in to change notification settings - Fork 149
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
Adds support for external resources #701
Adds support for external resources #701
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems great! Just two minor comments.
thanks for the pr. think we need to still update roadmap.md and add a full sample in our examples.md for this please. one thing I'm not a big fan of is how much "resources" abstracts from the workflow definition itself. looking at a wf def that contains one ore more resources i get really confused as to what these resources contain and how i can reference these things. I think it would be better (yes more verbose but still) to add resources per type, so for example:
(change "inline" to whatever you want to call it). |
@tsurdilo I personally find that ugly, counterintuitive and not ubiquitous. Resources are external, and you shouldn't pay attention to them in most cases. Plus, doing like so, you are exploding one of the motivation of the PR, as discussed in the weekly, which is to be able to reference in one doc multiple concepts at once. Finally, it does need to kinduv look like a wf, because that's what this aims to achieve: provide all resources for workflows to run in a specified context The PR is the exact result of the many discussions we all had on the subject, please let's not yet again go on sidetracks because some fail to see its use. |
if in the future we add a new definitions array like functions, timeouts etc |
for the inline defs i showed you can point to same resources file in each def so could keep the single resource json that contains all. just this way it would be clear what that resource contains |
Users should be able to do whatever they want in that case. They can append new definitions, or just leave it like it was: there'd be nothing broken anyways. In case of specVersion mismatch though, there's a problem, but that applies to any reference anyways. This should be a runtime concern only. |
What you suggest is not clear at all IMHO and forces the users to uselessly copy the same external resource file amongst the multiple resources that might need it. This would make it painfull for everyone. Again, the PR is the exact result of what was discussed and approved, I don't see the need to go over it once again. As for your actual concern which is having the same concepts in two different places in the spec, I'd say that there is no duplicates: on one hand you have definitions of external resources (which, again, most users won't even pay attention to), and on the other hand you have the perfectly fine |
You have no control, spec-side, on what an external resource may or may not contain. At best, you have an idea at a certain point in time, thus the named refs, but that's about it. Why would use ask authors of workflows to duplicate the work that has already been declaratively done in the external resource? What's the gain, if any? If you want to know for sure what a resource contains, get and read it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@cdavernas
Thanks a lot
Thats what we agreed in the last meeting and you reflected it perfectly in this PR.
I do not think we need to repopen a discussion that was apparently closed @tsurdilo
This covers a gap that we had in the current spec with minimal changes
Additionally, this removed the difficulties associate with one of.
And it is easily extensible if a new resource is added
I dont think its ever too late to question any decisions with this project by anyone. Without questioning whats there now we would not need to make any more changes in that case, even for this pr, right ? :) This spec is what it is because we discussed things over and over and over again to make it the best we can and this should continue imo. We do not have a timeline set for 0.9 and there is no rush that i can see in order not to have time or opportunity to discuss this, especially if its project maintainers that would like an open discussion about their opinions..... |
@tsurdilo |
I'm not sure what you are trying to say but one thing is a discussion, another is reviewing a PR. Once you see the actual proposed impl in a pr and try to test it, questions can come up. I would like to keep the discussions here related to the PR itself, anything else feel free to bring up in weekly meets or offline. |
I agree that we need to keep discussing the issues as they appear in a PR that can change the perspective. Honestly, I don't see any changes that go against what we've discussed, and I think it's reasonable to raise questions. Having said that, I believe the discussed plan still holds. As proposed, the |
What I'm trying to say is that your proposal of splitting every property that can have a resource into two were already discussed in that meeting (now I have doubts we exactly discuss this)
|
Please add entry to roadmap and if possible an example. Thnks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let me know when to review again
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Co-authored-by: Elan Hasson <[email protected]>
Change request is still pending, even though AFAIK every single change request has been addressed
@ricardozanini Bump |
Not surprisingly: stale after sitting for about 2 years |
@cdavernas can you fix the schemas/example CI? So we can merge? |
Closed as part of #843 |
Many thanks for submitting your Pull Request ❤️!
Please specify parts of this PR update:
Discussion or Issue link:
#691
What this PR does / why we need it:
Adds support for external resources, and removes the ability to set an uri for
auth
,constants
,retries
,secrets
,functions
,events
, ...