Interactive Web Terminals

原文:https://docs.gitlab.com/ee/ci/interactive_web_terminal/

Interactive Web Terminals

在 GitLab 11.3 中引入 .

交互式 Web 终端使用户可以访问 GitLab 中的终端,以为其 CI 管道运行一次性命令. 由于这使用户可以通过外壳访问GitLab Runner部署环境,因此采取了一些安全预防措施来保护用户.

注意: GitLab.com 上的共享跑步者不提供交互式 Web 终端. 请遵循此问题以获取增加支持方面的进展. 对于在 GitLab.com 上托管的组和项目,使用自己的组或项目运行器时可以使用交互式 Web 终端.

Configuration

为了使交互式 Web 终端正常工作,需要配置两件事:

注意: gitlab-runner Helm chart尚不支持交互式 Web 终端,但已计划支持.

Debugging a running job

注意:并非所有执行程序都受支持 .注意:构建脚本完成后, docker executor 不会继续运行. 届时,终端将自动断开连接,并且不会等待用户完成操作. 请关注此问题,以获取有关改进此行为的更新.

有时,当一项作业正在运行时,事情并没有按您期望的那样进行,如果可以有一个外壳来帮助调试,这将很有帮助. 运行作业时,在右侧面板上可以看到一个debug按钮,它将打开当前作业的终端.

Example of job running with terminal
available

单击后,新选项卡将打开到终端页面,您可以在其中访问终端并键入命令,如普通的 shell.

terminal of the job

如果您打开终端并且作业已完成其任务,则终端将在[session_server].session_timeout配置的持续时间内阻止作业完成,直到关闭终端窗口.

finished job with terminal open

Interactive Web Terminals for the Web IDE

阅读 Web IDE 文档,以了解如何通过 Web IDE运行交互式终端 .