2020-12-02 10:09:37 -05:00
|
|
|
# GitLab Workhorse
|
|
|
|
|
|
|
|
GitLab Workhorse is a smart reverse proxy for GitLab. It handles
|
|
|
|
"large" HTTP requests such as file downloads, file uploads, Git
|
|
|
|
push/pull and Git archive downloads.
|
|
|
|
|
|
|
|
Workhorse itself is not a feature, but there are [several features in
|
|
|
|
GitLab](doc/architecture/gitlab_features.md) that would not work efficiently without Workhorse.
|
|
|
|
|
2020-12-08 22:09:24 -05:00
|
|
|
## Canonical source
|
|
|
|
|
|
|
|
The canonical source for Workhorse is currently
|
|
|
|
[gitlab-org/gitlab-workhorse](https://gitlab.com/gitlab-org/gitlab-workhorse).
|
|
|
|
As explained in https://gitlab.com/groups/gitlab-org/-/epics/4826, we
|
|
|
|
are in the process of moving the canonical source to
|
|
|
|
[gitlab-org/gitlab/workhorse](https://gitlab.com/gitlab-org/gitlab/tree/master/workhorse).
|
|
|
|
|
|
|
|
Until that transition is complete, changes (Merge Requests) for
|
|
|
|
Workhorse should be submitted at
|
|
|
|
[gitlab-org/gitlab-workhorse](https://gitlab.com/gitlab-org/gitlab-workhorse).
|
|
|
|
Once merged, they will propagate to gitlab-org/gitlab/workhorse via
|
|
|
|
the usual Workhorse release process.
|
|
|
|
|
2020-12-02 10:09:37 -05:00
|
|
|
## Documentation
|
|
|
|
|
|
|
|
Workhorse documentation is available in the [`doc` folder of this repository](doc/).
|
|
|
|
|
|
|
|
* Architectural overview
|
|
|
|
* [GitLab features that rely on Workhorse](doc/architecture/gitlab_features.md)
|
|
|
|
* [Websocket channel support](doc/architecture/channel.md)
|
|
|
|
* Operating Workhorse
|
|
|
|
* [Source installation](doc/operations/install.md)
|
|
|
|
* [Workhorse configuration](doc/operations/configuration.md)
|
|
|
|
* [Contributing](CONTRIBUTING.md)
|
|
|
|
* [Adding new features](doc/development/new_features.md)
|
|
|
|
* [Testing your code](doc/development/tests.md)
|
|
|
|
|
|
|
|
## License
|
|
|
|
|
|
|
|
This code is distributed under the MIT license, see the [LICENSE](LICENSE) file.
|
|
|
|
|