Summary: A Web interface to create projects and repositories, manage access and do code reviews
Name: gitlab-ce
-Version: 8.11.3
-Release: 0.66
+Version: 8.12.0
+Release: 0.74
License: MIT
Group: Applications/WWW
# md5 deliberately omitted until this package is useful
Requires: apache-base
Requires: git-core >= 2.7.4
Requires: gitlab-shell >= 3.4.0
+Requires: gitlab-workhorse >= 0.7.11
Requires: nodejs
Requires: rc-scripts
Requires: ruby-bundler
%define uname git
%define gname git
-%define homedir %{_prefix}/lib/gitlab
+%define appdir %{_prefix}/lib/gitlab
%define vardir %{_localstatedir}/lib/gitlab
+%define cachedir %{_localstatedir}/cache/gitlab
%description
GitLab Community Edition (CE) is open source software to collaborate
# install newer rugged to fix diff view showing garbage
# https://gitlab.com/gitlab-org/gitlab-ce/issues/14972
-v=0.25.0b6
+v=0.25.0b7
test -d vendor/bundle/ruby/gems/rugged-$v || \
bundle exec gem install -v $v rugged --no-rdoc --no-ri --verbose
# use modified config so it doesn't croak
cp -p config/gitlab.yml{,.production}
sed -i -e '/secret_file:/d' config/gitlab.yml
-sed -i -e 's#/home/git/repositories/#./#' config/gitlab.yml
+sed -i -e 's#/var/lib/gitlab/repositories/#./#' config/gitlab.yml
bundle exec rake RAILS_ENV=production assets:clean assets:precompile USE_DB=false
mv -f config/gitlab.yml{.production,}
%install
rm -rf $RPM_BUILD_ROOT
install -d \
- $RPM_BUILD_ROOT%{homedir}/public/{assets,uploads} \
- $RPM_BUILD_ROOT%{homedir}/satellites \
- $RPM_BUILD_ROOT%{homedir}/tmp/{cache/assets,sessions,backups} \
+ $RPM_BUILD_ROOT%{appdir}/public/{assets,uploads} \
+ $RPM_BUILD_ROOT%{appdir}/satellites \
+ $RPM_BUILD_ROOT%{appdir}/tmp/{cache/assets,sessions,backups} \
$RPM_BUILD_ROOT%{_sysconfdir}/gitlab \
$RPM_BUILD_ROOT%{_docdir}/gitlab \
$RPM_BUILD_ROOT%{vardir}/public \
+ $RPM_BUILD_ROOT%{cachedir}/tmp \
$RPM_BUILD_ROOT%{_localstatedir}/{run,log}/gitlab
# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
rm -f $RPM_BUILD_ROOT/VERSION
fi
-cp -a$l . $RPM_BUILD_ROOT%{homedir}
+cp -a$l . $RPM_BUILD_ROOT%{appdir}
# cleanup unneccessary cruft (gem build files, etc)
-sh -x %{SOURCE12} $RPM_BUILD_ROOT%{homedir}
+sh -x %{SOURCE12} $RPM_BUILD_ROOT%{appdir}
# replace the contents, yet leave it believe it has proper version installed (for gem dependencies)
-v=0.25.0b6
+v=0.25.0b7
ov=0.24.0
-rm -r $RPM_BUILD_ROOT%{homedir}/vendor/bundle/ruby/extensions/%{_arch}-linux/rugged-$ov
-mv $RPM_BUILD_ROOT%{homedir}/vendor/bundle/ruby/extensions/%{_arch}-linux/rugged-{$v,$ov}
-rm -r $RPM_BUILD_ROOT%{homedir}/vendor/bundle/ruby/gems/rugged-$ov
-mv $RPM_BUILD_ROOT%{homedir}/vendor/bundle/ruby/gems/rugged-{$v,$ov}
+rm -r $RPM_BUILD_ROOT%{appdir}/vendor/bundle/ruby/extensions/%{_arch}-linux/rugged-$ov
+mv $RPM_BUILD_ROOT%{appdir}/vendor/bundle/ruby/extensions/%{_arch}-linux/rugged-{$v,$ov}
+rm -r $RPM_BUILD_ROOT%{appdir}/vendor/bundle/ruby/gems/rugged-$ov
+mv $RPM_BUILD_ROOT%{appdir}/vendor/bundle/ruby/gems/rugged-{$v,$ov}
# rpm cruft from repackaging
-rm -f $RPM_BUILD_ROOT%{homedir}/debug*.list
-
-# nuke tests
-chmod -R u+w $RPM_BUILD_ROOT%{homedir}/vendor/bundle/ruby/gems/*/test
-rm -r $RPM_BUILD_ROOT%{homedir}/vendor/bundle/ruby/gems/*/test
+rm -f $RPM_BUILD_ROOT%{appdir}/debug*.list
# Creating links
-rmdir $RPM_BUILD_ROOT%{homedir}/{log,tmp/{pids,sockets}}
-ln -s %{_localstatedir}/run/gitlab $RPM_BUILD_ROOT%{homedir}/tmp/pids
-ln -s %{_localstatedir}/run/gitlab $RPM_BUILD_ROOT%{homedir}/tmp/sockets
-ln -s %{_localstatedir}/log/gitlab $RPM_BUILD_ROOT%{homedir}/log
+rmdir $RPM_BUILD_ROOT%{appdir}/{log,tmp/{pids,sockets}}
+ln -s %{_localstatedir}/run/gitlab $RPM_BUILD_ROOT%{appdir}/tmp/pids
+ln -s %{_localstatedir}/run/gitlab $RPM_BUILD_ROOT%{appdir}/tmp/sockets
+ln -s %{_localstatedir}/log/gitlab $RPM_BUILD_ROOT%{appdir}/log
# move $source to $target leaving symlink in original path
move_symlink() {
# Install config files
for f in gitlab.yml unicorn.rb database.yml secrets.yml; do
- move_symlink %{homedir}/config/$f %{_sysconfdir}/gitlab/$f
+ move_symlink %{appdir}/config/$f %{_sysconfdir}/gitlab/$f
done
+move_symlink %{appdir}/.gitlab_workhorse_secret %{_sysconfdir}/gitlab/.gitlab_workhorse_secret
cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/gitlab/.gitconfig
-ln -s %{_sysconfdir}/gitlab/.gitconfig $RPM_BUILD_ROOT%{homedir}/.gitconfig
+ln -s %{_sysconfdir}/gitlab/.gitconfig $RPM_BUILD_ROOT%{vardir}/.gitconfig
touch $RPM_BUILD_ROOT%{_sysconfdir}/gitlab/skip-auto-migrations
# relocate to /etc as it's updated runtime, see 77cff54
-move_symlink %{homedir}/db/schema.rb %{_sysconfdir}/gitlab/schema.rb
+move_symlink %{appdir}/db/schema.rb %{_sysconfdir}/gitlab/schema.rb
-for a in satellites shared tmp public/{uploads,assets}; do
- move_symlink %{homedir}/$a %{vardir}/$a
+for a in satellites builds shared tmp public/{uploads,assets}; do
+ move_symlink %{appdir}/$a %{vardir}/$a
done
+move_symlink %{vardir}/tmp/cache %{cachedir}/cache
+move_symlink %{vardir}/shared/artifacts/tmp/cache %{cachedir}/artifacts
+
install -d $RPM_BUILD_ROOT{%{_sbindir},%{systemdunitdir},%{systemdtmpfilesdir}} \
$RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,httpd/webapps.d}
%config(noreplace) %verify(not md5 mtime size) %attr(640,%{uname},%{gname}) %{_sysconfdir}/gitlab/schema.rb
%config(noreplace) %verify(not md5 mtime size) %attr(640,%{uname},%{gname}) %{_sysconfdir}/gitlab/secrets.yml
%config(noreplace) %verify(not md5 mtime size) %attr(640,%{uname},%{gname}) %{_sysconfdir}/gitlab/.gitconfig
+%config(noreplace) %verify(not md5 mtime size) %attr(640,%{uname},%{gname}) %{_sysconfdir}/gitlab/.gitlab_workhorse_secret
+
%ghost %{_sysconfdir}/gitlab/skip-auto-migrations
%config(noreplace) %verify(not md5 mtime size) /etc/httpd/webapps.d/gitlab.conf
/etc/logrotate.d/gitlab.logrotate
%{systemdunitdir}/gitlab.target
%{systemdtmpfilesdir}/gitlab.conf
-%dir %{homedir}
-%dir %{homedir}/bin
-%attr(-,root,root) %{homedir}/bin/*
+%dir %{appdir}
+%dir %{appdir}/bin
+%attr(-,root,root) %{appdir}/bin/*
# files
-%{homedir}/*.md
-%{homedir}/.gitconfig
-%{homedir}/.bundle
-%{homedir}/.ruby-version
-%{homedir}/CHANGELOG
-%{homedir}/GITLAB_SHELL_VERSION
-%{homedir}/GITLAB_WORKHORSE_VERSION
-%{homedir}/Gemfile*
-%{homedir}/LICENSE
-%{homedir}/Rakefile
-%{homedir}/VERSION
-%{homedir}/config.ru
+%{appdir}/*.md
+%{appdir}/.bundle
+%{appdir}/.gitlab_workhorse_secret
+%{appdir}/.ruby-version
+%{appdir}/CHANGELOG
+%{appdir}/GITLAB_SHELL_VERSION
+%{appdir}/GITLAB_WORKHORSE_VERSION
+%{appdir}/Gemfile*
+%{appdir}/LICENSE
+%{appdir}/Rakefile
+%{appdir}/VERSION
+%{appdir}/config.ru
# dirs
-%{homedir}/app
-%{homedir}/builds
-%{homedir}/config
-%{homedir}/db
-%{homedir}/fixtures
-%{homedir}/generator_templates
-%{homedir}/lib
-%{homedir}/log
-%{homedir}/public
-%{homedir}/shared
-%{homedir}/tmp
-%{homedir}/satellites
+%{appdir}/app
+%{appdir}/builds
+%{appdir}/config
+%{appdir}/db
+%{appdir}/fixtures
+%{appdir}/generator_templates
+%{appdir}/lib
+%{appdir}/log
+%{appdir}/public
+%{appdir}/shared
+%{appdir}/tmp
+%{appdir}/satellites
%dir %{vardir}
+%{vardir}/.gitconfig
%dir %attr(755,%{uname},%{gname}) %{vardir}/satellites
+%dir %attr(755,%{uname},%{gname}) %{vardir}/builds
%dir %{vardir}/public
%attr(-,%{uname},%{gname}) %{vardir}/public/uploads
%attr(-,%{uname},%{gname}) %{vardir}/public/assets
%dir %attr(755,%{uname},%{gname}) %{vardir}/tmp
%attr(-,%{uname},%{gname}) %{vardir}/tmp/backups
-%attr(-,%{uname},%{gname}) %{vardir}/tmp/cache
+%{vardir}/tmp/cache
%attr(-,%{uname},%{gname}) %{vardir}/tmp/sessions
%attr(-,%{uname},%{gname}) %{vardir}/tmp/sockets
%attr(-,%{uname},%{gname}) %{vardir}/tmp/pids
%dir %attr(750,%{uname},%{gname}) %{vardir}/shared
%dir %attr(750,%{uname},%{gname}) %{vardir}/shared/artifacts
%dir %attr(750,%{uname},%{gname}) %{vardir}/shared/artifacts/tmp
-%dir %attr(750,%{uname},%{gname}) %{vardir}/shared/artifacts/tmp/cache
+%{vardir}/shared/artifacts/tmp/cache
%dir %attr(750,%{uname},%{gname}) %{vardir}/shared/artifacts/tmp/uploads
%dir %attr(750,%{uname},%{gname}) %{vardir}/shared/lfs-objects
%dir %attr(750,%{uname},%{gname}) %{vardir}/shared/registry
+%dir %attr(750,root,%{gname}) %{cachedir}
+%attr(-,%{uname},%{gname}) %{cachedir}/cache
+%dir %attr(750,%{uname},%{gname}) %{cachedir}/artifacts
%dir %attr(771,root,%{gname}) %{_localstatedir}/log/gitlab
%dir %attr(771,root,%{gname}) %{_localstatedir}/run/gitlab
%defattr(-,root,root,-)
-%dir %{homedir}/vendor
-%{homedir}/vendor/*
+%dir %{appdir}/vendor
+%{appdir}/vendor/*
%files doc
%defattr(644,root,root,755)
-%{homedir}/doc
+%{appdir}/doc