summaryrefslogtreecommitdiff
path: root/internal
Commit message (Collapse)AuthorAgeFilesLines
* Generate and log correlation IDsStan Hu2020-07-316-20/+36
| | | | | This will make it easier to tie an SSH access request to Rails API and Gitaly requests.
* Revert "Update executable.go"Igor Drozdov2020-07-231-0/+22
| | | This reverts commit 869aeb9057962b089abfd8ce0b6d4a0962bbb154
* Update executable.goIgor Drozdov2020-07-231-22/+0
|
* Log SSH key detailsStan Hu2020-07-236-2/+14
| | | | | | | | | | | | | | | | | | | | | Right now when a client such as gitlab-shell calls the `/api/v4/internal/allowed` API, the response only tells the client what user has been granted access, and it's impossible to tell which deploy key/token was used in the authentication request. This commit adds logs for the following when available: 1. `gl_key_type` (e.g. `deploy_key` or `key`) 2. `gl_key_id` These fields make it possible for admins to identify the exact record that was used to authenticate the user. API changes in the `/internal/allowed` endpoint in https://gitlab.com/gitlab-org/gitlab/-/merge_requests/37289 are needed to support this. Relates to https://gitlab.com/gitlab-org/gitlab-shell/-/issues/203
* Log remote IP for executed commandssh-log-remote-ipStan Hu2020-07-202-1/+8
| | | | | | | | Admins may want to know what client IP originated the request. This commit adds a `remote_ip` field to the log that extracts the IP address from the `SSH_CONNECTION` environment variable. Closes https://gitlab.com/gitlab-org/gitlab-shell/-/issues/199
* Pass in ssl_cert_dir config settingAsh McKenzie2020-07-024-4/+36
|
* Include SSL_CERT_DIR env var in commandAsh McKenzie2020-07-022-22/+60
|
* Support new ssl_cert_dir config settingAsh McKenzie2020-07-012-0/+10
|
* Set client name when making requests to Gitalycl-client-nameChangzheng Liu2020-05-211-3/+16
|
* Fix race conditions with logrus testingsh-fix-logrus-raceStan Hu2020-05-113-0/+19
| | | | | | | | | logrus fires a Goroutine to write logs, so the tests could fail if they checked the event queue before the logrus have fired. Since there isn't an easy way to flush all outstanding hooks, we just retry every 100 ms for up to a second for log to arrive in the queue. Closes https://gitlab.com/gitlab-org/gitlab-shell/-/issues/450
* Fix race conditions in testssh-add-http-status-codeStan Hu2020-05-083-14/+15
| | | | | | | | Calling logrus hook.LastEntry() can lead to race conditions. Use AllEntries instead: https://github.com/sirupsen/logrus/blob/60c74ad9be0d874af0ab0daef6ab07c5c5911f0d/hooks/test/test.go#L77 Closes https://gitlab.com/gitlab-org/gitlab-shell/-/issues/450
* Ensure we are passing the parsed secretDJ Mountney2020-05-061-1/+1
| | | | | | | | Rather than the secret file. The parsing of the file was already done in the gitlab-shell config. This fixes an issue where a recent refactor of the gitlabnet client passed the wrong value.
* Move gitlabnet client to client packagejc-refactor-gitlabnet-clientJohn Cai2020-05-0436-938/+69
|
* Geo Pull custom action supportAsh McKenzie2020-04-176-10/+201
|
* Allow allowedPayloadPath to be providedAsh McKenzie2020-04-171-7/+11
|
* Rename Geo Push custom action testAsh McKenzie2020-04-171-1/+1
|
* Rename action to be more accurateAsh McKenzie2020-04-171-5/+5
|
* Rename allowed payload JSON for accuracyAsh McKenzie2020-04-172-2/+2
|
* New pktline packageAsh McKenzie2020-04-172-0/+162
| | | | | | | Package is responsible for parsing git pkt lines. Copied from gitaly, for now.
* Extract customaction into a separate moduleid-extract-custom-action-in-separate-moduleIgor Drozdov2020-04-145-45/+90
| | | | We'll reuse this module for uploadpack in the future
* Add missed protocol againsh-log-git-upload-receive-packDavid Kim2020-04-081-1/+1
|
* Remove unnecessary command argumentDavid Kim2020-04-084-5/+5
|
* Move logging to handler insteadDavid Kim2020-04-075-29/+23
|
* Change git command logging keys to be be snake casedDavid Kim2020-04-031-5/+5
|
* Add test for command loggingDavid Kim2020-04-037-38/+35
|
* Add tests for loggingDavid Kim2020-03-303-0/+24
|
* Add git-archive-packStan Hu2020-03-263-12/+23
|
* Log git-{upload-pack,receive-pack} requestsStan Hu2020-03-262-0/+24
| | | | This restores the previous Ruby gitlab-shell behavior.
* Log internal HTTP requestsStan Hu2020-03-105-18/+168
| | | | | | | This restores the previous behavior of logging the success and failures of internal HTTP requests. Part of https://gitlab.com/gitlab-org/gitlab/issues/207916
* commands: pass through GIT_PROTOCOL envvar provided by clientsps-git-protocol-envvarPatrick Steinhardt2020-02-283-2/+6
| | | | | | | | | | | Both git-upload-pack and git-receive-pack services inspect the GIT_PROTOCOL environment transferred via SSH in order to decide which protocols are supported by a given client. Currently, we don't use the environment variable at all, though, but instead forward the GitProtocol field of the access verification response. Improve this by passing on the GIT_PROTOCOL environment variable provided by the client as-is.
* Remove support for Custom data.info_message210-remove-action-custom-inform_client-once-12-3-has-been-releasedAsh McKenzie2019-12-245-10/+1
|
* Fix Typosflowed2019-12-211-1/+1
|
* Add git-lfs upload operation assertion37371-git-clone-on-secondary-geo-node-fetches-lfs-files-from-primaryAsh McKenzie2019-12-031-1/+3
|
* Use correct LFS download or upload operation namesAsh McKenzie2019-12-033-40/+62
|
* Merge branch 'pass-ff-to-gitaly' into 'master'Ash McKenzie2019-10-2911-13/+101
| | | | | Add support for Gitaly feature flags See merge request gitlab-org/gitlab-shell!351
* More consistent console messages (golang)Ash McKenzie2019-10-236-19/+10
|
* New console package for writing to the consoleAsh McKenzie2019-10-232-0/+274
|
* Rename import pathsNick Thomas2019-10-1856-209/+209
|
* Move go code up one levelNick Thomas2019-10-1881-0/+5705