bbennett-ks commented on PR #637: URL: https://github.com/apache/guacamole-server/pull/637#issuecomment-4383504121
> ... should the setting also be added to the Kubernetes protocol? I'm not sure if the Linux keycodes apply there the same way they do with Telnet and SSH? @necouchman @mike-jumper I've added `terminal-type` to `Kubernetes`. I've tested Byobu in a Kubernetes pod and it works fine. However, there is an issue ... Guacamole supports two mechanisms to attaching to a (running) container: 1. `attach`: Uses the Kubernetes `Attach` API to attach to the containers already-running main process/tty stream. This is used when the `Command (exec)` field is blank. With this mechanism, there is no way to "automatically" pass `TERM`. Though the user can do this manually. 2. `exec`: Uses the `Exec` API to start a new process withing the container. For example, `/bin/bash`. With this mechanism, we can pass `TERM`. **The core issue is #1: Unlike `ssh` and `Telnet`, we cannot pass TERM.** I still think we should do it, to support Byobu, tmux... for power users. I can see several ways to handle this, none really ideal. 1. For consistency (amongst Kubernetes), don't set `TERM` for `Exec`: Add note to Kubernetes setting `TERM` this must be done manually. 2. If `Command (exec)` is blank, use `/bin/bash`. Or even have a `Default shell` field. (Uhg) 3. Set `TERM` for `Exec`, and have a note that `TERM` needs to be set manually if `Command (exec)` is blank. 4. Not support `terminal-type` for Kubernetes. I'm leaning towards #3... -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
