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
2021-04-14bootstrap: Internalize SocketReusePortWarning variablePatrick Steinhardt
The `SocketReusePortWarning` warning is only used inside of the bootstrap package, but it's still publicly visible. Make it internal to squelch a linting issue.
2021-02-17Gitaly-ruby server should be a provided dependencyPavlo Strokov
Server factory should not manage gitaly-ruby server internally as it completely independent entity and should be provided only as a dependency into other components. The change also restructure creation of the gRPC servers by the factory, so that doesn't rely on the specific services. This gives us un opportunity to re-use setup code in the tests and remove the helpers that are not complete compared to actual production used.
2021-02-10boostrap: Do not log when serving slow requestsPatrick Steinhardt
The "/slow" endpoint whene bootstrapping is currently writing a log message indicating that it's being set up. This log message is useless in normal operations of our tests and only adds to the churn, so let's remove it.
2020-11-19Replace most uses of `ioutil.TempDir()` with `testhelper.TempDir()`Patrick Steinhardt
While many of our tests use `ioutil.TempDir`, this is bad practice as it'll typically create directories directly in `/tmp`. Instead, tests are expected to call `testhelper.TempDir`, which does roughly the same but instead creates temporary directories in the global test directory. This commit converts many users of `ioutil.TempDir()` to `testhelper.TempDir()`. Remaining users either have no `testing.T` around or cannot use `internal/testhelper` due to cyclic dependencies.
2020-09-17listen on localhost in testsSami Hiltunen
Various tests are binding to other IP addresses than localhost. Ideally the tests should not open public sockets during the test run. Additionally, this causes macOS firewall to ask for permission on each test run.
2020-09-13Use filepath package to manipulate file pathsMikhail Mazurskiy
Package path should be used to manipulate abstract slash-delimited paths only, not real file paths.
2020-06-26Praefect: server factory introductionPavlo Strokov
Introduces server factory for creating gRPC servers. Praefect gRPC server created by separate function and can be reused in tests to check routing. Part of: https://gitlab.com/gitlab-org/gitaly/-/issues/1698
2020-06-22Refactoring of 'starter' package and gitaly server factoryPavlo Strokov
Extending package 'starter' with 'Parse', 'Compose' funcs to work with gitaly address format. 'GracefulStoppableServer' is a common interface that is why it has been moved to 'starter' package where it is used. 'GitalyServerFactory' moved into 'server' package as 'bootstrap' is used by praefect as well. Also it now supports multiple servers to be started for listening and track all of them correctly.
2020-06-06How to handle proxying FindRemoteRepositoryPavlo Strokov
It is a first steps towards making FindRemoteRepository RPC to become STORAGE scoped. It is needed to simplify routing in Praefect and omit need for Praefect to handle this RPC as a special case. After change is done the request will be routed into one of the Gitalies and handled there. The Git is not needed to be installed on Prafect node in order to support the implementation of only single RPC. Part of: https://gitlab.com/gitlab-org/gitaly/-/issues/2442
2020-06-03Warn if SO_REUSEPORT cannot be setStan Hu
On some kernels prior to Linux 3.9 (e.g. Oracle Linux v6.5), this kernel feature may not be available. Instead of failing hard, we just display a warning message that no-downtime upgrades will not work properly. After we deprecate CentOS 6 (https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5163), we can revert this.
2020-06-01Dependency inject gitlab apiJohn Cai
2020-05-27Praefect graceful stopPavlo Strokov
In order to reduce usage of global configuration Bootstrap struct changed to accept duration as parameter. That was a cause of adding a new configuration setting to praefect configuration file, because previously it used default value of 1m configured for gitaly.
2020-05-15Allow socket reuse in tableflipJohn Cai
2020-04-15Distinguish TLS connections in connectioncounterJacob Vosmaer
2020-04-09Modify Praefect's server info implementationJohn Cai
Change praefect's server info implementation to only get the server info of the primary node.
2020-01-09Auto-format whitespace between importsJacob Vosmaer
2019-12-04Move bootstrap env vars into bootstrap constructorjramsay
Both Gitaly and Praefect use the bootstrap package and need to play well with gitaly-wrapper. This changes praefect to use the same env vars as gitaly. It also moves the env var retrieval inside the bootstrap constructor.
2019-11-28Restore gitaly_connections_total prometheus metricJacob Vosmaer
2019-11-27Generalize internal gitaly socket dirJohn Cai
Both gitaly-ruby and gitaly hooks will need the gitaly internal socket directory, so we can pull it out into the config package. Also this change starts an internal gitaly socket that listens for connections.
2019-11-27Wire in bootstrap package for praefect for zero downtime deployJohn Cai
2019-09-03main: start ruby server after opening network listenersJacob Vosmaer
2019-06-04Praefect configuration fixesZeger-Jan van de Weg
Today I've tried to determine the state of the praefect project, and had to find out a couple of things which I tried to make easier for the ones that will do the same later.
2019-06-04Wait for all the socket on graceful restartAlessio Caiazza
We terminate gitaly on the first failure from a listening socket, but on a graceful restart we must wait for all the socket to properly terminate active connections. This is a complete refactoring that introduces the bootstrap package with a proper test coverage