Commit c29a184f authored by Sean McGivern's avatar Sean McGivern

Merge branch 'update-custom-hooks-docs' into 'master'

Update custom hooks docs and set 4.1.0

See merge request !8040
parents 45bd2263 20a6183b
...@@ -44,22 +44,30 @@ as appropriate. ...@@ -44,22 +44,30 @@ as appropriate.
## Chained hooks support ## Chained hooks support
> [Introduced][93] in GitLab Shell 4.1.0. > [Introduced][93] in GitLab Shell 4.1.0 and GitLab 8.15.
The hooks could be also placed in `hooks/<hook_name>.d` (global) or `custom_hooks/<hook_name>.d` (per project) Hooks can be also placed in `hooks/<hook_name>.d` (global) or
directories supporting chained execution of the hooks. `custom_hooks/<hook_name>.d` (per project) directories supporting chained
execution of the hooks.
To look in a different directory for the global custom hooks (those in
`hooks/<hook_name.d>`), set `custom_hooks_dir` in gitlab-shell config. For
Omnibus installations, this can be set in `gitlab.rb`; and in source
installations, this can be set in `gitlab-shell/config.yml`.
The hooks are searched and executed in this order: The hooks are searched and executed in this order:
1. `<project>.git/hooks/` - symlink to `gitlab-shell/hooks` global dir 1. `<project>.git/hooks/` - symlink to `gitlab-shell/hooks` global dir
1. `<project>.git/hooks/<hook_name>` - executed by `git` itself, this is `gitlab-shell/hooks/<hook_name>` 1. `<project>.git/hooks/<hook_name>` - executed by `git` itself, this is `gitlab-shell/hooks/<hook_name>`
1. `<project>.git/custom_hooks/<hook_name>` - per project hook (this is already existing behavior) 1. `<project>.git/custom_hooks/<hook_name>` - per project hook (this is already existing behavior)
1. `<project>.git/custom_hooks/<hook_name>.d/*` - per project hooks 1. `<project>.git/custom_hooks/<hook_name>.d/*` - per project hooks
1. `<project>.git/hooks/<hook_name>.d/*` - global hooks: all executable files (minus editor backup files) 1. `<project>.git/hooks/<hook_name>.d/*` OR `<custom_hooks_dir>/<hook_name.d>/*` - global hooks: all executable files (minus editor backup files)
Files in `.d` directories need to be executable and not match the backup file pattern (`*~`). Files in `.d` directories need to be executable and not match the backup file
pattern (`*~`).
The hooks of the same type are executed in order and execution stops on the first The hooks of the same type are executed in order and execution stops on the
script exiting with non-zero value. first script exiting with a non-zero value.
## Custom error messages ## Custom error messages
......
...@@ -72,7 +72,7 @@ sudo -u git -H git checkout 8-15-stable-ee ...@@ -72,7 +72,7 @@ sudo -u git -H git checkout 8-15-stable-ee
```bash ```bash
cd /home/git/gitlab-shell cd /home/git/gitlab-shell
sudo -u git -H git fetch --all --tags sudo -u git -H git fetch --all --tags
sudo -u git -H git checkout v4.0.3 sudo -u git -H git checkout v4.1.0
``` ```
### 6. Update gitlab-workhorse ### 6. Update gitlab-workhorse
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment