Commit 8e70f0e3ddf2d2e302ff050a1a0f34c012a89729
1 parent
b6294738
Exists in
master
and in
9 other branches
Specify numeric user and group identifiers
Showing
6 changed files
with
43 additions
and
3 deletions
Show diff stats
CHANGELOG
README.md
... | ... | @@ -412,6 +412,20 @@ sudo gitlab-rake gitlab:setup |
412 | 412 | |
413 | 413 | This is a destructive command; do not run it on an existing database! |
414 | 414 | |
415 | +## Specify numeric user and group identifiers | |
416 | + | |
417 | +Omnibus-gitlab creates users for GitLab, PostgreSQL and Redis. You can specify | |
418 | +the numeric identifiers for these users in `/etc/gitlab/gitlab.rb` as follows. | |
419 | + | |
420 | +```ruby | |
421 | +user['uid'] = 1234 | |
422 | +user['gid'] = 1234 | |
423 | +postgresql['uid'] = 1235 | |
424 | +postgresql['gid'] = 1235 | |
425 | +redis['uid'] = 1236 | |
426 | +redis['gid'] = 1236 | |
427 | +``` | |
428 | + | |
415 | 429 | ## Building your own package |
416 | 430 | |
417 | 431 | See [the separate build documentation](doc/build.md). | ... | ... |
files/gitlab-cookbooks/gitlab/attributes/default.rb
... | ... | @@ -28,6 +28,8 @@ default['gitlab']['bootstrap']['enable'] = true |
28 | 28 | # The username for the chef services user |
29 | 29 | default['gitlab']['user']['username'] = "git" |
30 | 30 | default['gitlab']['user']['group'] = "git" |
31 | +default['gitlab']['user']['uid'] = nil | |
32 | +default['gitlab']['user']['gid'] = nil | |
31 | 33 | # The shell for the chef services user |
32 | 34 | default['gitlab']['user']['shell'] = "/bin/sh" |
33 | 35 | # The home directory for the chef services user |
... | ... | @@ -151,6 +153,8 @@ default['gitlab']['postgresql']['log_directory'] = "/var/log/gitlab/postgresql" |
151 | 153 | default['gitlab']['postgresql']['svlogd_size'] = 1000000 |
152 | 154 | default['gitlab']['postgresql']['svlogd_num'] = 10 |
153 | 155 | default['gitlab']['postgresql']['username'] = "gitlab-psql" |
156 | +default['gitlab']['postgresql']['uid'] = nil | |
157 | +default['gitlab']['postgresql']['gid'] = nil | |
154 | 158 | default['gitlab']['postgresql']['shell'] = "/bin/sh" |
155 | 159 | default['gitlab']['postgresql']['home'] = "/var/opt/gitlab/postgresql" |
156 | 160 | default['gitlab']['postgresql']['user_path'] = "/opt/gitlab/embedded/bin:/opt/gitlab/bin:$PATH" |
... | ... | @@ -191,6 +195,8 @@ default['gitlab']['redis']['log_directory'] = "/var/log/gitlab/redis" |
191 | 195 | default['gitlab']['redis']['svlogd_size'] = 1000000 |
192 | 196 | default['gitlab']['redis']['svlogd_num'] = 10 |
193 | 197 | default['gitlab']['redis']['username'] = "gitlab-redis" |
198 | +default['gitlab']['redis']['uid'] = nil | |
199 | +default['gitlab']['redis']['gid'] = nil | |
194 | 200 | default['gitlab']['redis']['shell'] = "/bin/nologin" |
195 | 201 | default['gitlab']['redis']['home'] = "/var/opt/gitlab/redis" |
196 | 202 | default['gitlab']['redis']['port'] = 6379 | ... | ... |
files/gitlab-cookbooks/gitlab/recipes/postgresql.rb
... | ... | @@ -20,8 +20,15 @@ postgresql_dir = node['gitlab']['postgresql']['dir'] |
20 | 20 | postgresql_data_dir = node['gitlab']['postgresql']['data_dir'] |
21 | 21 | postgresql_data_dir_symlink = File.join(postgresql_dir, "data") |
22 | 22 | postgresql_log_dir = node['gitlab']['postgresql']['log_directory'] |
23 | +postgresql_user = node['gitlab']['postgresql']['username'] | |
23 | 24 | |
24 | -user node['gitlab']['postgresql']['username'] do | |
25 | +group postgresql_user do | |
26 | + gid node['gitlab']['postgresql']['gid'] | |
27 | +end | |
28 | + | |
29 | +user postgresql_user do | |
30 | + uid node['gitlab']['postgresql']['uid'] | |
31 | + gid postgresql_user | |
25 | 32 | system true |
26 | 33 | shell node['gitlab']['postgresql']['shell'] |
27 | 34 | home node['gitlab']['postgresql']['home'] | ... | ... |
files/gitlab-cookbooks/gitlab/recipes/redis.rb
... | ... | @@ -18,8 +18,15 @@ |
18 | 18 | |
19 | 19 | redis_dir = node['gitlab']['redis']['dir'] |
20 | 20 | redis_log_dir = node['gitlab']['redis']['log_directory'] |
21 | +redis_user = node['gitlab']['redis']['username'] | |
21 | 22 | |
22 | -user node['gitlab']['redis']['username'] do | |
23 | +group redis_user do | |
24 | + gid node['gitlab']['redis']['gid'] | |
25 | +end | |
26 | + | |
27 | +user do | |
28 | + uid node['gitlab']['redis']['uid'] | |
29 | + gid redis_user | |
23 | 30 | system true |
24 | 31 | shell node['gitlab']['redis']['shell'] |
25 | 32 | home node['gitlab']['redis']['home'] | ... | ... |
files/gitlab-cookbooks/gitlab/recipes/users.rb
... | ... | @@ -21,12 +21,15 @@ gitlab_group = node['gitlab']['user']['group'] |
21 | 21 | gitlab_home = node['gitlab']['user']['home'] |
22 | 22 | |
23 | 23 | # Create the group for the GitLab user |
24 | -group gitlab_group | |
24 | +group gitlab_group do | |
25 | + gid node['gitlab']['user']['gid'] | |
26 | +end | |
25 | 27 | |
26 | 28 | # Create the GitLab user |
27 | 29 | user gitlab_username do |
28 | 30 | shell node['gitlab']['user']['shell'] |
29 | 31 | home gitlab_home |
32 | + uid node['gitlab']['user']['uid'] | |
30 | 33 | gid gitlab_group |
31 | 34 | end |
32 | 35 | ... | ... |