-
Notifications
You must be signed in to change notification settings - Fork 5
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
feat(apps): Create application via apps deploy #272
Conversation
cmd/meroxa/root/apps/deploy.go
Outdated
} | ||
|
||
// Built was successful, we're ready to create the application |
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.
I think this should be first. I think the eventual sequence is going to be 1) make pipeline 2) make app 3) make all entities within the pipeline that also belong to the app. If there's a name conflict or any reason that we can't make the app, then I don't think we should have created app entities at that point. Did i misunderstand?
// Built was successful, we're ready to create the application | |
// Build was successful, we're ready to create the application |
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.
@janelletavares we'll only create the resources (app, pipeline, etc...) if uploading the image (build) was successful. I'm actually making some changes on this branch that are related to those steps as well. Trying to not increase much scope on this PR, but still deliver something that actually applies to the direction we want to take. I'll keep you posted.
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.
I agree with @janelletavares that the user experience could be improved by having the app name validation (which is almost immediate) fail before the source upload and function image build have finished completely (which would take some time)
I can imagine though that the creation of connectors could be postponed to a later time point than the function build. The same would apply to creating the function objects which depend on the function image build to finish beforehand
I don't want to block this PR from moving forward, just mentioning this already, in case there's interest on iterating on it in the future
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.
I agree with @janelletavares that the user experience could be improved by having the app name validation (which is almost immediate) fail before the source upload and function image build have finished completely (which would take some time)
We documented we'd be creating the app only if build was successful (we'll be doing a long polling and blocking the next steps until building is successful) so we don't need to worry about orphan apps and then let users do another re-deploy in an attempt to build again (we don't have app updates available).
I understand what you two are mentioning regarding the UX, and I'll give this another thought however what I'm trying to accomplish here is to leave the step that less likely will fail to the end. In other words, trying to build several times and leave different building steps hanging is completely fine, however having an application created (and not deleted) if something after failed not so much (we're creating turbine apps after all).
Happy to discuss different corner cases and possible scenarios (with its UX improvements).
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.
interesting about doing the steps most likely to fail first. thanks for the clarification.
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.
That sounds good and thank you for the outline!
010ea7a
to
f5a06bc
Compare
Co-authored-by: janelletavares <[email protected]>
Description of change
Fixes https://github.com/meroxa/turbine-project/issues/71
golang
before carrying on with other steps (consistent with the API language accepted languages)- [x] Addslist
anddescribe
as commands to executeType of change
How was this tested?
Demo
See slack