summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2019-02-28 13:23:14 +0000
committerDouwe Maan <douwe@gitlab.com>2019-02-28 13:23:14 +0000
commit8f8c51561dd28e0c6833eac775564cd65c4ded0d (patch)
treefcb8c4e7aa6da6358cbb5a5f52a192d059c2f29c
parent39262b39e6c819814a1592b09c8ede99d9f79c31 (diff)
parent25692138b6bd4f3b1915e99cfcbbe5a52880b5c2 (diff)
downloadgitlab-shell-8f8c51561dd28e0c6833eac775564cd65c4ded0d.tar.gz
Merge branch 'doc-update-about-hooks' into 'master'
Update readme notes about git hooks See merge request gitlab-org/gitlab-shell!278
-rw-r--r--README.md21
1 files changed, 17 insertions, 4 deletions
diff --git a/README.md b/README.md
index 55f7c61..7cb9619 100644
--- a/README.md
+++ b/README.md
@@ -23,10 +23,23 @@ An overview of the four cases described above:
For historical reasons the gitlab-shell repository also contains the
Git hooks that allow GitLab to validate Git pushes (e.g. "is this user
allowed to push to this protected branch"). These hooks also trigger
-events in GitLab (e.g. to start a CI pipeline after a push). In
-GitLab's current architecture (Q4 2018) these hooks belong to Gitaly
-more than gitlab-shell. We [are moving them to the Gitaly
-repository](https://gitlab.com/gitlab-org/gitaly/issues/1226).
+events in GitLab (e.g. to start a CI pipeline after a push).
+
+We are in the process of moving these hooks to Gitaly, because Git hooks
+require direct disk access to Git repositories, and that is only
+possible on Gitaly servers. It makes no sense to have to install
+gitlab-shell on Gitaly servers.
+
+As of GitLab 11.9 [the actual Git hooks are in the Gitaly
+repository](https://gitlab.com/gitlab-org/gitaly/tree/v1.22.0/ruby/vendor/gitlab-shell/hooks),
+but gitlab-shell must still be installed on Gitaly servers because the
+hooks rely on configuration data (e.g. the GitLab internal API URL) that
+is not yet available in Gitaly itself. Also see the [transition
+plan](https://gitlab.com/gitlab-org/gitaly/issues/1226#note_126519133).
+
+This means that for GitLab 11.9 and up, it is pointless to make changes
+to Git hook code in the gitlab-shell repository, because the code that
+gets run is in the Gitaly repository instead.
## Code status