summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'id-release-14-20-0' into 'main'HEADv14.20.0mainIgor Drozdov2023-05-122-1/+5
|\ | | | | | | | | | | | | | | | | Release 14.20.0 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/737 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com>
| * Release 14.20.0Igor Drozdov2023-05-122-1/+5
|/ | | | - Configure a default ttl for personal access tokens
* Merge branch 'add_default_ttl_for_personal_access_tokens' into 'main'Igor Drozdov2023-05-124-13/+11
|\ | | | | | | | | | | | | | | | | | | | | | | Configure a default ttl for personal access tokens Closes #640 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/736 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: James Fargher <proglottis@gmail.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com> Co-authored-by: Joe Woodward <jwoodward@gitlab.com>
| * Configure a default ttl for personal access tokensJoe Woodward2023-05-114-13/+11
|/ | | | | | | | | | | | | Prior to this change personal access tokens without a ttl would never expire. In Gitlab 15.4 we deprecated non-expiring tokens and are scheduled for removal in 16.0. https://gitlab.com/gitlab-org/gitlab/-/issues/369122 This change alters the gitlab-shell command for creating tokens to ensure add a default limit of 30 days. Closes https://gitlab.com/gitlab-org/gitlab-shell/-/issues/640
* Merge branch 'ashmckenzie/release-14.19.0' into 'main'v14.19.0Patrick Bajao2023-05-052-1/+14
|\ | | | | | | | | | | | | | | | | Release v14.19.0 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/731 Merged-by: Patrick Bajao <ebajao@gitlab.com> Approved-by: Patrick Bajao <ebajao@gitlab.com> Co-authored-by: Ash McKenzie <amckenzie@gitlab.com>
| * Release v14.19.0Ash McKenzie2023-05-052-1/+14
|/
* Merge branch 'main-patch-5eb8' into 'main'Patrick Bajao2023-05-051-1/+1
|\ | | | | | | | | | | | | | | | | Bump go to 1.19.9 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/730 Merged-by: Patrick Bajao <ebajao@gitlab.com> Approved-by: Patrick Bajao <ebajao@gitlab.com> Co-authored-by: Ash McKenzie <amckenzie@gitlab.com>
| * Bump go to 1.19.9Ash McKenzie2023-05-051-1/+1
|/
* Merge branch 'id-update-golang-crypto' into 'main'Stan Hu2023-05-043-17/+23
|\ | | | | | | | | | | | | | | | | | | Update golang-crypto fork version See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/729 Merged-by: Stan Hu <stanhu@gmail.com> Approved-by: Joern Schneeweisz <jschneeweisz@gitlab.com> Approved-by: Stan Hu <stanhu@gmail.com> Co-authored-by: Igor Drozdov <idrozdov@gitlab.com>
| * Update golang-crypto fork versionIgor Drozdov2023-05-043-17/+23
|/ | | | | It updates golang-crypto version and fixes the test that verifies the order of the supported algorithms
* Merge branch 'add-package-build-and-qa' into 'main'Igor Drozdov2023-05-041-0/+31
|\ | | | | | | | | | | | | | | | | | | | | | | Add build-package-and-qa job Closes #645 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/728 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Vasilii Iakliushin <viakliushin@gitlab.com> Co-authored-by: Balasankar "Balu" C <balasankar@gitlab.com>
| * Add build-package-and-qa jobBalasankar "Balu" C2023-05-031-0/+31
|/ | | | Signed-off-by: Balasankar "Balu" C <balasankar@gitlab.com>
* Merge branch 'refactor-success-api-acceptance-tests' into 'main'Igor Drozdov2023-05-011-15/+35
|\ | | | | | | | | | | | | | | | | | | refactor: success api on acceptance tests See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/727 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Vasilii Iakliushin <viakliushin@gitlab.com> Co-authored-by: Mohamed Saber <mohamed.saber@bosta.co>
| * refactor: success api on acceptance testsMohamed Saber2023-04-261-15/+35
|/
* Merge branch 'posix-boring-crypto' into 'main'Stan Hu2023-04-131-1/+1
|\ | | | | | | | | | | | | | | | | Make the boringcrypto check POSIX shell compliant See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/725 Merged-by: Stan Hu <stanhu@gmail.com> Approved-by: Stan Hu <stanhu@gmail.com> Co-authored-by: DJ Mountney <dj@gitlab.com>
| * Make the boringcrypto check POSIX shell compliantDJ Mountney2023-04-131-1/+1
|/ | | | - Otherwise this fails on some of the omnibus builder images
* Merge branch 'brodock/fix-heimdal-homebrew' into 'main'Ash McKenzie2023-04-111-1/+3
|\ | | | | | | | | | | | | | | | | | | | | | | Fix CGO_CFLAGS to use output from `brew --prefix` Closes gitlab-development-kit#1790 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/724 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Alejandro Rodríguez <alejandro@gitlab.com> Co-authored-by: Gabriel Mazetto <gabriel@gitlab.com>
| * Fix CGO_CFLAGS to use output from `brew --prefix`Gabriel Mazetto2023-04-071-1/+3
| |
* | Merge branch 'id-acceptance-test-for-geo' into 'main'Ash McKenzie2023-03-222-18/+164
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Acceptance test for Geo Push See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/719 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Alejandro Rodríguez <alejandro@gitlab.com> Co-authored-by: Igor Drozdov <idrozdov@gitlab.com>
| * | Acceptance test for Geo pushIgor Drozdov2023-03-172-18/+164
|/ / | | | | | | | | It imitates a push to the secondary and verifies that the push is redirected to the primary
* | Merge branch '622-configure-gitaly-storage-dynamically-for-acceptance-tests' ↵Igor Drozdov2023-03-152-1/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into 'main' Configure Gitaly storage acceptance tests Closes #622 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/723 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Co-authored-by: Patrick Cyiza <jpcyiza@gitlab.com>
| * | Configure Gitaly storage acceptance testsPatrick Cyiza2023-03-152-1/+2
|/ /
* | Merge branch ↵Igor Drozdov2023-03-071-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | '615-follow-up-from-add-dns-discovery-support-to-gitaly-via-client-side-load-balancing-options' into 'main' Make golang 1.19 the default Closes #615 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/718 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com> Co-authored-by: Ash McKenzie <amckenzie@gitlab.com>
| * | Make golang 1.19.6 the defaultAsh McKenzie2023-03-071-1/+1
| |/
* | Merge branch 'sh-prepare-go-fips-1.19' into 'main'Patrick Bajao2023-03-071-3/+9
|\ \ | |/ |/| | | | | | | | | | | | | | | | | Prepare for Go 1.19 FIPS support See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/721 Merged-by: Patrick Bajao <ebajao@gitlab.com> Approved-by: Patrick Bajao <ebajao@gitlab.com> Approved-by: James Fargher <proglottis@gmail.com> Reviewed-by: Patrick Bajao <ebajao@gitlab.com> Co-authored-by: Stan Hu <stanhu@gmail.com>
| * Prepare for Go 1.19 FIPS supportStan Hu2023-03-061-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/718 will make Go 1.19 the default for gitlab-shell. Per https://github.com/golang/go/issues/51940, the dev.boringcrypto branch no longer exists, and to support FIPS we need to pass along `GOEXPERIMENT=boringcrypto`. To do this, we just see if this `GOEXPERIMENT` is available with `go version` rather than do some more complicated version-specific comparison.
* | Merge branch 'id-release-14-18-0' into 'main'v14.18.0Igor Drozdov2023-03-062-1/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | Release v14.18.0 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/722 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com>
| * | Release v14.18.0Igor Drozdov2023-03-062-1/+8
|/ /
* | Merge branch 'id-geo-http-push' into 'main'Ash McKenzie2023-03-069-7/+431
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | Perform Git over HTTP request to primary repo See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/716 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Alejandro Rodríguez <alejandro@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Reviewed-by: Valery Sizov <valery@gitlab.com> Reviewed-by: Alejandro Rodríguez <alejandro@gitlab.com> Reviewed-by: Igor Drozdov <idrozdov@gitlab.com> Reviewed-by: Ash McKenzie <amckenzie@gitlab.com> Co-authored-by: Igor Drozdov <idrozdov@gitlab.com>
| * Perform HTTP request to primary on Geo pushIgor Drozdov2023-03-039-7/+431
|/ | | | | | | | | Currently, we perform a request to Gitlab Rails that proxies the request to primary However, it causes timeouts on big pushes and consumes large amount of memory. We can perform an HTTP request directly from Gitlab Shell instead and stream the response to the user
* Merge branch 'fix-static-build' into 'main'Igor Drozdov2023-02-283-0/+38
|\ | | | | | | | | | | | | | | | | | | | | sshd: exclude gssapi when building without cgo See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/720 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Vasilii Iakliushin <viakliushin@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com> Reviewed-by: Vasilii Iakliushin <viakliushin@gitlab.com> Co-authored-by: Lorenz Brun <lorenz@brun.one>
| * sshd: exclude gssapi when building without cgoLorenz Brun2023-02-233-0/+38
|/ | | | | | | | | | | MR #682 broke building without cgo enabled as it introduced a dependency on a Kerberos library. This can only be disabled at runtime and thus static builds of gitlab-sshd are no longer possible. This change introduces an alternative implementation of the GSSAPI structure which just rejects attempts to use it. That alternative implementation gets automatically activated in case the user is building without cgo.
* Merge branch 'qmnguyen0711/add-client-side-load-balancing-options' into 'main'Patrick Bajao2023-02-158-353/+404
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Add DNS discovery support to Gitaly via client-side load-balancing options See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/717 Merged-by: Patrick Bajao <ebajao@gitlab.com> Approved-by: Oscar Tovar <otovar@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Patrick Bajao <ebajao@gitlab.com> Reviewed-by: Ash McKenzie <amckenzie@gitlab.com> Reviewed-by: Quang-Minh Nguyen <qmnguyen@gitlab.com> Reviewed-by: Oscar Tovar <otovar@gitlab.com> Co-authored-by: Quang-Minh Nguyen <qmnguyen@gitlab.com>
| * Add DNS discovery support for Gitaly/PraefectQuang-Minh Nguyen2023-02-145-163/+212
| | | | | | | | | | | | | | | | | | | | All the implementations of DNS discovery were done in this epic: https://gitlab.com/groups/gitlab-org/-/epics/8971. Gitaly allows clients to configure DNS discovery via dial option. This MR adds the exposed dial options to client connection creation in Gitlab-shell. Issue: https://gitlab.com/gitlab-org/gitaly/-/issues/4722 Changelog: added
| * Bump Gitaly client version to v15.9.0-rc4Quang-Minh Nguyen2023-02-143-190/+192
|/ | | | | | | This client bump includes plenty of improvement, espeically the support for DNS service discovery in Gitaly/Praefect. This version requires Go >= 1.18. As a result, we'll need to bump minimal Go version of GitLab Shell accordingly.
* Merge branch 'id-define-standard-client' into 'main'Ash McKenzie2023-02-083-37/+77
|\ | | | | | | | | | | | | | | | | | | | | | | Define Do function for Gitlab net client See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/715 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Alejandro Rodríguez <alejandro@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Reviewed-by: Igor Drozdov <idrozdov@gitlab.com> Reviewed-by: Ash McKenzie <amckenzie@gitlab.com> Co-authored-by: Igor Drozdov <idrozdov@gitlab.com>
| * Define Do function for Gitlab net clientIgor Drozdov2023-02-073-37/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In future, we'll need to perform http requests for Geo related code area. We cannot use retryable requests because: - It's not necessary for the to be retryable - In order to retry, the whole request body is stored in RAM, while we need to stream large blobs of data This commit: - Extracts logging into a separate round tripper in order to reuse it for other http requests by default - Defines Do function that accepts raw request as an argument
* | Merge branch 'sh-add-gitlab-sshd-makefile' into 'main'Ash McKenzie2023-02-081-2/+5
|\ \ | |/ |/| | | | | | | | | | | | | Add bin/gitlab-sshd as an explicit Makefile target See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/714 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Co-authored-by: Stan Hu <stanhu@gmail.com>
| * Simplify build ruleAsh McKenzie2023-02-081-1/+1
| |
| * Add bin/gitlab-sshd as an explicit Makefile targetStan Hu2023-02-071-2/+5
|/ | | | | | | | | | | | | | | | Since https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/682, Kerberos headers and libraries are needed to build gitlab-sshd. If they are not available, `make build` successfully compiles `bin/gitlab-shell` but fails to build `bin/gitlab-sshd`. However, running `make build` again would do nothing and appear to be succeed because `bin/gitlab-shell` existed. This led to Omnibus GitLab quietly dropping the `gitlab-sshd` binary, as seen in https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/6446#note_1265879416. To ensure `make build` properly fails if `bin/gitlab-sshd` cannot be built, we make the binary an explicit build target. Changelog: changed
* Merge branch 'ashmckenzie/release' into 'main'v14.17.0Igor Drozdov2023-02-032-1/+5
|\ | | | | | | | | | | | | | | | | Release v14.17.0 version See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/713 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com> Co-authored-by: Ash McKenzie <amckenzie@gitlab.com>
| * Release v14.17.0 versionAsh McKenzie2023-02-032-1/+5
|/
* Merge branch 'main-patch-fa32' into 'main'Ash McKenzie2023-02-011-1/+1
|\ | | | | | | | | | | | | | | Bump golang to 1.18.9 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/712 Merged-by: Ash McKenzie <amckenzie@gitlab.com>
| * Bump golang to 1.18.9Ash McKenzie2023-02-011-1/+1
|/
* Merge branch 'id-release-14-16-0' into 'main'v14.16.0Igor Drozdov2023-01-312-1/+7
|\ | | | | | | | | | | | | | | | | Release v14.16.0 version See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/711 Merged-by: Igor Drozdov <idrozdov@gitlab.com> Approved-by: Igor Drozdov <idrozdov@gitlab.com>
| * Release v14.16.0 versionIgor Drozdov2023-01-312-1/+7
|/
* Merge branch 'feat/remove-unretryable-http' into 'main'Ash McKenzie2023-01-3115-210/+90
|\ | | | | | | | | | | | | | | | | | | feat: make retryable http default client See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/710 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Oscar Tovar <otovar@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Co-authored-by: Steve Azzopardi <sazzopardi@gitlab.com>
| * feat: make retryable http default clientSteve Azzopardi2023-01-3015-210/+90
|/ | | | | | | | | | | | | | | | | | | | | | What --- Make the retryableHTTP client introduced in https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/703 the default HTTP client. Why --- In https://gitlab.com/gitlab-com/gl-infra/production/-/issues/7979#note_1254964426 we've seen a 99% error reduction on `git` commands from `gitlab-shell` when the retryableHTTP client is used. This has been running in production for over 2 weeks in `us-east1-b` and 5 days fleet-wide so we should be confident that this client works as expected. Reference: https://gitlab.com/gitlab-com/gl-infra/production/-/issues/7979 Signed-off-by: Steve Azzopardi <sazzopardi@gitlab.com>
* Merge branch 'id-improve-retryable-tests' into 'main'Ash McKenzie2023-01-303-18/+38
|\ | | | | | | | | | | | | | | | | | | | | Stub retryable http values in tests See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/708 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Oscar Tovar <otovar@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Reviewed-by: Oscar Tovar <otovar@gitlab.com> Co-authored-by: Igor Drozdov <idrozdov@gitlab.com>
| * Stub retryable http values in testsIgor Drozdov2023-01-253-18/+38
| | | | | | | | | | | | | | | | Currently, the default values are used for retryable http. That's why a test waits 1 second minimun to retry a request. Client test takes 25 seconds to execute as a result. When we stub the value to 1 millisecond instead, we get 0.5s of execution