-
Notifications
You must be signed in to change notification settings - Fork 288
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
Complete pack-interact workflow #1278
Complete pack-interact workflow #1278
Conversation
50e1efc
to
229092a
Compare
229092a
to
8d961cf
Compare
Codecov Report
@@ Coverage Diff @@
## main #1278 +/- ##
==========================================
+ Coverage 80.65% 80.86% +0.22%
==========================================
Files 143 144 +1
Lines 8998 9152 +154
==========================================
+ Hits 7256 7400 +144
- Misses 1275 1283 +8
- Partials 467 469 +2
Flags with carried forward coverage won't be shown. Click here to find out more. |
8d961cf
to
5704c31
Compare
5704c31
to
b65159c
Compare
b65159c
to
cfeb65a
Compare
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.
Hey @aemengo, this looks insanely cool! Had a couple of questions:
- When starting the build, the initial steps show up in the terminal rather than the dashboard. Is this expected in certain cases? The mockup in the RFC opened up the dashboard immediately, hence my question. (I'd built the image with a Dockerfile before, so there's no pulling all the layers in the attached video)
- I didn't get the detect phase in my dashboard. The 1st video is building an already existing image (though without changes to source code), and the 2nd is building a new image (same name as earlier, but I'd deleted the image before building).
- In which cases will the plan be shown? I didn't get anything in either case.
- It might be helpful to add a "Press control + c to exit dashboard" message after the build succeeds/fails, since this is meant to be beginner friendly, and also because some folks like me might not realize that the way to exit the dashboard is the same as stopping a running command.
Screen.Recording.2021-09-29.at.2.19.14.PM.mov
Screen.Recording.2021-09-29.at.2.28.58.PM.mov
Yes, it's expected. Doing the mockup, exactly, was too hard 😕. For now I'm happy to compromise with how it is now.
That was also intended. I thought it looked better that way because the
This is definitely not intended. It's always supposed to show. Could be a bug.
I think this is a great idea 🙌🏾
Just you wait. It's gonna be even cooler! 😁 |
Ah, now that I think about it the mockup would be before adding the feature itself.
|
cfeb65a
to
836d17a
Compare
@importhuman Thanks for the providing the output, It was definitely a bug. I wasn't expecting the output to look like that. |
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.
In terms of code and experience, it's fabulous – thank you so much @aemengo!
Four small UX nits, but they can definitely be added in a future PR:
- I thought that I would be able to do something, while in the interactive mode, by selecting ENTER, or would be able to go into a separate pane, but it seems like I wasn't able to. Is the intention, ultimately, that there would be actions given?
- As a result of not being able to change windows, once Build logs scrolled past, I was unable to see them by scrolling up in my terminal, though maybe that's my iterm settings
- I think having a clear commands window, at the least saying Ctrl+c to close the interactive window, would be great
- It wasn't initially intuitive that when I exited out of the interactive window, that the build was still continuing behind the scene. That's ok, but I do think signaling that to the user (maybe by printing a message out in the logger when they close the interactive window, that the build is still happening and they can exit out of it by pressing Ctrl+c), would make it much clearer for the users.
What do you think of that?
Regardless, this is really great work, and I'm happy to merge it in, once the merge conflicts are resolved
@dfreilich Thanks for reviewing this PR. I really appreciate the time and effort. Hopefully the merge conflicts should be all resolved now. 👍🏾
Yes, this is the intention. I have a follow-up branch to this PR that will introduce a "dive" panel but delineated by buildpack. Here's an example:
This will also be fixed in the follow-up branch mentioned above.
I share the sentiment, but I simply haven't come up with the UX yet. It will definitely come up in a subsequent PR though.
That's something I didn't think of.. Would definitely like to address this is in a subsequent PR. |
Signed-off-by: Anthony Emengo <aemengo@vmware.com>
836d17a
to
d6a61b8
Compare
Summary
Add remaining functionality for pack-interact workflow
This PR kicks continues the following user workflow:
When a user runs a pack build like so:
pack build <image-name> --interactive
Then the user will view the build process through a terminal UI screen
First the
Detecting...
page will showThen the build "dashboard" page will show
Documentation
Related
Resolves:
#1203
#1204
#1205
#1206