Skip to content

Update gitlab-shell chart to make client-alive-interval configurable

Igor Drozdov requested to merge id-gitlab-sshd-client-alive-interval into master

What does this MR do?

Sets an interval after which server will send keepalive message to a client. It's similar to OpenSSH's ClientAliveInterval, so we can use the existing clientAliveInterval setting.

Related issues

Testing

  1. Checked out this branch.
  2. Installed the chart with these values.yaml:
gitlab:
  gitlab-shell:
    sshDaemon: gitlab-sshd
    config:
      clientAliveInterval: 5
  1. Make a blocking operation that leaves the connection idle for a while (-vvv is for verbose logging):
ssh -vvv -x git@gitlab.mydomain.com "git-upload-pack '/root/my-repo'"
  1. Wait for 5 seconds
  2. Keepalive messages should start to appear every 5 seconds:
debug3: receive packet: type 80
debug1: client_input_global_request: rtype keepalive@openssh.com want_reply 1
debug3: send packet: type 82

Checklist

See Definition of done.

For anything in this list which will not be completed, please provide a reason in the MR discussion.

Required

  • Merge Request Title and Description are up to date, accurate, and descriptive
  • MR targeting the appropriate branch
  • MR has a green pipeline on GitLab.com

Expected (please provide an explanation if not completing)

  • Test plan indicating conditions for success has been posted and passes
  • Documentation created/updated
  • Tests added
  • Integration tests added to GitLab QA
  • Equivalent MR/issue for omnibus-gitlab opened

Merge request reports