summaryrefslogtreecommitdiff
path: root/go/internal/command
Commit message (Collapse)AuthorAgeFilesLines
* Move go code up one levelNick Thomas2019-10-1838-2532/+0
|
* Upgrade Gitaly to 1.68.0jc-upgrade-gitalyJohn Cai2019-10-143-3/+3
| | | | Gitaly 1.68.0 upgrades gRPC to 1.24.0
* Remove buildCheckAllowedEnv() test helperAsh McKenzie2019-10-091-7/+0
|
* Rewrite bin/check in GoNick Thomas2019-10-084-0/+160
|
* Remove feature flags and the fallback commandNick Thomas2019-09-204-275/+70
|
* Implement AuthorizedPrincipals command181-authorized-principals-check-goPatrick Bajao2019-08-097-0/+191
| | | | | | Build this command when `Executable` name is `gitlab-shell-authorized-principals-check`. Feature flag is the same name.
* Implement AuthorizedKeys command181-authorized-keys-check-goPatrick Bajao2019-08-087-2/+257
| | | | | | Build this command when `Executable` name is `gitlab-shell-authorized-keys-check`. Feature flag is the same name.
* Add Executable struct181-migrate-gitlab-shell-checks-fallbackPatrick Bajao2019-08-029-154/+189
| | | | | | | | | | This struct is responsible for determining the name and root dir of the executable. The `RootDir` property will be used to find the config. The `Name` property will be used to determine what `Command` and `CommandArgs` to be built.
* Rename CommandArgs to ShellPatrick Bajao2019-07-3118-37/+37
| | | | | | Other functions are still expecting for `CommandArgs` instead of `Shell`. They should be expecting `commandargs.Shell` now since it has been renamed.
* Support different CommandArgs typePatrick Bajao2019-07-318-156/+238
| | | | | | | | `CommandArgs` has been renamed to `Shell`. An interface has been added that includes `Executable()` and `Arguments()` method. The `BaseArgs` implement this methods and should be embeeded in each type.
* Support falling back to ruby version of checkersPatrick Bajao2019-07-296-41/+99
| | | | | | | | | | | | | | Rename the ruby scripts to have `-ruby` suffix and add a symlink for both to `./gitlab-shell`. The executable name will be used to determine how args will be parsed. For now, we only parse the arguments for gitlab-shell commands. If the executable is `gitlab-shell-authorized-keys-check` or `gitlab-shell-authorized-principals-check`, it'll always fallback to the ruby version. Ruby specs test the ruby script, the fallback from go to ruby and go implementation of both (still pending).
* Go implementation for LFS authenticateIgor2019-06-066-0/+281
|
* Go implementation for git-upload-archiveIgor2019-06-058-0/+163
|
* Go implementation for git-upload-packIgor2019-06-0312-32/+179
|
* Return Fallback cmd if feature is enabled, but unimplementedIgor2019-06-032-11/+20
|
* Go implementation for git-receive-packIgor2019-05-3114-40/+625
|
* Pass readWriter to Command constructorIgor Drozdov2019-05-208-37/+49
|
* Support calling internal api using HTTPIgor2019-04-242-11/+8
|
* Pass the root directory into the fallback commandNick Thomas2019-04-123-7/+93
|
* Provide go implementation for 2fa_recovery_codes commandIgor2019-03-2110-29/+243
|
* Wrap Stderr & Stdout in a reporter structBob Van Landuyt2019-03-155-16/+23
| | | | | The reporter struct can be used for passing around and reporting to the io.Writer of choice.
* Detect user based on key, username or idBob Van Landuyt2019-03-142-1/+166
| | | | | | | | | | | | | | | | | | This allows gitlab-shell to be called with an argument of the format `key-123` or `username-name`. When called in this way, `gitlab-shell` will call the GitLab internal API. If the API responds with user information, it will print a welcome message including the username. If the API responds with a successful but empty response, gitlab-shell will print a welcome message for an anonymous user. If the API response includes an error message in JSON, this message will be printed to stderr. If the API call fails, an error message including the status code will be printed to stderr.
* Don't fall back to ruby for non SSH connectionsbvl-feature-flag-commandsBob Van Landuyt2019-01-151-3/+3
| | | | | When SSH_CONNECTION is not set, we don't fall back to ruby, but instead fail directly in go writing the error to stderr.
* Allow enabling gitlab-shell "discover"-featureBob Van Landuyt2019-01-156-0/+297
This adds the possibility to enable features for GitLab shell. The first feature being recognized is "Discover": It's the command that is executed when running `ssh git@gitlab.example.com` and is called without a command. The gitlab key id or username is already parsed from the command line arguments. Currently we only support communicating with GitLab-rails using unix sockets. So features will not be enabled if the GitLab-url is using a different protocol. The url for this read from the config yaml. Pending ruby-specs have been added for the gitlab-shell command. Refactor to have separate command packages