Follow up "Open Web Terminal from attached CI runner in Web IDE"
This a follow up issue for #5426 (closed)
These are some things that we should implement to improve/enhance the terminal from the Web IDE:
pipeline_ci_sources_only feature flag in
app/models/project.rb] (gitlab-ce!23926 (merged))
- Remove restriction of 1 terminal per user
- Somehow retrieve from the runner if it can run terminals. If not, we'll show an error in the terminal tab.
- When the build starts running, but we cannot connect to it, we should stop the build.
- Sometimes an email is received warning that the pipeline running the terminal failed. That has to be removed.
- Sometimes, when the pod had several containers attached, the web IDE tries to connect to the terminal but the container is still not ready and the websocket connection fails. We need to retry the connection.
- When the user commits something and the terminal has already run (it's showing the retry button), if the user retries the terminal it will use the previous commit, not the last one.
- If the terminal is running and the user commits something, should we close the terminal? should we show any kind of message or badge showing that the terminal is running using an old commit?
- It may happen that the pipeline gets stuck in the
pendingstate. If the user tries to run the terminal it will fail. In this case, the user would have to go to the pipeline's section and manually delete it.
- Instead of showing a generic error when there is already a terminal pipeline running, we should show the actual error because it's more descriptive.