summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * GitlatNet#discover only parse JSON if a 200Ash McKenzie2018-08-013-2/+54
| |
| * Update Actor::Username, add specsAsh McKenzie2018-08-014-5/+96
| |
| * 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-0119-103/+211
| |\ | |/ |/|
* | Merge branch 'release-version-8' into 'master'v8.0.0Nick Thomas2018-07-312-1/+4
|\ \ | | | | | | | | | | | | Release GitLab Shell v8.0.0 See merge request gitlab-org/gitlab-shell!218
| * | Release GitLab Shell v8.0.0Nick Thomas2018-07-312-1/+4
|/ /
* | Merge branch 'user-argument-2/upstream' into 'master'Nick Thomas2018-07-319-55/+192
|\ \ | | | | | | | | | | | | | | | | | | Add support for ssh certificates Closes gitlab-ce#34572 See merge request gitlab-org/gitlab-shell!207
| * | Add support for SSH certificate authenticationÆvar Arnfjörð Bjarmason2018-07-269-55/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-012-77/+0
| | |
| | * Use actor when we don't know if it's a Key or UserAsh McKenzie2018-08-0114-119/+137
| | | | | | | | | | | | | | | | | | * 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-018-0/+314
| | |
| | * Use gl_id instead of key_idAsh McKenzie2018-08-014-10/+10
| | | | | | | | | | | | | | | - Is possible that gl_id could be a 'user_id' - Is a more accurate variable name
| | * key_id is overloaded, use key_strAsh McKenzie2018-08-011-2/+2
| | |
| | * Use full_key to highlight it's the full SSH keyAsh McKenzie2018-08-013-10/+10
| | |
| | * Rename NotFound -> NotFoundErrorAsh McKenzie2018-08-013-7/+7
| | |
| | * Updated GitlabConfig spec to be less brittleAsh McKenzie2018-08-011-5/+31
| | |
| | * Remove GitAccessStatus as not requiredAsh McKenzie2018-08-012-29/+0
| | |
| | * Utilise new ActionsAsh McKenzie2018-08-0122-763/+730
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
| | * Fix cassettes that were wrongAsh McKenzie2018-08-012-2/+2
| | |
| | * Fix some rspec deprecationsAsh McKenzie2018-08-017-129/+126
| | |
| | * 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-019-0/+501
| | | | | | | | | | | | | | | | | | | | | * Base - contains all common logic * Gitaly - performs interactions with Gitaly * API2FARecovery - 2FA recovery code generation * GitLFSAuthenticate - git-lfs authentication
| | * New User classAsh McKenzie2018-07-302-0/+77
| | |
| | * Move GL_PROTOCOL into GitlabNetAsh McKenzie2018-07-302-3/+3
| | |
| | * Update GuardfileAsh McKenzie2018-07-301-18/+2
| | | | | | | | | | | | | | | * Fix lib matcher so it actually runs specs * Strip out only what we need/use
| | * Gem updates (rspec, vcr, guard)Ash McKenzie2018-07-302-28/+49
| |/ |/|
* | Bump version to 7.2.0v7.2.0Douwe Maan2018-07-272-1/+4
| |
* | Merge branch 'update-gitaly-proto' into 'master'Douwe Maan2018-07-2716-715/+3151
|\ \ | |/ |/| | | | | Update gitaly-proto to 0.109.0 See merge request gitlab-org/gitlab-shell!216
| * Update gitaly-proto to 0.109.0James Lopez2018-07-2716-715/+3151
|/
* Merge branch 'doc-go-update-vendor' into 'master'Rémy Coutable2018-07-243-2/+40
|\ | | | | | | | | Add script to update vendored go libs See merge request gitlab-org/gitlab-shell!212
| * Add script to update vendored go libsJacob Vosmaer (GitLab)2018-07-243-2/+40
|/
* Merge branch 'ash.mckenzie/minor-tidy-up' into 'master'Robert Speicher2018-07-2312-212/+310
|\ | | | | | | | | Refactor for re-usability for future MR's See merge request gitlab-org/gitlab-shell!210
| * Rspec upgrade and deprecation fixesash.mckenzie/minor-tidy-upAsh McKenzie2018-07-208-49/+65
| |
| * Ignore 'Missing magic comment' Rubocop warningAsh McKenzie2018-07-201-0/+3
| | | | | | | | This was not posing an issue during CI, but was an issue locally.
| * Support HTTP headers and sending JSONAsh McKenzie2018-07-203-24/+79
| |
| * Rename HTTPHelper#host to #internal_api_endpointAsh McKenzie2018-07-203-20/+20
| |
| * Add #base_api_endpoint for re-usabilityAsh McKenzie2018-07-202-1/+13
| |
| * Move HTTP logic out into HTTPHelperAsh McKenzie2018-07-202-104/+111
| |
| * gem version tightening & updatesAsh McKenzie2018-07-202-33/+37
| |
| * Add .ruby-version to ensure Ruby 2.3.x is usedAsh McKenzie2018-07-201-0/+1
|/
* Bump version to 7.1.5v7.1.5Stan Hu2018-07-102-1/+4
|
* Merge branch 'go-ci-version' into 'master'Nick Thomas2018-06-201-2/+6
|\ | | | | | | | | Run go tests in CI with Go 1.9 and 1.10 See merge request gitlab-org/gitlab-shell!208