-
Notifications
You must be signed in to change notification settings - Fork 589
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
Interactive debugger #4463
Comments
+1 for this feature. In my experience this would be extrem helpful to debug problems "beyond" the SDKs. I found myself often in the situation when I wish I have the option to inspect the file system after a new directory mount or command execution. |
From user in Discord:
|
From discord:
|
I think a good starting point would be to implement the |
This would also be useful in a non-debugging step, where I may want to create ephemeral, dagger powered environments. In other words, the end of a pipeline can be an interactive session, or maybe an intermediate stage where the user has to do something, and when they are done, the pipeline continues. |
From Discord: |
This would be a great feature for some use cases we deal with. Specifically we have builds that we do seldomly that take hours each time. If these fail in a container the current best that we can do is experience the failure, start a new interactive container instance on the previous image, and run the command again and wait for another several hours until it fails again so we can debug interactively. |
Another separate cool use case is if you could look at diffs between images interactively or iteratively/interactively walk the image history to consider all versions of a file in all the images produced by a pipeline for debugging. |
Coming from a Concourse background, where |
Just came to open an issue for a Yes, please! |
@rawkode have you tried |
Yes, the with breakpoint idea came to me after having to continually edit functions to return a container and commenting out code to debug. withBreakpoint() could be a function that is a noop most of the time, except when we enable them with Dagger call. It would simplify getting into a terminal without juggling our code. |
Oh, wait. Are you saying I can add .terminal to my code and it works? No more commenting 😮 |
yes :) @aluzzardi was also tired of having to do what you described, and took matters in his own hands 💪 |
@rawkode bonus you can also do |
Y'all are too good to us. Love it! |
Note: this is implemented as of Dagger 0.12
It would be amazing to have a way to add "breakpoints" to the DAG, and interactively inspect the state at the given point (via an interactive shell for example).
This has been requested and proposed many times, and we even saw a proof-of-concept by @aluzzardi :) This issue is for tracking and lobbying purposes 😄
The text was updated successfully, but these errors were encountered: