Skip to content

How to Connect to Git via SSH

In addition to the HTTP/HTTPS protocols, Teamscale can communicate with Git repositories using Secure Shell (SSH).

General Option Reference

This guide only covers the options specific for the Git repository connector. A general overview of connector options is available here.

When communicating with a Git repository over the SSH protocol, the Teamscale server may need to authenticate itself with a private key.

The private keys need to be stored by navigating to Admin > Settings > Git in Teamscale. Each key consists of: 1- A configurable (unique) ID 2- The key material (a Base64-encoded string enclosed by a header/footer pair like BEGIN/END RSA PRIVATE KEY) 3- The key passphrase used to unlock the key (if applicable)

The key can then be referred to in the configuration of the Git repository connector.

Key Formats

While Teamscale supports a wide range of SSH private key formats, it does not yet support the "new" OpenSSH private key format, which is enclosed by a header/footer pair of BEGIN/END OPENSSH PRIVATE KEY. If your private key is stored in this format, you can convert it to a format that Teamscale can handle like this:

  • Warning: This modifies the original private key file! You might want to create a backup beforehand.
  • OpenSSH: ssh-keygen -p -e -m PEM -f $INPUT
  • PuTTY: puttygen $INPUT -O private-openssh -o $CONVERTED