summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge branch 'rd-support-git-config-options' into 'master'Robert Speicher2018-08-081-2/+5
|\ \ | | | | | | | | | | | | Pass custom git_config_options to Gitaly See merge request gitlab-org/gitlab-shell!221
| * | Pass custom git_config_options to GitalyoRubén Dávila2018-08-071-2/+5
| | | | | | | | | | | | | | | 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.
* | | Typo fixAsh McKenzie2018-08-081-1/+1
|/ /
* | Actor::Base audit_usernames? now an aliasAsh McKenzie2018-08-031-4/+2
| |
* | Merge remote-tracking branch 'origin/master' into ash.mckenzie/srp-refactorAsh McKenzie2018-08-023-4/+11
|\ \ | |/
| * use GIT_PROTOCOL env variable in gitlab_shell#execJames Lopez2018-08-011-1/+1
| |
| * update gitlab shell to remove git_protocol env varJames Lopez2018-08-011-1/+0
| |
| * Add Git protocol v2James Lopez2018-08-013-6/+12
| |
* | Added TODO to fixup whatever namingAsh McKenzie2018-08-011-0/+2
| |
* | GitlatNet#discover only parse JSON if a 200Ash McKenzie2018-08-011-1/+1
| |
* | Update Actor::Username, add specsAsh McKenzie2018-08-012-5/+11
| |
* | Actor::Base#label now describes the class nicelyAsh McKenzie2018-08-011-1/+5
| |
* | Merge remote-tracking branch 'origin/master' into ash.mckenzie/srp-refactorAsh McKenzie2018-08-019-38/+81
|\ \ | |/
| * Add support for SSH certificate authenticationÆvar Arnfjörð Bjarmason2018-07-264-33/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Struct::ParsedCommand to keep vars closeAsh McKenzie2018-08-011-13/+21
| |
* | Remove User as Actor::Key/User has replaced itAsh McKenzie2018-08-011-25/+0
| |
* | Use actor when we don't know if it's a Key or UserAsh McKenzie2018-08-018-68/+75
| | | | | | | | | | | | * 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
* | New Actor::Base, Actor::Key and Actor::UserAsh McKenzie2018-08-014-0/+116
| |
* | Use gl_id instead of key_idAsh McKenzie2018-08-011-2/+2
| | | | | | | | | | - Is possible that gl_id could be a 'user_id' - Is a more accurate variable name
* | Rename NotFound -> NotFoundErrorAsh McKenzie2018-08-012-3/+3
| |
* | Remove GitAccessStatus as not requiredAsh McKenzie2018-08-012-29/+0
| |
* | Utilise new ActionsAsh McKenzie2018-08-013-232/+79
| | | | | | | | | | | | | | | | | | | | * 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
* | Tidy up GitlabShellAsh McKenzie2018-08-011-7/+12
| | | | | | | | | | * Use constants for git commands * private instead of protected
* | Tidy up GitlabNetAsh McKenzie2018-08-011-7/+2
| | | | | | | | | | * Remove HTTP related requires * Make protocol = GL_PROTOCOL the default
* | actor is always key_id in GitlabNetAsh McKenzie2018-08-011-7/+2
| |
* | Use HTTP status constants in GitLabNetAsh McKenzie2018-08-011-24/+11
| |
* | Tidy up GitlabAccessAsh McKenzie2018-08-011-8/+6
| | | | | | | | | | | | * Rename actor to key_id * protected to private * Move attr_reader defintions under private
* | HTTPHelper fix requires, add/use status constantsAsh McKenzie2018-08-011-2/+15
| |
* | Move HTTP related exceptions into HTTPHelperAsh McKenzie2018-08-012-3/+2
| |
* | Move common exceptions into errors.rbAsh McKenzie2018-08-013-5/+7
| |
* | New Action classesAsh McKenzie2018-08-015-0/+236
| | | | | | | | | | | | | | * Base - contains all common logic * Gitaly - performs interactions with Gitaly * API2FARecovery - 2FA recovery code generation * GitLFSAuthenticate - git-lfs authentication
* | New User classAsh McKenzie2018-07-301-0/+25
| |
* | Move GL_PROTOCOL into GitlabNetAsh McKenzie2018-07-302-3/+3
|/
* Support HTTP headers and sending JSONAsh McKenzie2018-07-202-11/+17
|
* Rename HTTPHelper#host to #internal_api_endpointAsh McKenzie2018-07-202-12/+12
|
* Add #base_api_endpoint for re-usabilityAsh McKenzie2018-07-201-1/+5
|
* Move HTTP logic out into HTTPHelperAsh McKenzie2018-07-202-104/+111
|
* allow long strings to remain intact while parsing broadcast messageCameron Crockett2018-06-011-4/+26
| | | | | | | | | | | | | | Added fix for msg nil edge case. fixed comment wording code review issues, bumped version and changelog entry Fixed rebase issues Moved strip out of the function Fixes for code review comments Removed trailing whitespaces
* Bump version to 7.1.3bvl-display-username-instead-of-fullnameBob Van Landuyt2018-05-241-1/+7
|
* Display the username instead of fullnameBob Van Landuyt2018-05-231-2/+2
| | | | | | | | 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 missing GitlabLogger#error methodJacob Vosmaer (GitLab)2018-04-091-1/+6
|
* Flush log file after every writeJacob Vosmaer (GitLab)2018-03-231-0/+6
|
* Add Gitaly git-upload-archive migrated commandgitaly-upload-archiveAlejandro Rodríguez2018-03-201-0/+1
|
* Switch to structured loggingJacob Vosmaer (GitLab)2018-03-196-23/+114
|
* Update files to pass modern rubocop checks. Disable some of themdz-update-depsDmitriy Zaporozhets2018-02-229-55/+58
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* Update rubocop and code to pass itDmitriy Zaporozhets2018-02-225-20/+22
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* Print new project information in post receiveTiago Botelho2018-02-061-0/+1
|
* Remove special case treatment of Geo nodes for SSHStan Hu2018-01-123-16/+5
| | | | | | | 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
* Remove direct redis integrationNick Thomas2018-01-1219-5482/+0
|
* Remove the GitlabProjects implementationNick Thomas2018-01-121-518/+0
|