summaryrefslogtreecommitdiff
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Make the boringcrypto check POSIX shell compliantDJ Mountney2023-04-131-1/+1
| | | | - Otherwise this fails on some of the omnibus builder images
* Merge branch 'brodock/fix-heimdal-homebrew' into 'main'Ash McKenzie2023-04-111-1/+3
|\ | | | | | | | | | | | | | | | | | | | | | | Fix CGO_CFLAGS to use output from `brew --prefix` Closes gitlab-development-kit#1790 See merge request https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/724 Merged-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Ash McKenzie <amckenzie@gitlab.com> Approved-by: Alejandro Rodríguez <alejandro@gitlab.com> Co-authored-by: Gabriel Mazetto <gabriel@gitlab.com>
| * Fix CGO_CFLAGS to use output from `brew --prefix`Gabriel Mazetto2023-04-071-1/+3
| |
* | Prepare for Go 1.19 FIPS supportStan Hu2023-03-061-3/+9
|/ | | | | | | | | | | | https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/718 will make Go 1.19 the default for gitlab-shell. Per https://github.com/golang/go/issues/51940, the dev.boringcrypto branch no longer exists, and to support FIPS we need to pass along `GOEXPERIMENT=boringcrypto`. To do this, we just see if this `GOEXPERIMENT` is available with `go version` rather than do some more complicated version-specific comparison.
* Simplify build ruleAsh McKenzie2023-02-081-1/+1
|
* Add bin/gitlab-sshd as an explicit Makefile targetStan Hu2023-02-071-2/+5
| | | | | | | | | | | | | | | | Since https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/682, Kerberos headers and libraries are needed to build gitlab-sshd. If they are not available, `make build` successfully compiles `bin/gitlab-shell` but fails to build `bin/gitlab-sshd`. However, running `make build` again would do nothing and appear to be succeed because `bin/gitlab-shell` existed. This led to Omnibus GitLab quietly dropping the `gitlab-sshd` binary, as seen in https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/6446#note_1265879416. To ensure `make build` properly fails if `bin/gitlab-sshd` cannot be built, we make the binary an explicit build target. Changelog: changed
* Specify CGO_CFLAGS in Makefile to compile gssapi libIgor Drozdov2023-01-271-0/+6
|
* Fix make install copying the wrong binariesStan Hu2022-06-231-4/+3
| | | | | | | | | | | | While testing https://gitlab.com/gitlab-org/build/CNG/-/merge_requests/1062, we found `make install` was not copying the right binaries, such as `gitlab-shell-authorized-keys-check`. This might have originally been written with a single binary in mind (https://gitlab.com/gitlab-org/gitlab-shell/-/issues/207). Changelog: fixed
* Use labkit for FIPS checkIgor Drozdov2022-05-051-1/+5
| | | | | New version of LabKit provides FIPS checks that we can use instead of the custom code
* Add support for FIPS encryptionStan Hu2022-04-181-0/+6
| | | | | | | | | | | | | | This commit adds support of using a FIPS-validated SSL library with compiled Go executables when `FIPS_MODE=1 make` is run. A Go compiler that supports BoringSSL either directly (e.g. the `dev.boringcrypto` branch) or with a dynamically linked OpenSSL (e.g. https://github.com/golang-fips/go) is required. This is similar to the changes to support FIPS in GitLab Runner and in GitLab Pages: https://gitlab.com/gitlab-org/gitlab-pages/-/merge_requests/716 Changelog: added
* Ignore vendor/ directory even if presentAsh McKenzie2022-02-021-1/+1
|
* makefile: properly quote '$' in VERSION_STRINGKevin2021-09-161-1/+1
| | | | | | | If git is not available or gitlab-shell is not built in a repository, it falls back the VERSION file. That command is not properly escaped and results in the message: > awk: cmd. line:1: Unexpected token When you remove the `2>/dev/null`. Escape the '$' characters to solve this.
* build: move build task to the top of the Makefilefeistel2021-09-071-1/+2
|
* Make gofmt check fail if there are any matching filesStan Hu2021-07-261-1/+4
| | | | | | | | gofmt doesn't return an exit code 1 if there are matching files: https://github.com/golang/go/issues/24230 To fix this, use the same trick we use in Workhorse to parse output. Also add a `make fmt` step to format all the code properly.
* Add a make install commandNick Thomas2021-07-011-3/+14
| | | | Changelog: added
* Fix opentracing setup for gitlab-sshdNick Thomas2021-05-171-1/+2
| | | | | | | | | | | | | | | | | | | | Previously, opentracing (if configured) was initialized late in the gitlab-shell process's lifespan, coming just before making a gRPC call to Gitaly. By moving the opentracing initialization to be at process startup, we make it available for the whole process lifecycle, which is very useful to gitlab-sshd, as it means we'll only call tracing.Initialize() once on process startup, rather than once per SSH connection. To get this working, we need to introduce a context to gitlab-sshd. This carries the client/service name, but also carries an initial correlation ID. The main outcome of this is that all calls to the authorized_keys endpoint from a given gitlab-sshd process will now share a correlation ID. I don't have a strong opinion about this either way. Changelog: fixed
* gitlab-sshd: Support the PROXY protocolNick Thomas2021-04-121-1/+1
|
* Remove rubocop from Ruby testremove-rubocop-testTakuya Noguchi2020-11-051-4/+1
| | | | Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
* Apply 1 suggestion(s) to 1 file(s)sh-add-version-argStan Hu2020-10-161-1/+1
|
* Add support for -version argumentStan Hu2020-10-151-1/+4
| | | | | This will help determine the version of the binary particularly on Cloud Native GitLab, where VERSION may not be shipped with the binaries.
* Extract coverage for Go code on CI pipelinego-coverageTakuya Noguchi2020-06-061-2/+7
| | | | Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
* Add race testing as separate CI stepsh-add-race-testStan Hu2020-05-111-0/+3
| | | | | This would help catch race conditions such as https://gitlab.com/gitlab-org/gitlab-shell/-/issues/450 before merge.
* Simplify building and testing the Go componentsNick Thomas2019-10-181-5/+5
|
* Remove dead Ruby codeNick Thomas2019-10-151-8/+2
|
* Intelligently rebuild binariesNick Thomas2019-10-081-1/+3
|
* Replace symlinks with actual binariesPatrick Bajao2019-08-151-10/+7
| | | | | | | | | | | | | | | | | | | We had `gitlab-shell-authorized-keys-check` and `gitlab-shell-authorized-principals-check` as symlinks to `gitlab-shell` before. We determine the `Command` and `CommandArgs` that we build based on the `Name` of the `Executable`. We also use that to know which fallback ruby executable should we fallback to. We use `os.Executable()` to do that. `os.Executable()` behaves differently depending on OS. It may return the symlink or the target's name. That can result to a buggy behavior. The fix is to create binaries for each instead of using a symlink. That way we don't need to rely on `os.Executable()` to get the name. We pass the `Name` of the executable instead.
* Support falling back to ruby version of checkersPatrick Bajao2019-07-291-0/+6
| | | | | | | | | | | | | | 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).
* Update .PHONY to be accurate198-update-phony-to-have-accurate-list-of-targetsAsh McKenzie2019-06-281-1/+1
|
* New bin/gitlab-shell Makefile targetAsh McKenzie2019-06-281-3/+7
|
* Add Makefile for easier building and testingAsh McKenzie2019-06-271-0/+35
|
* Remove direct redis integrationNick Thomas2018-01-121-12/+0
|
* Bump redis-rb library to 3.3.3update-redis-rb-3.3.3Stan Hu2017-07-221-1/+1
|
* Put redis library in lib/vendor/ and adjust LOAD_PATHuse-redis-rb-clientStan Hu2016-05-121-12/+4
|
* Remove unnecessary statement in MakefileStan Hu2016-05-121-1/+0
|
* Add redis-rb as a vendored libraryStan Hu2016-05-121-0/+21
`make update-redis` will clone the library and adjust the paths properly