Compare commits

..

No commits in common. "rawhide" and "f24" have entirely different histories.

4 changed files with 88 additions and 167 deletions

8
.gitignore vendored
View file

@ -1 +1,7 @@
/dist-git-*.tar.gz
/dist-git-0.10.tar.gz
/dist-git-0.11.tar.gz
/dist-git-1.0.tar.gz
/dist-git-1.1.tar.gz
/dist-git-1.2.tar.gz
/dist-git-1.3.tar.gz
/dist-git-1.4.tar.gz

View file

@ -1,14 +1,15 @@
%global selinux_variants mls targeted
%{!?_selinux_policy_version: %global _selinux_policy_version %(sed -e 's,.*selinux-policy-\\([^/]*\\)/.*,\\1,' /usr/share/selinux/devel/policyhelp 2>/dev/null)}
%global modulename dist_git
%global installdir /var/lib/dist-git
Name: dist-git
Version: 1.20
Release: 2%{?dist}
Version: 1.4
Release: 1%{?dist}
Summary: Package source version control system
# upload.cgi uses GPLv1
License: MIT AND GPL-1.0-only
License: MIT and GPLv1
URL: https://github.com/release-engineering/dist-git
# Source is created by
# git clone https://github.com/release-engineering/dist-git.git
@ -21,36 +22,22 @@ BuildRequires: systemd
Requires: httpd
Requires: perl(Sys::Syslog)
Requires: (dist-git-selinux if selinux-policy-targeted)
Requires: git
Requires: git-daemon
Requires: python-requests
Requires: python-configparser
Requires: mod_ssl
Requires: fedmsg
Requires: crudini
%if 0%{?rhel} && 0%{?rhel} < 10
Requires: moreutils
Requires(pre): shadow-utils
%if 0%{?fedora}
Suggests: python-grokmirror
%endif
Requires: python3-requests
Recommends: python3-grokmirror
Suggests: python3-fedmsg
Suggests: fedora-messaging
BuildRequires: python3-devel
BuildRequires: python3-pytest
BuildRequires: python3-requests
# this should be Requires but see https://bugzilla.redhat.com/show_bug.cgi?id=1833810
Recommends: moreutils
%if 0%{?fedora} && 0%{?fedora} >= 41
# The `cgi` module was removed from the Python 3.13 standard library
BuildRequires: python3-legacy-cgi
Requires: python3-legacy-cgi
%endif
%description
DistGit is a Git repository specifically designed to hold RPM
Dist Git is a remote Git repository specifically designed to hold RPM
package sources.
@ -58,11 +45,17 @@ package sources.
Summary: SELinux support for dist-git
BuildRequires: checkpolicy
BuildRequires: /usr/share/selinux/devel/policyhelp
BuildRequires: policycoreutils
BuildRequires: selinux-policy-devel
BuildRequires: hardlink
Requires: %name = %version-%release
BuildRequires: selinux-policy-devel
%{?selinux_requires}
%if "%{_selinux_policy_version}" != ""
Requires: selinux-policy >= %{selinux_policy_version}
%endif
Requires(post): /usr/sbin/semodule, /sbin/restorecon
Requires(postun): /usr/sbin/semodule, /sbin/restorecon
%description selinux
@ -91,17 +84,12 @@ cd -
%pre
%if 0%{?rhel} && 0%{?rhel} < 10
# ------------------------------------------------------------------------------
# Users and Groups
# ------------------------------------------------------------------------------
getent group packager > /dev/null || \
groupadd -r packager
exit 0
%endif
%check
%pytest -vv .
%install
@ -123,8 +111,6 @@ cp -a configs/httpd/dist-git.conf %{buildroot}%{_sysconfdir}/httpd/conf.d/
cp -a configs/httpd/dist-git/* %{buildroot}%{_sysconfdir}/httpd/conf.d/dist-git/
cp -a configs/systemd/* %{buildroot}%{_unitdir}/
install -m0644 -D configs/sysusers.d/dist-git.conf %{buildroot}%{_sysusersdir}/dist-git.conf
# ------------------------------------------------------------------------------
# /var/lib/ ...... dynamic persistent files
# ------------------------------------------------------------------------------
@ -137,20 +123,6 @@ install -d %{buildroot}%{installdir}/web
cp -a scripts/httpd/upload.cgi %{buildroot}%{installdir}/web/
%if 0%{?rhel} && 0%{?rhel} < 8
sed -i '1 s|#.*|#!/usr/bin/python2|' %{buildroot}%{installdir}/web/upload.cgi
%endif
# ------------------------------------------------------------------------------
# /usr/bin/ ...... links to executable files
# ------------------------------------------------------------------------------
install -d %{buildroot}%{_bindir}
ln -s %{_datadir}/dist-git/setup_git_package %{buildroot}%{_bindir}/setup_git_package
ln -s %{_datadir}/dist-git/mkbranch %{buildroot}%{_bindir}/mkbranch
ln -s %{_datadir}/dist-git/mkbranch_branching %{buildroot}%{_bindir}/mkbranch_branching
ln -s %{_datadir}/dist-git/remove_unused_sources %{buildroot}%{_bindir}/remove_unused_sources
mv %{buildroot}%{_datadir}/dist-git/dist-git-gc %{buildroot}%{_bindir}/dist-git-gc
# ------------------------------------------------------------------------------
# SELinux
# ------------------------------------------------------------------------------
@ -163,7 +135,7 @@ do
done
cd -
hardlink -cv %{buildroot}%{_datadir}/selinux
/usr/sbin/hardlink -cv %{buildroot}%{_datadir}/selinux
%post selinux
for selinuxvariant in %{selinux_variants}
@ -211,8 +183,6 @@ fi
%{_unitdir}/dist-git@.service
%{_unitdir}/dist-git.socket
%{_unitdir}/dist-git-gc.service
%{_unitdir}/dist-git-gc.timer
# ------------------------------------------------------------------------------
# /var/lib/ ...... dynamic persistent files
@ -234,105 +204,15 @@ fi
%dir %{_datadir}/dist-git
%attr (775, -, -) %{_datadir}/dist-git/*
%{_bindir}/dist-git-gc
# TODO: move _datadir executables to _libexecdir, and drop these symlinks
%{_bindir}/mkbranch
%{_bindir}/mkbranch_branching
%{_bindir}/remove_unused_sources
%{_bindir}/setup_git_package
%{_sysusersdir}/dist-git.conf
%files selinux
%defattr(-,root,root,0755)
%doc selinux/*
%{_datadir}/selinux/*/%{modulename}.pp
%changelog
* Wed Jul 15 2026 Fedora Release Engineering <releng@fedoraproject.org> - 1.20-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Tue Jul 07 2026 Miroslav Suchý <msuchy@redhat.com> 1.20-1
- Fix tests for Python 3.15: replace removed CGIHTTPRequestHandler
* Fri Feb 13 2026 Pavel Raiskup <pavel@raiskup.cz> 1.19-1
- Avoid using parameterized and nose
- Add sysusers.d config file to allow rpm to create users/groups automatically
* Fri Sep 27 2024 Pavel Raiskup <praiskup@redhat.com> 1.18-1
- replace test on _selinux_policy_version by macro that does it all
- handle situation when _selinux_policy_version is not defined
- silence pylint
- remove rhel7 specific code
- Move %%_bindir symlinks out from dist-git-selinux
- Depend on python3-legacy-cgi for F41+
- licensing: update the project's COPYING file
- dist-git: move the code into sub-directory
* Wed Jan 04 2023 Miroslav Suchý <msuchy@redhat.com> 1.17-1
- use spdx license
- use pytest instead of nose test
* Mon Oct 5 2020 clime <clime@fedoraproject.com> - 1.16-1
- fixed exceptions for fedora-messaging
- fixed topic for fedora-messaging (to git.lookaside.new)
- spec tweak not to require distgit-selinux in containers
- only Suggests fedmsg
- garbage collection (git gc) script and systemd timer
for its periodic run added
* Fri Jun 12 2020 clime <clime@fedoraproject.com> - 1.15-1
- added support for fedora-messaging
* Thu May 21 2020 clime <clime@fedoraproject.com> - 1.14-1
- disable unit tests temporarily as they do not pass
with network disabled during build
* Thu May 21 2020 clime <clime@fedoraproject.com> - 1.13-1
- fedmsg made an optional (recommnended) dependency
- slight refactoring of upload.cgi script
- tests added and documented
* Tue May 28 2019 Miroslav Suchy <msuchy@redhat.com> - 1.12-1
- remove old changelog entries
- do not specify full path for hardlink [RHBZ#1714637]
- add script for removing unused source tarballs in lookaside cache
* Tue Apr 30 2019 clime <clime@redhat.com> 1.11-1
- remove python3-configparser require
- move scripts to bindir
* Mon Mar 11 2019 clime <clime@redhat.com> 1.10-1
- python3 support
- fix post-receive hook in case post.receive.d is empty
* Fri Nov 23 2018 clime <clime@redhat.com> 1.9-1
- do not create sources file when creating a repo
- set umask 0002 in all available dist-git scripts
- Use REMOTE_USER as fallback for GSS_NAME
- add support for setting mtime for an uploaded file
* Tue Aug 14 2018 clime <clime@redhat.com> 1.8-1
- add disable group check option
- add lookaside_dir option
- deprecate cache_dir
- fix python-grokmirror dep
* Mon Feb 26 2018 clime <clime@redhat.com> 1.7-1
- move 'fedmsgs', 'old_paths', 'nomd5' options to optional upload section
* Mon Feb 19 2018 clime <clime@redhat.com> 1.6-1
- add 'fedmsgs', 'old_paths', and 'default_namespace' config options
- remove domain_read_all_domains_state SELinux rule
- require dist-git-selinux
- give optional map permission to git_system_t on git_user_content_t
- update requires to work for all environments
- make the package completely distribution-agnostic
* Mon Dec 18 2017 clime <clime@redhat.com> 1.5-1
- make selinux policy build on f27+
- add optional map SELinux permission for httpd_t
* Tue Jul 25 2017 clime <clime@redhat.com> 1.4-1
- disable md5 uploading by default
@ -347,3 +227,62 @@ fi
* Wed May 03 2017 clime <clime@redhat.com> 1.1-1
- fix default config value for email
- fix name/email switch
* Mon Apr 10 2017 clime <clime@redhat.com> 1.0-1
- big redo of the package
- gitolite dropped from the package (but can be installed additionally)
- pkgdb integration dropped
- upload.cgi updated from FedoraInfra state
- git repos are stored one level higher in fs hiearchy (default: /var/lib/dist-git/git/)
- dist-git.conf completely new
- updated setup_git_package, mkbranch, mkbranch_branching
- updated SELinux policy
- configurable paths to cache dir and git repos
* Wed Aug 05 2015 Adam Samalik <asamalik@redhat.com> 0.13-1
- optional cgit_pkg_list.sh parameter (asamalik@redhat.com)
- change mv to cp + rm (asamalik@redhat.com)
- update config to not be Fedora specific (asamalik@redhat.com)
- Change: lookaside dir perms + cgit_pkg_list.sh (asamalik@redhat.com)
* Mon Jul 20 2015 Adam Samalik <asamalik@redhat.com> 0.12-1
- config update (asamalik@redhat.com)
- Upload files to new and old paths + remove email (asamalik@redhat.com)
* Tue May 05 2015 Adam Samalik <asamalik@redhat.com> 0.11-1
- SELinux subpackage
* Mon Apr 27 2015 Adam Samalik <asamalik@redhat.com> 0.10-1
- perl require and files update (asamalik@redhat.com)
* Thu Apr 23 2015 Adam Samalik <asamalik@redhat.com> 0.9-1
- update hook update (asamalik@redhat.com)
* Thu Apr 23 2015 Adam Samalik <asamalik@redhat.com> 0.8-1
- review update (asamalik@redhat.com)
* Wed Apr 22 2015 Adam Samalik <asamalik@redhat.com> 0.7-1
- git hooks permissions (asamalik@redhat.com)
- noreplace configs (asamalik@redhat.com)
- fixes after rpmlint (asamalik@redhat.com)
* Wed Apr 22 2015 Adam Samalik <asamalik@redhat.com> 0.6-1
- license + description (asamalik@redhat.com)
- cron files fix (asamalik@redhat.com)
* Wed Apr 15 2015 Adam Samalik <asamalik@redhat.com> 0.5-1
- git hook: update-block-push-origin (asamalik@redhat.com)
- lookaside-upload config comments (asamalik@redhat.com)
- gen-acls user fix (asamalik@redhat.com)
- ssl httpd configs as examples (asamalik@redhat.com)
* Fri Apr 10 2015 Adam Samalik <asamalik@redhat.com> 0.4-1
- spec and config fix
- systemd services
* Tue Mar 31 2015 Adam Samalik <asamalik@redhat.com> 0.3-1
- alpha package (asamalik@redhat.com)
* Mon Mar 30 2015 Adam Samalik <asamalik@redhat.com> 0.2-1
- new package built with tito

View file

@ -1,24 +0,0 @@
upstream_project_url: https://github.com/release-engineering/dist-git
upstream_tag_template: dist-git-{version}-1
issue_repository: https://github.com/release-engineering/dist-git
copy_upstream_release_description: false
jobs:
- job: pull_from_upstream
trigger: release
dist_git_branches:
- rawhide
- epel9
- job: koji_build
trigger: commit
allowed_committers: ['packit']
dist_git_branches:
- fedora-all
- epel9
- job: bodhi_update
trigger: commit
dist_git_branches:
- fedora-all
- epel9

View file

@ -1 +1 @@
SHA512 (dist-git-1.20.tar.gz) = f68aa733a2d0e0faa8973ced5260a1c5b0f6892c5ebfca977ac17ca3bfbda33225d866bb1c16abe761452d17594399a75815a49f5d941dd2e0c5404a69a1f3be
SHA512 (dist-git-1.4.tar.gz) = df32ece5c31fe0cff67783cad7fdba05e0fec038c909f28d1d5e017226621ae66bb512d1d7f8a41b3edbd4bcc1285f7e5eb4aa0abb30c25e2735984c0fa9c15b