summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * Release 13.23.1Igor Drozdov2022-01-312-1/+5
|/
* Merge branch 'id-add-gitlab-golang-crypto' into 'main'Ash McKenzie2022-01-312-33/+6
|\ | | | | | | | | Replace golang.org/x/crypto with gitlab-org/golang-crypto See merge request gitlab-org/gitlab-shell!560
| * Replace golang.org/x/crypto with gitlab-org/golang-cryptoIgor Drozdov2022-01-282-33/+6
|/ | | | | | | This fork contains a fix for handling ssh-rsa public keys of gitlab-sshd Issue: https://gitlab.com/gitlab-org/gitlab-shell/-/issues/543
* Merge branch 'cmaxim-main-patch-05177' into 'main'Igor Drozdov2022-01-281-1/+1
|\ | | | | | | | | Update link for gitlab-workhorse project location See merge request gitlab-org/gitlab-shell!559
| * Update link for gitlab-workhorse project locationCostel Maxim2022-01-281-1/+1
| |
* | Merge branch 'update-bundler' into 'main'Ash McKenzie2022-01-282-2/+2
|\ \ | |/ |/| | | | | Update bundler to 2.3.6 because 2.1.4 is too old See merge request gitlab-org/gitlab-shell!554
| * Update bundler to 2.3.6Lin Jen-Shin2022-01-272-2/+2
|/
* Merge branch 'jv-release-13.23.0' into 'main'v13.23.0Igor Drozdov2022-01-252-1/+6
|\ | | | | | | | | Release 13.23.0 See merge request gitlab-org/gitlab-shell!558
| * Release 13.23.0Jacob Vosmaer2022-01-252-1/+6
|/
* Merge branch 'jv-ssh-sidechannel' into 'main'Igor Drozdov2022-01-2513-89/+511
|\ | | | | | | | | Add support for SSHUploadPackWithSidechannel RPC See merge request gitlab-org/gitlab-shell!557
| * Optionally use SSHUploadPackWithSidechannelJacob Vosmaer2022-01-258-16/+134
| | | | | | | | | | | | | | If the GitLab API returns an allowed response with use_sidechannel set to true, gitlab-shell will establish a sidechannel connection and use SSHUploadPackWithSidechannel instead of SSHUploadPack. This is an efficiency improvement.
| * Update gitaly/v14/client to 2e398afa0490ccdf5a82e1a7c7d824ae491eba16Jacob Vosmaer2022-01-253-25/+274
| | | | | | | | | | | | This updates the Gitaly client go.mod dependency to Gitaly commit 2e398afa0490ccdf5a82e1a7c7d824ae491eba16. This causes a grpc-go version bump, and hence a minor change in some of our test code.
| * Support parsing `use_sidechannel` API response fieldJacob Vosmaer2022-01-253-4/+63
| | | | | | | | | | | | This field will act as a feature flag that controls whether gitlab-shell uses the old SSHUploadPack RPC or the new SSHUploadPackWithSidechannel.
| * Refactor client response testsJacob Vosmaer2022-01-201-44/+40
| | | | | | | | | | | | | | | | | | | | This reduces coupling between tests in internal/gitlabnet/accessverifier/client_test.go, and will make it easier to add new test cases in the future. Note that the test server had a special behavior for the username "second", but this was never used. So we removed that behavior in this commit.
* | Merge branch 'rate-limiting-docs' into 'main'Igor Drozdov2022-01-191-1/+11
|\ \ | | | | | | | | | | | | Rate limiting documentation See merge request gitlab-org/gitlab-shell!556
| * | Rate limiting documentationSean Carroll2022-01-191-1/+11
|/ /
* | Merge branch 'sh-release-13.22.2' into 'main'v13.22.2Ash McKenzie2022-01-162-1/+9
|\ \ | | | | | | | | | | | | Release v13.22.2 See merge request gitlab-org/gitlab-shell!555
| * | Release v13.22.2Stan Hu2022-01-162-1/+9
|/ /
* | Merge branch 'sh-update-ruby-2.7.5' into 'main'Ash McKenzie2022-01-142-2/+2
|\ \ | |/ |/| | | | | Update to Ruby 2.7.5 See merge request gitlab-org/gitlab-shell!553
| * Update to Ruby 2.7.5Stan Hu2022-01-132-2/+2
|/ | | | | We don't need Ruby 2.7.4 cluttering our GDK when everything else has been upgraded to 2.7.5.
* Merge branch 'id-deprecate-self-signed-cert' into 'main'Ash McKenzie2022-01-132-1/+9
|\ | | | | | | | | Deprecate self_signed_cert config setting See merge request gitlab-org/gitlab-shell!552
| * Deprecate self_signed_cert config settingid-deprecate-self-signed-certIgor Drozdov2022-01-122-1/+9
|/ | | | | | | | | The option isn't required to accept self-signed certs On the other hand, if the option set to true it makes machine-in-the-middle attack possible Let's clarify it in the code that the option is deprecated
* Merge branch 'wc-intern-err' into 'main'Igor Drozdov2022-01-051-1/+6
|\ | | | | | | | | Suppress internal errors in client output See merge request gitlab-org/gitlab-shell!549
| * Suppress internal errors in client outputwc-intern-errWill Chandler2021-12-281-1/+6
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until recently, Gitaly was silently swallowing any errors returned by SSH `git upload-pack` processes. Clients would still receive stderr output and a non-zero return code, but Gitlab-Shell would receive error as nil and log success. With 9deaf47f1ecb00f0f36d18ee4a0fb1576f5a0efe Gitaly will now return an error when git fails, but this causes Gitlab-Shell to print out the GRPC error code as a message to the client: > fatal: couldn't find remote ref not-a-real-ref > fatal: the remote end hung up unexpectedly > remote: > remote: > ======================================================================== > remote: > remote: rpc error: code = Internal desc = SSHUploadPack: exit status 128 > remote: > remote: > ======================================================================== > remote: The `remote:` text gives no additional context for the user and adds clutter. This commit suppresses the additional message added by Gitlab-Shell on failure when the error type is `Internal`, returning client output to the format it was prior to the Gitaly change.
* Merge branch 'wc-sshd-upload-pack' into 'main'Igor Drozdov2021-12-281-8/+42
|\ | | | | | | | | Send full git request/response in SSHD tests See merge request gitlab-org/gitlab-shell!550
| * Send full git request/response in SSHD testswc-sshd-upload-packWill Chandler2021-12-221-8/+42
|/ | | | | | | | | | | | | | | Before 9deaf47f1ecb00f0f36d18ee4a0fb1576f5a0efe, Gitaly would return success for `SSHUploadPack` and `SSHUploadArchive` regardless of the exit code of the `git upload-pack|archive` process. As a result, the gitlab-sshd acceptance tests could rely on no errors being returned from Gitaly. Currently these tests send the minimum request needed to start a session, causing the server git process to fail as the `0000` flush packet to end the session is never sent. This commit fixes the tests by sending the full request/response needed for a successful git operation.
* Merge branch 'sh-bump-go-1.16.12' into 'main'Ash McKenzie2021-12-101-1/+1
|\ | | | | | | | | Bump .tool_versions to use Go v1.16.12 See merge request gitlab-org/gitlab-shell!548
| * Bump .tool_versions to use Go v1.16.12sh-bump-go-1.16.12Stan Hu2021-12-091-1/+1
|/ | | | Part of https://gitlab.com/groups/gitlab-org/-/epics/7111
* Merge branch 'id-release-13-22-1' into 'main'v13.22.1Igor Drozdov2021-11-242-1/+5
|\ | | | | | | | | Release v13.22.1 See merge request gitlab-org/gitlab-shell!547
| * Release v13.22.1Igor Drozdov2021-11-242-1/+5
|/
* Merge branch 'id-remove-ssl-cert-dir-logging' into 'main'Ash McKenzie2021-11-241-4/+0
|\ | | | | | | | | Remove SSL_CERT_DIR logging See merge request gitlab-org/gitlab-shell!546
| * Remove SSL_CERT_DIR loggingid-remove-ssl-cert-dir-loggingIgor Drozdov2021-11-231-4/+0
|/ | | | | This log entry doesn't respect log level, because the log level is configured after this logging happens
* Merge branch 'pks-gitaly-cng-latest' into 'main'Ash McKenzie2021-11-162-2/+2
|\ | | | | | | | | Fix usage of out-of-date Gitaly images See merge request gitlab-org/gitlab-shell!544
| * Fix usage of out-of-date Gitaly imagespks-gitaly-cng-latestPatrick Steinhardt2021-11-152-2/+2
| | | | | | | | | | | | | | | | | | | | Our CI jobs and docker-compose pull in the "latest" tag of Gitaly. As it turns out though, "latest" is pointing to Gitaly v13.3.0-rc5, which is definitely not the latest versionat this point in time. This is because CNG was converted to not use the "latest" tag anymore, but instead to use a tag called "master" in gitlab-org/build/CNG!519. Fix this by using the new "master" tag instead.
* | Merge branch 'id-fix-flaky-test' into 'main'Patrick Bajao2021-11-161-13/+3
|\ \ | |/ |/| | | | | Refactor flaky test case in sshd_test See merge request gitlab-org/gitlab-shell!545
| * Refactor flaky test case in sshd_testid-fix-flaky-testIgor Drozdov2021-11-151-13/+3
|/ | | | | - Use require.Regexp to expect ssh handshake error - Use require.Eventually to refactor verifyStatus
* Merge branch 'pb-update-version-file-13-22-0' into 'main'v13.22.0Patrick Bajao2021-11-151-1/+1
|\ | | | | | | | | Update gitlab-shell VERSION to 13.22.0 See merge request gitlab-org/gitlab-shell!543
| * Update gitlab-shell VERSION to 13.22.0pb-update-version-file-13-22-0Patrick Bajao2021-11-151-1/+1
|/
* Merge branch 'ashmckenzie/13-22-release' into 'main'Patrick Bajao2021-11-151-0/+31
|\ | | | | | | | | Release v13.22.0 See merge request gitlab-org/gitlab-shell!541
| * Fix merge request IID on changelogPatrick Bajao2021-11-151-1/+1
| |
| * Release v13.22.0Ash McKenzie2021-11-151-0/+19
| |
| * Add missing v13.21.1 changelog entryAsh McKenzie2021-11-151-0/+4
| |
| * Add missing v13.21.0 changelog entriesAsh McKenzie2021-11-151-0/+8
|/
* Merge branch 'ashmckenzie/fix-go-definition-in-tool-versions' into 'main'Patrick Bajao2021-11-151-1/+1
|\ | | | | | | | | Fix golang definition in tool versions See merge request gitlab-org/gitlab-shell!542
| * Bump golang in .tool-versions to 1.16.10ashmckenzie/fix-go-definition-in-tool-versionsAsh McKenzie2021-11-121-1/+1
| |
| * Fix go -> golang in .tool-versionsAsh McKenzie2021-11-121-1/+1
|/
* Merge branch 'sh-improve-key-matching-sshd' into 'main'Patrick Bajao2021-11-122-11/+36
|\ | | | | | | | | Relax key and username matching for sshd See merge request gitlab-org/gitlab-shell!540
| * Relax key and username matching for sshdsh-improve-key-matching-sshdStan Hu2021-11-102-11/+36
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the way sshd works, gitlab-shell could be called with a single string in the form: ``` /path/to/gitlab-shell -c key-id ``` However, due to the tightening of the regular expressions in fcff692b this string no longer matches, so logins would fail with: ``` Failed to get username: who='' is invalid ``` This can be reproduced by changing the user's shell to point to gitlab-shell. For example: ``` usermod git -s /opt/gitlab/embedded/service/gitlab-shell/bin/gitlab-shell ``` While setting gitlab-shell as the user's shell isn't officially supported, gitlab-shell still should be able to cope with the key being specified as the last argument. We now split the argument list and use the last value. Relates to https://gitlab.com/gitlab-org/gitlab-shell/-/issues/530
* Merge branch 'id-logging-for-handler' into 'main'Patrick Bajao2021-10-213-5/+16
|\ | | | | | | | | Add logging to handler/exec.go and config/config.go See merge request gitlab-org/gitlab-shell!539
| * Add logging to RunGitalyCommand funcid-logging-for-handlerIgor Drozdov2021-10-202-5/+12
| |