1 %define gitlab_user git
2 %define gitlab_group git
5 Summary: Just some shared directories and users
11 BuildRequires: rpmbuild(macros) >= 1.202
12 Provides: group(%{gitlab_group})
13 Provides: user(%{gitlab_user})
14 Requires(postun): /usr/sbin/groupdel
15 Requires(postun): /usr/sbin/userdel
16 Requires(pre): /bin/id
17 Requires(pre): /usr/bin/getgid
18 Requires(pre): /usr/sbin/groupadd
19 Requires(pre): /usr/sbin/useradd
21 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23 # directory for git user
24 %define git_dir /var/lib/gitlab
27 Shared directories and users for gitlab shell and webapp.
32 rm -rf $RPM_BUILD_ROOT
33 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/gitlab,%{git_dir}/{.ssh,repositories}}
34 touch $RPM_BUILD_ROOT%{git_dir}/.ssh/authorized_keys
37 rm -rf $RPM_BUILD_ROOT
40 %groupadd -g %{gitlab_gid} -r %{gitlab_group}
41 %useradd -u %{gitlab_uid} -g %{gitlab_group} -s /bin/sh -r -c "GitLab" -d %{git_dir} %{gitlab_user}
44 if [ "$1" = "0" ]; then
45 %userremove %{gitlab_user}
46 %groupremove %{gitlab_group}
50 %defattr(644,root,root,755)
51 %dir %{_sysconfdir}/gitlab
52 %dir %attr(750,%{gitlab_user},%{gitlab_group}) %{git_dir}
53 %dir %attr(700,%{gitlab_user},%{gitlab_group}) %{git_dir}/.ssh
54 %config(noreplace) %verify(not md5 mtime size) %attr(600,%{gitlab_user},%{gitlab_group}) %{git_dir}/.ssh/authorized_keys
55 %dir %attr(2770,%{gitlab_user},%{gitlab_group}) %{git_dir}/repositories