[go: up one dir, main page]

regression: debug terminal stops to work in 17.1 due to `invalid websocket scheme`

Summary

Beginning with 17.1, the debug terminal (https://docs.gitlab.com/ee/ci/interactive_web_terminal/) does not work anymore. E.g. a

GET /v.../-/jobs/61265/terminal.ws HTTP/1.1
Host: ...
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:127.0) Gecko/20100101 Firefox/127.0
Accept: */*
Accept-Language: de,de-DE;q=0.8,en;q=0.5,en-US;q=0.3
Accept-Encoding: gzip, deflate, br, zstd
Sec-WebSocket-Version: 13
Origin: ...
Sec-WebSocket-Protocol: terminal.gitlab.com
Sec-WebSocket-Extensions: permessage-deflate
Sec-WebSocket-Key: ...
DNT: 1
Sec-GPC: 1
Connection: keep-alive, Upgrade
Cookie: ...
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: websocket
Sec-Fetch-Site: same-origin
Pragma: no-cache
Cache-Control: no-cache
Upgrade: websocket

request gets a

HTTP/1.1 500 Internal Server Error

response. Logs on server show

level=error correlation_id=01J0XG36S880D9JQG7GVYZFSQB error="invalid websocket scheme: \"\"" method=GET uri=/v.../-/jobs/61265/terminal.ws

Webpage itself appears malformed (network log shows a request for https://gitlab..../assets/xterm/src/xterm.css which does not exist).

grafik

Steps to reproduce

  1. Try to open a "debug" terminal

Additional information

git bisect shows that break happens at e9306c95

commit e9306c95a127f4f672a9e36adac17a522c6615e8 (HEAD)
Author: Archish Thakkar <archishthakkar@gmail.com>
Date:   Wed May 15 03:39:41 2024 +0000

    Lint fixes for api channel packages

Reverting this commit makes the connection work again.

Edited by Enrico Scholz