Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-08-26Let client users specify interceptorsash2k/client-fixesMikhail Mazurskiy
Do not assume client users want the same tracing interceptors with the same configuration.
2022-08-26Do not mutate the original options sliceMikhail Mazurskiy
2022-08-26Merge branch 'renovate/github.com-rubenv-sql-migrate-1.x' into 'master'Sami Hiltunen
go: Update module github.com/rubenv/sql-migrate to v1 See merge request gitlab-org/gitaly!4698
2022-08-26Merge branch '4227-convert-usercreatebranch-to-use-structured-errors' into ↵Sami Hiltunen
'master' Convert UserCreateBranch to use structured errors Closes #4227 See merge request gitlab-org/gitaly!4835
2022-08-26Merge branch 'ps-flaky-server-factory' into 'master'Justin Tobler
Fix flaky tests of the TestGitalyServerFactory test suite Closes #3916 See merge request gitlab-org/gitaly!4841
2022-08-25Merge branch 'tnir-dashboards-is-no-more-public' into 'master'Andras Horvath
docs: Public Grafana dashboards does not exist any more See merge request gitlab-org/gitaly!4831
2022-08-25Merge branch '1294-simplify-response-type-of-findlocalbranches' into 'master'Will Chandler
proto: return 'Branch' in 'FindLocalBranchesResponse' See merge request gitlab-org/gitaly!4842
2022-08-25Merge branch 'ps-remove-drift_threshold_millis' into 'master'Toon Claes
proto: Remove deprecated drift_threshold_millis Closes #4417 See merge request gitlab-org/gitaly!4843
2022-08-25branches: Use 'UserCreateBranchError' behind a flag4227-convert-usercreatebranch-to-use-structured-errorsKarthik Nayak
This commit utilizes the newly added 'UserCreateBranchError' in the 'UserCreateBranch' function. Since this replaces the old behavior and is a breaking change because the old behavior would return StatusOk with the error ingrained, we add this functionality behind a feature flag introduced in the previous commit (1117a3665).
2022-08-25featureflag: Add new flag 'user_create_branch_structured_errors'Karthik Nayak
Add a new flag to control the release of 'UserCreateBranchError' which was introduced in the previous commit (2d7e0ee3598caa9b127864c6bd8956ae80a9b8a9). This flag will be used in the upcoming commits to enable the use of this struct and eventually be deprecated once the struct is released and adopted.
2022-08-25proto: Add UserCreateBranchErrorKarthik Nayak
Add a new message type `UserCreateBranchError`, which will be used to provide structured errors for the `UserCreateBranch` RPC. This will be released behind a feature flag. Currently this structure only holds a single data type within it, i.e. `CustomHookError`. Potentially can be extended in the future. Run `make proto` to generate the related proto files from this. Signed-off-by: Karthik Nayak <knayak@gitlab.com>
2022-08-24proto: Return 'Branch' in 'FindLocalBranchesResponse'Karthik Nayak
Currently 'FindLocalBranchesResponse' contains 'FindLocalBranchResponse' which is a custom type drawn over the common 'Branch' type. In due of deprecating the old and keeping type consistency we introduce 'local_branches' as a new field of type 'Branch'. In subsequent releases we will deprecate the old 'FindLocalBranchResponse' from 'FindLocalBranchesResponse' and only keep 'Branch' type in it.
2022-08-24Public Grafana dashboards does not exist any moretnir-dashboards-is-no-more-publicTakuya Noguchi
Also performance. is replaced with dashboards. Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> Changelog: other
2022-08-24go: Update module github.com/rubenv/sql-migrate to v1GitLab Renovate Bot
2022-08-24proto: Remove deprecated drift_threshold_millisps-remove-drift_threshold_millisPavlo Strokov
The field is removed as it was deprecated in 8f9dd5ab5 (proto: Introduce drift_threshold to replace drift_threshold_millis, 2022-08-05) and not used anymore. Closes: https://gitlab.com/gitlab-org/gitaly/-/issues/4417
2022-08-23Merge branch 'renovate/gocloud.dev-0.x' into 'master'James Fargher
go: Update module gocloud.dev to v0.26.0 See merge request gitlab-org/gitaly!4808
2022-08-23Merge branch 'master' into 'master'Will Chandler
feat(gitaly-git2go): sign commits with OpenPGP key See merge request gitlab-org/gitaly!4802
2022-08-23feat(gitaly-git2go): sign commits with OpenPGP keySavely Krasovsky
2022-08-23Merge branch 'toon-codeowners' into 'master'Andras Horvath
Update maintainers See merge request gitlab-org/gitaly!4838
2022-08-23Merge branch 'pks-doc-discourage-seeded-test-repos' into 'master'Toon Claes
STYLE.md: Discourage the use of seed repos for test data Closes #4308 See merge request gitlab-org/gitaly!4799
2022-08-23Update VERSION filesv15.4.0-rc1GitLab Release Tools Bot
[ci skip]
2022-08-23Merge remote-tracking branch 'dev/master'GitLab Release Tools Bot
2022-08-22go: Update module gocloud.dev to v0.26.0GitLab Renovate Bot
2022-08-22Merge branch 'ps-extend-license' into 'master'Pavlo Strokov
license: Extend license find response with additional data Closes #3782 See merge request gitlab-org/gitaly!4198
2022-08-22license: Return additional info from FindLicense RPCPavlo Strokov
To remove the Licensee gem and replace it with the go-license-detector package, in a previous commit, we extended the interface of the FindLicense RPC to return additional license details. Because implementations are different they produce a bit different results for the same input. Let's try to make it as much consistent as possible by adjusting the license identifier (to lower-case) and the nickname (we use a hardcoded dictionary of license id to nickname). Because the changes we contributed to the github.com/go-enry/go-license-detector package are not yet applied by the maintainers, let's use a fork of it with the changes we need. Once they are merged, we should update the dependency. Part of: https://gitlab.com/gitlab-org/gitaly/-/issues/3782
2022-08-22proto: Extend FindLicenseResponse with additional fieldsPavlo Strokov
Gitaly uses the Licensee gem to find the license used in a repository and return the corresponding license identifier to GitLab. GitLab uses the same Licensee gem to get additional info about the license using the identifier to show it on the UI. Go and Ruby implementations of the FindLicense RPC rely on different algorithms for license detection and the set of licenses that could be detected are different as well, that is why they are not fully compatible. Let's extend FindLicenseResponse with additional fields, so GitLab doesn't need to get that info from the Licensee gem anymore. It solves the problem of the compatibility of the two implementations. Part of: https://gitlab.com/gitlab-org/gitaly/-/issues/3782
2022-08-22Update changelog for 15.1.5GitLab Release Tools Bot
[ci skip]
2022-08-22Update changelog for 15.2.3GitLab Release Tools Bot
[ci skip]
2022-08-22Update changelog for 15.3.1GitLab Release Tools Bot
[ci skip]
2022-08-22Merge branch 'jc-cleanup-cgroups' into 'master'John Cai
Prune old cgroup directories See merge request gitlab-org/gitaly!4760
2022-08-22server factory: Wait for termination of all goroutinesps-flaky-server-factoryPavlo Strokov
It happens that goroutine started to Serve() doesn't terminate after test completion and that fails the test (all started goroutines must be terminated on test completion). Now the test waits for all started goroutines to be terminated. The result returned from the Server() method is also controlled now and checked for correctness. Closes: https://gitlab.com/gitlab-org/gitaly/-/issues/3916
2022-08-22server factory: Don't call Close for listenersPavlo Strokov
We don't need to call Close() for the listeners as gRPC server calls it on Stop()/Shutdown() invocation, it is called by the factory.
2022-08-22server factory: Terminate all serversPavlo Strokov
Missing Stop() calls added to terminate all running servers.
2022-08-22server factory: Drop unneeded limit middlewarePavlo Strokov
The LimiterMiddleware is not the main subject to test. It makes test harder to read and understand. It also adds additional functionality we don't want to test here. We drop it to remove all those concerns.
2022-08-22gitaly: Prune old cgroup directories on startupJohn Cai
Attempt to prune old cgroups directories on startup. On shutdown, we attempt to clean the cgroups. However, this code is far down. Move it closer so it's easier to follow.
2022-08-22cgroups: Call GetGitalyProcessTempDir()John Cai
Now that we have a GetGitalyProcessTempDir() function, call it to get the name of the cgroup directory.
2022-08-22cgroups: Add PruneOldCgroups helperJohn Cai
Add a helper function to specifically clean out old cgroups from both the memory and cpu subsystems.
2022-08-22cgroups: Inject pid into cgroup manangerJohn Cai
To make testing easier, inject the current running pid into the cgroup manager instead of having the cgroup manager call the global os.Getpid(). This way, tests become safer from flakes.
2022-08-22config: Do not early exit when pruning gitaly process dirJohn Cai
When pruning old directories, we want to prune as many as we can. We don't want to bail early as soon as there is an issue with one of the entries. For instance, we will error out and stop trying to prune if there's an error trying to find the pid. We can simplify the code to just log the error and continue each time.
2022-08-22config: Generisize functions that create and prune temp directoriesJohn Cai
Pruning directories is a common operation. Currently it's used for pruning Gitaly runtime directories. However, Cgroup directories are made according to the same convention as Gitaly runtime directories in the form of gitaly-<pid>. Instead of reproducing the logic, simply rename the function so it can be reused. To do this, we also need to encapsulate the logic that constructs the name of a process directory and the logic that parses out the pid from such a directory into functions.
2022-08-22Merge branch ↵Pavlo Strokov
'qmnguyen0711/4440-repository-searchfilesbyname-doesn-t-work-well-with-non-ascii-file-names' into 'master' Fix bug that Repository SearchFilesByName doesn't work well with non-ASCII file names See merge request gitlab-org/gitaly!4827
2022-08-22Merge branch '4341-remove-dependency-on-gitlab-shell' into 'master'karthik nayak
gitlab: Copy client code from `gitlab-shell` Closes #4341 See merge request gitlab-org/gitaly!4819
2022-08-22Fix Repository SearchFilesByName not handle non-ASCII file names wellQuang-Minh Nguyen
Repository SearchFilesByName doesn't work well with non-ASCII file names. Underlying, this RPC uses git-ls-tree to get the file names. Git automatically escapes non-ASCII characters and add the quotes around the paths. Git defines this behavior with core.quotePath option. SearchFilesByName did not handle this case well. The solution is to force git-ls-tree to use NULL-byte termination. Issue: https://gitlab.com/gitlab-org/gitaly/-/issues/4440 Changelog: fixed
2022-08-21client: Fix linter issues4341-remove-dependency-on-gitlab-shellKarthik Nayak
These files were directly copied over from 'gitlab-shell' in 823a6893bb4275f7d21035a34c778317af7d3d16. Let's fix the linter issues pre-existing in these files.
2022-08-21gitlab: Use the newly created 'client' packageKarthik Nayak
Instead of using the external 'client' package from 'gitlab-shell', use the internally created one 'internal/gitlab/client'. This drops the dependency on 'gitlab-shell'. Run 'go mod tidy' to remove the dependency on 'gitlab-shell' from our 'go.{mod, sum}' files.
2022-08-21gitlab: Copy client code from 'gitlab-shell'Karthik Nayak
Currently 'gitlab-shell' contains the code for the gitlab client. We use this in our 'gitaly' code, but this causes a cyclic dependency since 'gitlab-shell' also imports parts of our code. To remove this cyclic dependency, we decided to move most of the code in-house. In this commit we do this by copying over the following files: 1. gitlabnet.go 2. httpclient.go from 'gitlab-shell' without modification to a new 'client' package under 'internal/gitlab'. We do not copy over the tests, since our repo has its own helpers for tests which we'll leverage to rewrite the tests.
2022-08-20Merge branch 'renovate/github.com-pelletier-go-toml-2.x' into 'master'Will Chandler
go: Update module github.com/pelletier/go-toml to v2 See merge request gitlab-org/gitaly!4652
2022-08-20go: Update module github.com/pelletier/go-toml to v2Toon Claes
With this change we upgrade go-toml to v2. This includes changing the import paths to include v2.
2022-08-20Extract Duration into its own packageJames Fargher
go-toml v2 forces us to use `TextMarshaller` and this means we now need the Duration wrapper in several packages. To prevent import loops, this requires moving the type to its own package.
2022-08-19CONTRIBUTING.md: Replace indivudual names by @gl-gitalytoon-codeownersToon Claes
It's annoying to keep the list of maintainers up-to-date, so just refer to the group of maintainers.