summaryrefslogtreecommitdiff
path: root/spec/gitlab_shell_spec.rb
Commit message (Collapse)AuthorAgeFilesLines
* Remove usages of `its` in specsRobert Speicher2018-08-151-12/+20
|
* Autocorrect specs via `transpec -k its -v stub_with_hash`Robert Speicher2018-08-151-55/+55
|
* Restore "Pass custom git_config_options to Gitalyo"Nick Thomas2018-08-141-0/+7
| | | | This reverts commit 764f6f47fa6a8698ae033532ae49875a87030518.
* Revert "Merge branch 'ash.mckenzie/srp-refactor' into 'master'"Nick Thomas2018-08-141-125/+482
| | | | | This reverts commit 3aaf4751e09262c53544a1987f59b1308af9b6c1, reversing changes made to c6577e0d75f51b017f2f332838b97c3ca5b497c0.
* Revert "Pass custom git_config_options to Gitalyo"Nick Thomas2018-08-141-2/+0
| | | | This reverts commit f4ce4a3c31a9a7fb2fa0bb7daa185d34b8c03c00.
* Pass custom git_config_options to GitalyoRubén Dávila2018-08-071-0/+2
| | | | | The /api/internal/allowed endpoint on GitLab has been updated to return some custom git options that can be used with git commands, we need to pass these received options to Gitaly.
* Merge remote-tracking branch 'origin/master' into ash.mckenzie/srp-refactorAsh McKenzie2018-08-021-0/+2
|\
| * use GIT_PROTOCOL env variable in gitlab_shell#execJames Lopez2018-08-011-1/+5
| |
| * update gitlab shell to remove git_protocol env varJames Lopez2018-08-011-1/+0
| |
| * Add Git protocol v2James Lopez2018-08-011-27/+41
| |
* | Merge remote-tracking branch 'origin/master' into ash.mckenzie/srp-refactorAsh McKenzie2018-08-011-15/+15
|\ \ | |/
| * Add support for SSH certificate authenticationÆvar Arnfjörð Bjarmason2018-07-261-17/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This along with the code submitted to gitlab-ce in the gitlab-org/gitlab-ce! MR implements SSH certificate authentication. See the docs added to gitlab-ce for why and how to enable this. This, along with that MR, closes gitlab-org/gitlab-ce#3457 Implementation notes: - Because it's easy to do, and because an earlier nascent version of this would pass user-ID to gitlab-shell, that's now supported, even though the SSH certificate authentication uses username-USERNAME. - The astute reader will notice that not all the API calls in gitlab-ce's lib/api/internal.rb support a "username" argument, some only support "user_id". There's a few reasons for this: a) For this to be efficient, I am bending over backwards to avoid extra API calls when using SSH certificates. Therefore the /allowed API call will now return a "user id" to us if we're allowed to proceed further. This is then fed to existing APIs that would only be called after a successful call to /allowed. b) Not all of the git-shell codepaths go through /internal/allowed, or ever deal with a repository, e.g. the argument-less "Welcome to GitLab", and /internal/2fa_recovery_codes. These need to use /internal/discover to figure out details about the user, so support looking that up by username. c) Once we have the "user id", the GL_ID gets passed down to e.g. user-authored hooks. I don't want to have those all break by having to handle a third GL_ID mode of "username" in addition to the current "key id" and "user id".
* | Use actor when we don't know if it's a Key or UserAsh McKenzie2018-08-011-10/+14
| | | | | | | | | | | | * Use gl_id when we don't know if it's a key-X or user-X * Use Actor.new_from(gl_id) which will figure out if it's a Key or User * Use key_str when we're referring to key-X as key_id is confusing
* | Utilise new ActionsAsh McKenzie2018-08-011-464/+122
|/ | | | | | | | | | * Move gitaly, git-lfs and 2FA logic out from gitlab_shell.rb * Streamline parsing of origin_cmd in GitlabShell * Utilise proper HTTP status codes sent from the API * Also support 200 OK with status of true/false (ideally get rid of this) * Use HTTP status constants * Use attr_reader definitions (var over @var) * Rspec deprecation fixes
* Rspec upgrade and deprecation fixesash.mckenzie/minor-tidy-upAsh McKenzie2018-07-201-1/+2
|
* Bump version to 7.1.3bvl-display-username-instead-of-fullnameBob Van Landuyt2018-05-241-1/+1
|
* Display the username instead of fullnameBob Van Landuyt2018-05-231-5/+5
| | | | | | | | When running `ssh git@gitlab.example.com` we used to reply with the full name. But it might actually be more useful to display the username. This is unique and can help support identifying issues. Closes #131
* Add Gitaly git-upload-archive migrated commandgitaly-upload-archiveAlejandro Rodríguez2018-03-201-0/+55
|
* Switch to structured loggingJacob Vosmaer (GitLab)2018-03-191-26/+28
|
* Remove special case treatment of Geo nodes for SSHStan Hu2018-01-121-39/+3
| | | | | | | We removed SSH support in https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/3553, so we no longer need the ability to show all refs for Geo nodes. Closes #115
* pass gl_username through to hooksDavid Turner2017-09-281-7/+40
|
* Fix SSH support for Git for Windows v2.14sh-fix-git-upload-packStan Hu2017-08-061-2/+10
| | | | | | | Git For Windows 2.14 has a patch that changes `git-upload-pack` to `git upload-pack`. To make this work for gitlab-shell, just map this to `git-upload-pack`. Closes gitlab-org/gitlab-ce#36028
* Use git_config_options instead of git_config_parameters for Gitaly requestssh-support-gitaly-upload-pack-unhide-refsStan Hu2017-08-031-0/+12
|
* Make geo_node a default parametersh-show-all-refsStan Hu2017-07-241-3/+3
|
* Support unhiding of all refs for Geo NodesStan Hu2017-07-211-3/+17
| | | | | | By default, we hide certain refs (e.g. keep-around/XXX) to save user download time. We need to preserve these references on secondary Geo nodes to have a true copy.
* simplify specsKim "BKC" Carlbäcker2017-07-061-2/+2
|
* - Update gitaly vendoringKim "BKC" Carlbäcker2017-07-031-7/+65
| | | | | - Wire up gitaly-*-pack to Gitaly. Don't pass git-*-pack to go - Disable tests for go1.5 & 1.6
* Use gitaly-upload-pack and gitaly-receive-packJacob Vosmaer2017-05-231-11/+13
|
* Handle GL_REPOSITORY env variable and use it in api callsAlejandro Rodríguez2017-05-111-8/+23
|
* Remove git annex supportPawel Chojnacki2017-02-241-66/+0
|
* Enable GIT_TRACE/GIT_TRACE_PACKET/GIT_TRACE_PERFORMANCE by providing the ↵59-git-tracingPaco Guzman2016-09-271-1/+67
| | | | | | git_trace_log_file config key The value of the variable if present must be a writable absolute path. If it’s not the case we log a proper message and not enable tracing to not throw output to the users.
* Style fixes and better tests.Patricio Cano2016-09-061-1/+1
|
* Refactored LFS auth logic to use its own API endpoint.Patricio Cano2016-09-061-2/+1
|
* Added test for old Git LFS clients that submit an extra :oid argument to ↵Patricio Cano2016-09-061-0/+13
| | | | `git-lfs-authenticate`
* Added LFS support to SSHPatricio Cano2016-09-061-1/+15
| | | | - Required changes to GitLab Shell include the actual handling of the `git-lfs-authenticate` command and the retrieval of the correct credentials.
* Add option to recover 2FA via SSHDrew Blessing2016-08-261-3/+63
|
* Simplify protocol assign, and populate ENV['PROTOCOL'] variable when calling ↵Patricio Cano2016-07-051-1/+1
| | | | hooks via SSH
* Refactor repository paths handling to allow multiple git mount pointsshardsAlejandro Rodríguez2016-06-291-59/+87
|
* Simplify the GitAccessStatus classsimplify-access-statusJacob Vosmaer2016-06-231-2/+2
| | | | | Make the optional 'message' argument required. Remove unused 'to_json' method.
* updated spec context ant comment [ci-skip]fix/git-annex-sshJames Lopez2016-03-181-2/+2
|
* added comment to clarify specJames Lopez2016-03-161-0/+1
|
* get git annex to work when using custom SSH portJames Lopez2016-03-161-1/+9
|
* Add spec for stricter exec_cmd checksJacob Vosmaer2015-11-251-0/+9
|
* Limit availability of SSH_ORIGINAL_COMMANDJacob Vosmaer2015-11-251-24/+24
| | | | | Hoping this makes it more obvious when code touches the very unsafe contents of this variable.
* Skip 'git annex init' when using 'gcryptsetup'no-init-on-gcryptsetupJacob Vosmaer2015-08-111-0/+8
| | | | | 'gcryptsetup' is a special git-annex feature that does its own initialization.
* Update GitlabShell tests.gl-id-refactorDouwe Maan2015-04-061-25/+22
|
* Write GitlabShell error to stderr.nice-error-messageDouwe Maan2015-04-061-1/+1
|
* Disable git-annex by defaultDmitriy Zaporozhets2015-02-161-1/+7
|
* Add more git-annex testsDmitriy Zaporozhets2015-02-161-1/+9
|
* Enable git-annex on first commandDmitriy Zaporozhets2015-02-131-24/+58
|